Wikifunctions wikifunctionswiki https://www.wikifunctions.org/wiki/Wikifunctions:Main_Page MediaWiki 1.46.0-wmf.21 first-letter Media Special Talk User User talk Wikifunctions Wikifunctions talk File File talk MediaWiki MediaWiki talk Template Template talk Help Help talk Category Category talk TimedText TimedText talk Module Module talk Translations Translations talk Event Event talk Z1563 0 789 261408 150633 2026-03-28T07:10:07Z Malaalaa 10702 short description and aliase added 261408 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z1563" }, "Z2K2": { "Z1K1": "Z60", "Z60K1": "wal" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Wolaytta" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Wolaytta" }, { "Z1K1": "Z11", "Z11K1": "Z1157", "Z11K2": "Wolayta" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "wolaita" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "Wolayttattuwa" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Omotic language in Ethiopia " } ] } } 2s00x03jv46dz746pfymcqgtzipj3us Wikifunctions:Project chat 4 1184 261224 260894 2026-03-27T14:27:59Z YoshiRulz 10156 /* Language tags */ new section 261224 wikitext text/x-wiki {{shortcut|[[WF:CHAT]]}} __NEWSECTIONLINK__ [[Category:Help]] <!-- please do not remove this line --> Welcome to the Project chat, a place to discuss any and all aspects of Wikifunctions: the project itself, policy and proposals, individual data items, technical issues, etc. Other places to find help: * [[Wikifunctions:Administrators' noticeboard]] * [[Wikifunctions:Report a technical problem]] * [[Wikifunctions:FAQ]] {{Autoarchive resolved section |age = 1 |archive = ((FULLPAGENAME))/Archive/((year))/((month:##)) |timeout=30 }} {{Archives|{{#tag:div|<br />{{Flatlist|{{Special:PrefixIndex/WF:Project chat/Archive/|stripprefix=1|hideredirects=1}} |class=mw-collapsible-content|style=font-size:92%;}}|class="mw-collapsible mw-collapsible-toggle mw-collapsed"}} |prefix=WF:Project chat/Archive/ }} == Projektin nimi suomeksi == Hei kaikki! Tämä on mielenkiintoinen projekti. Loin tänne funktion {{Z|Z31661}}, näyttäisi toimivan hyvin. Ehdotan, että [[Wikidata:Q104587954|Wikifunctions]] olisi suomeksi ”Wikifunktiot” (wikifunktiot.org). Tällä hetkellä projektin nimi on jätetty kääntämättä keskellä suomenkielisiä sanoja useissa paikoissa etusivulla ja muualla. Jatkossa voisi toivon mukaan tehdä sanasta muuttujan, jotta sanan voi vaihtaa yhdessä paikassa ja se vaihtuu automaattisesti kaikkialla. Suomen kielen taivutus tekee siitä tosin hieman monimutkaista. –[[User:Onioniton|Onioniton]] ([[User talk:Onioniton|talk]]) 13:10, 15 February 2026 (UTC) Edit [[User:Onioniton|Onioniton]] ([[User talk:Onioniton|talk]]) 19:15, 18 February 2026 (UTC) :''{{#function:Z31676|Q104587954|Z1051}}'' should be the project’s label in {{Z|Z1051}} from {{Q|Q2013}} or a fallback label if (as appears to be the case) there is no label in that language. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 15:12, 15 February 2026 (UTC) ::Tein lekseemin [[Wikidata:Lexeme:L1555911|L1555911]] jolla on tarvittavat muodot, sen pitäisi olla linkitetty {{Q|Q104587954}}iin. Toivottavasti tein sen oikein, otin mallia [[Wikidata:Lexeme:L1553994|L1553994:stä]]. En ole aiemmin muokannut Wikidataa. &ndash;[[User:Onioniton|Onioniton]] ([[User talk:Onioniton|talk]]) 15:55, 17 February 2026 (UTC) :::You might like to refine [https://www.wikifunctions.org/wiki/Z24450?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z24450%22%2C%22Z24450K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z6825%22%2C%22Z6825K1%22%3A%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L1555911%22%7D%7D%2C%22Z24450K2%22%3A%5B%22Z6091%22%2C%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q18514%22%7D%2C%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q146786%22%7D%2C%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q131105%22%7D%2C%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q146233%22%7D%2C%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q857325%22%7D%2C%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q282031%22%7D%2C%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q394253%22%7D%2C%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q474668%22%7D%5D%2C%22Z24450K3%22%3A%5B%22Z60%22%5D%7D this function call]. I promoted the plural forms, since you specified the nominative plural as the lemma. I look forward to seeing a proper Finnish noun declension function soon. See [https://www.wikifunctions.org/wiki/Z26333?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z26333%22%2C%22Z26333K1%22%3A%22mensa%22%2C%22Z26333K2%22%3A%22Z1051%22%7D this Latin example] or take a look at {{Z|Z28602}}. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 23:16, 18 February 2026 (UTC) ::::Unfortunately this looks to be undoable for me because of consonant gradation (genitive of kaappi → kaapin, notice the dropped p). I'm unsure about the lemma, I think it's a normal [[Wikipedia:Plurale tantum|plurale tantum]], just a proper noun. I'm not a professional linguist. &ndash;[[User:Onioniton|Onioniton]] ([[User talk:Onioniton|talk]]) 16:03, 19 February 2026 (UTC) :Hei [[User:Onioniton|Onioniton]]! Yleensä kai monikielisten Wikimedia-hankkeiden nimet ollaan jätetty kääntämättä suomen kielelle (vrt. [[:c:|Wikimedia Commons]], [[species:|Wikispecies]]). Wikimedia-hankkeille, joista on monia eri kieliversiota (suomenkielinen Wikisanakirja, Wikimatkat, Wikisitaatit, Wikikirjasto jne.) on keksitty suomenkielinen nimi. Pitäisin mieluummin tästä linjasta kiinni, mutta jos Wikifunktiot-suomennokselle on laajempaa tukea, niin sekin sopii minulle. Tietyt tämän hankkeen käyttöliittymän tekstit käännetään [https://translatewiki.net/wiki/Special:SearchTranslations?query=wikifunctions&language=fi translatewiki.netissä] (vaatii erillisen rekisteröitymisen), joten muutokset täytyy tehdä sinnekin, jos suomenkieliseen nimeen halutaan vaihtaa. :''[Discussing whether or not we should localize the project name in Finnish]'' [[User:Samoasambia|Samoasambia]] ([[User talk:Samoasambia|talk]]) 21:52, 2 March 2026 (UTC) ::Hei ja kiitos vastauksesta. En tiennyt tästä, ymmärrän logiikan. Varmaan parasta tosiaan pitäytyä nykyisessä tavassa. –[[User:Onioniton|Onioniton]] ([[User talk:Onioniton|talk]]) 14:36, 4 March 2026 (UTC) == How does Wikifunctions get lexemes from Wikidata entries? == How does Wikifunctions get the lexemes from Wikidata entries? I don't see them in e.g. [[wikidata:Q515|Wikidata entry for 'city']], but something like [[Z28254]], entering city and German gives an answer. Where does Wikifunctions get it from? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 13:47, 27 February 2026 (UTC) :Ultimately, it’s always {{Z|Z6830}}, which looks for Lexemes that link to a given Wikidata item, rather than the other way round (see [[:phab:T383631]]). [[Special:Search/: z14k2 z6830|These implementations]] call [[Z6830]]. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 14:59, 27 February 2026 (UTC) == How to get right lexeme? == I made a lexeme for নগর as trying out some of the functions gave out কোট as Bangla of city when the word is closer to fort. However, trying out the functions again, it still shows কোট as city. I made sure to connect the word to the Wikidata item for city. How do I fix this? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 02:06, 28 February 2026 (UTC) :Function calls' results are cached and anything fetched from Wikidata is also cached. I don't think there's a way to clear that cache, you'll just have to wait for it to expire. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 19:13, 28 February 2026 (UTC) :We don’t have a proper solution for the case where more than one lexeme links to the same item. One approach is to use {{Z|Z27332}}, but that can still lead to a tie. I recall some discussion about using some measure of affinity between an item label (here, নগর) and each of the identified lexemes, and we might now extend that to consider the text for sitelinks (নগর, for Wikipedia). [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 15:27, 1 March 2026 (UTC) ==Wikidata sitelink project key could be a lightweight enum?== On {{Z|Z6039}}, one of the keys (Z6039K3) has a fixed limited set of values. I wonder if these should be enumerated in a lightweight enum? Is there a reason magic strings have been chosen? --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 00:03, 6 March 2026 (UTC) :For the record, I answered this question on telegram as follows: :''It was desired to get this out quickly, and the thinking was (1) it might be sufficient to document the small set of allowed string values in the Z6039 type description (and mention that in Z6839), and (2) it's a fairly specialized function where the function callers are likely to be experienced and thus might not care about getting explicit guidance when specifying a value, (3) there is not likely to be another use for a new enum type for the Wikidata project types'' [maybe questionable]'', and (4) maybe we should defer this until T405810 has been done.''  :Also, these strings aren't completely "magic": they are used consistently in URLs across languages, and they come back consistently from Wikidata as substrings of the ''site'' property of sitelinks. :However, i agree it would be preferable to have an enum type, and T420122 has been created for this. (Sorry for responding so slowly.) [[User:DMartin (WMF)|DMartin (WMF)]] ([[User talk:DMartin (WMF)|talk]]) 19:57, 23 March 2026 (UTC) == Add Belgian French == Belgian French (fr-be) was recently added to MediaWiki. [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 07:02, 6 March 2026 (UTC) == Wikifunctions & Abstract Wikipedia Newsletter #238 is out: Citations and Copy and Paste == There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-03-06|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it! In this issue, we introduce the possibility of creating a function that deals with references and a Wikifunctions internal clipboard, where you can temporarily store any piece of code in order to paste it somewhere else, and we take a look at the latest software developments. Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]! Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 17:28, 6 March 2026 (UTC) <!-- Message sent by User:Sannita (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=30119120 --> :Is there a function in Wikifunctions to get all sources to a statement in a Wikidata item. At the moment my main activity in the Wikimedia projects is adding sources to Wikidata statements. For this case I got the following kind of [https://w.wiki/JFec query] to get all qualifiers and sources for a specific statment in explicit mentioned items in the query. There are already templates for citing sources in different Wikipedia language versions. For example the template [https://en.wikipedia.org/wiki/Template:Cite_web Cite web] is used in 298 Wikipedia language versions. So it is a widely used template and I wish a implementation for it in Wikifunctions. [[User:Hogü-456|Hogü-456]] ([[User talk:Hogü-456|talk]]) 21:31, 8 March 2026 (UTC) ::{{Z|31984}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 15:08, 9 March 2026 (UTC) {{tracked|T404652}} ::Yes and no. Importing of Wikidata references is currently turned off. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 15:27, 9 March 2026 (UTC) <br clear="all"/>{{phab|T419350}} :I found [[phab:T419350|a bug]] where the clipboard feature becomes unusable.<!-- --><br>Also, it's a bit disappointing that it doesn't use the real clipboard, not even as an option for egress. If you're invoking a function and you can get it to "compile", then "Copy result link" already lets you copy out the full canonical form... [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 02:58, 10 March 2026 (UTC) ::@[[User:YoshiRulz|YoshiRulz]] Thanks for reporting, I noticed the team about it. I will see if we can fix it soon. [[User:Sannita (WMF)|Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 10:26, 11 March 2026 (UTC) == Source code of built-in functions == {{phab|T419501}} I looked at [[Z950]], what is a integrated implementation. There is the following [https://gitlab.wikimedia.org/repos/abstract-wiki/wikifunctions/function-orchestrator/-/blob/main/src/builtins.js?ref_type=heads file] in Wikifunctions repo in Gitlab what contains built-in functions. Is it possible to update the Text displayed at integrated implementations with a link to a Wikifunctions page about integrated implementations. From there it is then possible to link to the source code. As I think it the specific location of the relevant source code can change. [[User:Hogü-456|Hogü-456]] ([[User talk:Hogü-456|talk]]) 21:56, 8 March 2026 (UTC) : I would also like to see that, so I've opened a feature request for it. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:47, 10 March 2026 (UTC) :Yes, I think it’s [https://gitlab.wikimedia.org/repos/abstract-wiki/wikifunctions/function-orchestrator/-/blob/main/src/transpilation/builtins.js now here]. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 13:14, 18 March 2026 (UTC) == Composition editor not working == [[File:Composition editor not working properly.png|alt=this is why i use python in wikifunctions|thumb]] When using the composition editor, some functions just don't show up. In the image, I try to add [[Z19241]] to my function and it doesn't work. I also tried using the ZID but it still doesn't work. What is wrong with this editor?? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 09:09, 12 March 2026 (UTC) :The selector only lists functions that have a return type that is compatible with the context. It’s hard to tell what the context is from the image, because it’s obscured by the dropdown. I was able to find and select {{Z|Z19241}} in a context that expected a [[Z6]] or [[Z1]]. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 09:50, 12 March 2026 (UTC) :I think the screenshot is enough to tell what your mistake was: You're trying to set the ''type'' of the argument to be the result of a function call. Normally it's only [[Z881]] that you would need to do that for. Open the triple-dot menu at one level higher. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 22:27, 12 March 2026 (UTC) == Wikifunctions & Abstract Wikipedia Newsletter #239 is out: A new composition language == There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-03-11|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it! In this issue, we talk about the revamp of the composition language on Wikifunctions, with its potential for further improvements. Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]! Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 16:19, 12 March 2026 (UTC) <!-- Message sent by User:Sannita (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=30229736 --> :I wish it will be possible to write compositions in a way like spreadsheets functions. When I read the title of the Newsletter I expected it to be about that topic and then I learned it is as far as I understand about how the functions are interpreted in the background. How to work with different types of input and output is different. In Spreadsheet I sometimes experience such problems and there are other cases where an automatic type conversion happens. How to find the right type is one of the difficulties in Wikifunctions when creating functions at the moment. [[User:Hogü-456|Hogü-456]] ([[User talk:Hogü-456|talk]]) 22:22, 13 March 2026 (UTC) == Inappropriate test case == The test case {{Z|31210}} seems to not be appropriate for Wiki functions and unnecessarily political. Can it be changed? [[User:AbsoluteHypotenuse|AbsoluteHypotenuse]] ([[User talk:AbsoluteHypotenuse|talk]]) 00:03, 14 March 2026 (UTC) :Deleted as unnecessarily political and derogatory. CC @[[User:Feeglgeef|Feeglgeef]]. Again, feel free to create another appropriate test case. <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:&lt;[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]&gt;</span> 03:32, 14 March 2026 (UTC) == Wikifunctions & Abstract Wikipedia Newsletter #240 is out: Abstract Wikipedia is now in Beta == There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-03-19|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it! In this issue, we celebrate the launch of the [https://abstract.wikipedia.org/ preliminary Beta version of Abstract Wikipedia], and we take a look at the latest software developments. Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]! Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 18:23, 19 March 2026 (UTC) <!-- Message sent by User:Sannita (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=30229736 --> == How to debug type mismatch == Hi, I tried creating the following implementation: [[Z32382]]. Test failure reports there is a type mismatch (expected: "Z6005"; actual: "Z6004"), but after carefully checking each of the functions' definitions that I use in this composition, I still can't see where this mismatch might occur. Can you please help me on this one? [[User:Poslovitch|Poslovitch]] ([[User talk:Poslovitch|talk]]) 14:37, 22 March 2026 (UTC) :{{done}}, I think. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 16:53, 22 March 2026 (UTC) ::Looks like it is working indeed, thank you @[[User:GrounderUK|GrounderUK]]! I see you replaced the use of function [[Z30591]] by [[Z22483]]. Do you reckon I should avoid using the "reference" types and stick to the non-"reference" types? [[User:Poslovitch|Poslovitch]] ([[User talk:Poslovitch|talk]]) 16:59, 22 March 2026 (UTC) :::You have to use the right one for the given context. In general, if you don’t need to look inside the object, it’s better to use references. In this case, though, you’re looking at the features of the form, so you do need to look inside the lexeme annd its reference is directly accessible. Note, for example, that you do not look inside the singular or plural items; you just branch according to their references. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 17:45, 22 March 2026 (UTC) ::::Alright, I get it now, thanks :) [[User:Poslovitch|Poslovitch]] ([[User talk:Poslovitch|talk]]) 19:27, 22 March 2026 (UTC) == How to represent verbs == I made a function, {{Z|Z32425}} which uses a verb, but I noticed that there isn't a Wikidata QID for 'contains'. How should verbs be represented in Wikifunctions/Abstract Wikipedia? Should verb lexemes be connected to Wikidata properties, like 'contain' being connected to {{P|P527}}, should they be connected to the noun form, like 'contain' being connected to {{L|L5539}} & {{Q|Q987767}}, or should they be connected some other way? — [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 11:30, 23 March 2026 (UTC) : You could ask at [[d:WT:lexicographical data]]; but based on my experience adding [[WF:human languages/Z1882|Láadan]] lexemes, which can change part of speech depending on affixes: there is a property '[[d:property:P9970|predicate for]]' placed in the sense field which links a verb to its semantic item (I think {{q|6014822}} would be the target in your example). — [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 16:17, 23 March 2026 (UTC) == Broken function == Can someone please revert the most recent revision (by [[User:GrounderUK]]) on [[Z29362]]? It appears that it always returns void, breaking a lot of abstract wiki in the process. [[User:MetalBreaksAndBends|MetalBreaksAndBends]] ([[User talk:MetalBreaksAndBends|talk]]) 18:13, 25 March 2026 (UTC) :This implementation is broken, but it's disconnected, no? Shouldn't be breaking abstractwiki. [[User:Infernostars|infernostars]] <small>([[User talk:Infernostars|talk]]) ([[Special:Contributions/Infernostars|contribs]])</small> 21:29, 25 March 2026 (UTC) ::Looks like someone disconnected it after I wrote that comment, but before you wrote yours. [[User:MetalBreaksAndBends|MetalBreaksAndBends]] ([[User talk:MetalBreaksAndBends|talk]]) 22:24, 25 March 2026 (UTC) :It seems to have been reconnected, but the issue looks like it has started working again, per all passed tests. <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:&lt;[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]&gt;</span> 08:04, 26 March 2026 (UTC) :This was the result of a [[:phab: T421322|breaking change in the software]]. I didn’t amend the implementation until after it had been disconnected, and all tests passed after the change. I think the issue is now resolved, but I’ll link this comment to the Phabricator ticket for “lessons learned”. Sorry I didn’t pick this up earlier, but this particular software change was unexpected. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 08:46, 26 March 2026 (UTC) == Wikifunctions & Abstract Wikipedia Newsletter #241 is out: First few days of Abstract Wikipedia Beta; Status of Composition Language v2 == There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-03-26|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it! In this issue, we discuss the first early edits on [https://abstract.wikipedia.org/ Abstract Wikipedia], we share the status of Composition Language v2, and we take a look at the latest software developments. Want to catch up with the previous updates? Check [[:f:Special:MyLanguage/Wikifunctions:Status updates|our archive]]! Enjoy the reading! -- [[User:Sannita (WMF)|User:Sannita (WMF)]] ([[User talk:Sannita (WMF)|talk]]) 16:48, 26 March 2026 (UTC) <!-- Message sent by User:Sannita (WMF)@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Global_message_delivery/Targets/Wikifunctions_%26_Abstract_Wikipedia&oldid=30289284 --> == Language tags == I would appreciate input on [[Talk:Z14326#Case-sensitivity]] re: the exact semantics of {{Z|60}}'s identity key. CC @[[User:99of9|99of9]] since you connected one of the tests but not the others. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:27, 27 March 2026 (UTC) 6cx5tmb3pp0m8oxqlvknrh3i9520mg7 Module:Documentation/styles.css 828 1513 261476 118101 2026-03-28T11:07:56Z Escargot bleu 1060 dark mode 261476 sanitized-css text/css /* {{PP-template}} */ .ts-doc-sandbox .mbox-image { padding:.75em 0 .75em .75em; } .ts-doc-doc { clear: both; background-color: var(--background-color-success-subtle, #ecfcf4); border: 1px solid var(--border-color-base, #a2a9b1); margin-top: 1em; padding: 5px; } .ts-doc-header { padding-bottom: 3px; border-bottom: 1px solid var(--border-color-base, #a2a9b1); margin-bottom: 1ex; } .ts-doc-header .ts-tlinks-tlinks { display: inline-block; line-height: 24px; margin-left: 1em; } .ts-doc-header .ts-tlinks-tlinks a.external { color: var(--color-link, #0645ad); } .ts-doc-header .ts-tlinks-tlinks a.external:visited { color: var(--color-link--visited, #0b0080); } .ts-doc-header .ts-tlinks-tlinks a.external:active { color: var(--color-link--active, #faa700); } .ts-doc-content:after { content: ''; clear: both; display: block; } .ts-doc-heading { display: inline-block; padding-left: 55px; background: center left/50px no-repeat; background-image: url(https://upload.wikimedia.org/wikipedia/commons/thumb/4/43/Test_Template_Info-Icon_-_Version_%282%29.svg/50px-Test_Template_Info-Icon_-_Version_%282%29.svg.png); background-image: url(https://upload.wikimedia.org/wikipedia/commons/4/43/Test_Template_Info-Icon_-_Version_%282%29.svg); font-size: 1.5em; } .ts-doc-content > *:first-child, .ts-doc-footer > *:first-child { margin-top: .5em; } .ts-doc-content > *:last-child, .ts-doc-footer > *:last-child { margin-bottom: .5em; } .ts-doc-footer { background-color: var(--background-color-success-subtle, #ecfcf4); border: 1px solid var(--border-color-base, #a2a9b1); padding: .25em 1em; margin-top: .2em; font-style: italic; } .ts-doc-footer small { font-style: normal; } .ts-doc-sandbox { clear: both; } ra0kmpplibxlvwyca7tnaeis6gp9yh8 Wikifunctions:Status 4 1684 261195 259499 2026-03-27T12:32:44Z Jayson500 61311 JAYSON.BASINILLO.JANTICO.AGE24/BIRT'YEAR4/17/2000.DEPLOMENTO.DETAILS.PERSONAL.ACCOUNT.HOME.PAGE.LINK.ID.APPSTORE.GOVHP.CULISEUM.SCEDULE.TIME.CALENDAR.WORSPACE.HOME.WORK AT.SCHOOL PROCESOR.INSPECTORING.NSO.PSA.PSN.USER 261195 wikitext text/x-wiki {{AW Content}} This page aims to give a reasonably current view on the '''current status''' of Wikifunctions. If something does not work, this page is a good first stop to check if that is a known issue. This page is not the complete source of details. A more immediate view is the [[phab:project/view/4876/|"Abstract Wikipedia" Phabricator board]]. This page just aims to provide a good and more easily understandable overview of major known issues and problems. See [[Wikifunctions:Report a technical problem]] for details on how to report a bug or make a feature request. '''Summary''': This page is not complete. We don't plan to list every single user facing issue, but merely the main ones. == Is anything currently very broken? == : ''No current known P0 or P1 issues!'' == What are we working on this Quarter? (April–June 2025) == {{Notice|Updates on this Quarter's work, and the new Quarter's work to come, are first published in the community newsletter.}} Each Quarter, we set out in a [[Wikifunctions:Status updates|Weekly Update]] our plans, and then report on how we're doing. The current work plan, for April–June 2025, was published in [[Wikifunctions:Status updates/2025-04-05|2025-04-05]]: * ([[phab:T390543|T390543]]) If we establish and meet '''performance standards''', we can have confidence that rolling out Wikifunctions access to more wikis will not disrupt those wikis' experiences or colleagues' work ** ([[phab:T390548|T390548]]) '''Establish an SLO''' for the Wikifunctions integration into Wikimedia projects' wikitext pages, to assure reader experience quality is maintained during roll-out ** ([[phab:T390549|T390549]]) Implement Object and Wikidata entity '''caching mechanisms in the function-orchestrator''' to drive up user experienced performance when making function calls ** ([[phab:T390550|T390550]]) Implement Object and Wikidata entity '''batching mechanisms in the function-orchestrator''' to drive up user experienced performance when making function calls and reduce load on production wikis * ([[phab:T390544|T390544]]) If we '''roll out Wikifunctions access to more Wikimedia wikis''', we will see wider use to deliver content and learn how well it works with different languages and communities to address content gaps ** ([[phab:T390551|T390551]]) Make embedded Wikifunctions available in '''at least five more Wikimedia projects''', to learn from other languages and communities ** ([[phab:T390552|T390552]]) Listen to '''feedback from the pilot Dagbani Wikipedia community''' and adapt features, so that we can identify blockers to further rollout, and increase value to editors and readers, and so help the community * ([[phab:T390545|T390545]]) Improve features related to the '''Wikifunctions integration''', so that wiki editors can use Wikifunctions in articles with more confidence. ** ([[phab:T390553|T390553]]) Support '''default values''' when fields are left blank for date inputs in the Wikifunctions integration so that editors can use it more simply ** ([[phab:T390554|T390554]]) Show '''read-mode errors''' from the Wikifunctions integration inline rather than in a box, so that editors can be less disrupted when something is wrong ** ([[phab:T390555|T390555]]) Show a '''preview''' of the function call result in the Wikifunctions integration dialog, so that editors can adjust their uses more swiftly ** ([[phab:T390557|T390557]]) Display the local and cross-wiki '''pages on which a Function is used''', so that Wikifunctions users can see the impact of their changes * ([[phab:T390546|T390546]]) Extend features to '''use Wikidata items more fluently''', so that Wikifunctions editors can do more things and so address content gaps more readily. ** ([[phab:T390558|T390558]]) Support a '''light-weight enum Type''' alternative in the Wikifunctions front-end and in the Wikifunctions integration so that editors can use them more easily ** ([[phab:T390559|T390559]]) Extend support for Wikidata items to cover '''unitful values and other types''', so that function creators can take advantage of more of the content features of Wikidata ** ([[phab:T390560|T390560]]) Improve the '''performance in the Wikifunctions front-end''', so that function creators and users can use complex and large Objects such as those from Wikidata without difficulty * ([[phab:T390547|T390547]]) '''Build plans''' in the Abstract Wikipedia team on how to address common concerns and proposed feature expansions, so that we can be prepared for taking this on in future. ** ([[phab:T390561|T390561]]) Experiment with how we might support '''rich content as output''', including in the Wikifunctions integration, so that we can see how to support future use cases. Develop a plan based on this. ** ([[phab:T390563|T390563]]) Develop a plan for how we might support '''macro-languages like Chinese''', so that we can see how to support them as groups in future ** ([[phab:T390564|T390564]]) Discuss with the Wikifunctions community and others '''where we might host Abstract Content''' in the future, so that we can prepare for that work On top of the above planned work, we'll also have some "essential work", where we respond to bug fixes and emergency situations following our standard protocols, aimed at reducing disruption for the Wikifunctions community and its users. You can see [[phab:project/view/7414/|our team's Phabricator board for the current Quarter]] for more detailed tracking of how things are going. == Longer-term plans == : ''These are issues that we hope to work on in the future, as part of the bigger plans for Wikifunctions and Abstract Wikipedia. We will prioritise between them based on your feedback and ideas.'' === Type creation is locked-down to staff === {{Tracked|T343469}} For now, we only support a limited number and nature of types, and creation is limited to only staff. There are a number of built-in functions, ''e.g.'' [[Z811|first element of a list]], [[Z881|typed list]], and many others, which are currently not well-supported for custom types, which we are looking at addressing. Generic types and generic functions require a bit of development and bug-fixing, and are not ready yet. === Function pages don't show you where or how much they're used === {{Tracked|T282915}} This would be an important way for the Wikifunctions community to decide how to focus effort and warn users of changes, like how the [[commons:Special:GlobalUsage|GlobalUsage tool]] guides the Commons community. === Diffs are ugly, so it's hard to do vandalism patrolling or community moderation === {{Tracked|T284473}} For now, diffs "work" but show ugly blobs of JSON rather than nice, understandable, formatted results. We want an experience like Wikidata's or better. === Search is ugly, so it's a problem to find things === {{Tracked|T271963}} For now, the search "works" but shows ugly blobs of JSON rather than a nice, understandable, formatted result, and you can't filter by type of object (''e.g.'' "show me only Implementations that match my search"). <small>Note: You can include the required type’s reference (''e.g.'' "Z14") prefixed by the literal "Z1K1 " (case insensitive) in your search. For example, [[Special:Search/: suffix Z1K1 Z14|: suffix "z1k1 Z14"]] will tend to find Implementations containing the string "suffix" (because Functions and Test cases are unlikely to contain a string that is equivalent to "z1k1 Z14", whereas all Implementations contain <code>"Z1K1": "Z14"</code> in their JSON representations and this is equivalent to "z1k1 Z14").</small> {{DEFAULTSORT:KERNEL OFFICER }} [[Category:Maintenance| 2024+2025+2026+2031]] q7ig34xu7m9lc31eqm0ybv7mdmt4c4w 261198 261195 2026-03-27T12:39:43Z Tenshi Hinanawi 12610 Reverted 1 edit by [[Special:Contributions/Jayson500|Jayson500]] ([[User talk:Jayson500|talk]]) (TwinkleGlobal) 261198 wikitext text/x-wiki {{AW Content}} This page aims to give a reasonably current view on the '''current status''' of Wikifunctions. If something does not work, this page is a good first stop to check if that is a known issue. This page is not the complete source of details. A more immediate view is the [[phab:project/view/4876/|"Abstract Wikipedia" Phabricator board]]. This page just aims to provide a good and more easily understandable overview of major known issues and problems. See [[Wikifunctions:Report a technical problem]] for details on how to report a bug or make a feature request. '''Summary''': This page is not complete. We don't plan to list every single user facing issue, but merely the main ones. == Is anything currently very broken? == : ''No current known P0 or P1 issues!'' == What are we working on this Quarter? (April–June 2025) == {{Notice|Updates on this Quarter's work, and the new Quarter's work to come, are first published in the community newsletter.}} Each Quarter, we set out in a [[Wikifunctions:Status updates|Weekly Update]] our plans, and then report on how we're doing. The current work plan, for April–June 2025, was published in [[Wikifunctions:Status updates/2025-04-05|2025-04-05]]: * ([[phab:T390543|T390543]]) If we establish and meet '''performance standards''', we can have confidence that rolling out Wikifunctions access to more wikis will not disrupt those wikis' experiences or colleagues' work ** ([[phab:T390548|T390548]]) '''Establish an SLO''' for the Wikifunctions integration into Wikimedia projects' wikitext pages, to assure reader experience quality is maintained during roll-out ** ([[phab:T390549|T390549]]) Implement Object and Wikidata entity '''caching mechanisms in the function-orchestrator''' to drive up user experienced performance when making function calls ** ([[phab:T390550|T390550]]) Implement Object and Wikidata entity '''batching mechanisms in the function-orchestrator''' to drive up user experienced performance when making function calls and reduce load on production wikis * ([[phab:T390544|T390544]]) If we '''roll out Wikifunctions access to more Wikimedia wikis''', we will see wider use to deliver content and learn how well it works with different languages and communities to address content gaps ** ([[phab:T390551|T390551]]) Make embedded Wikifunctions available in '''at least five more Wikimedia projects''', to learn from other languages and communities ** ([[phab:T390552|T390552]]) Listen to '''feedback from the pilot Dagbani Wikipedia community''' and adapt features, so that we can identify blockers to further rollout, and increase value to editors and readers, and so help the community * ([[phab:T390545|T390545]]) Improve features related to the '''Wikifunctions integration''', so that wiki editors can use Wikifunctions in articles with more confidence. ** ([[phab:T390553|T390553]]) Support '''default values''' when fields are left blank for date inputs in the Wikifunctions integration so that editors can use it more simply ** ([[phab:T390554|T390554]]) Show '''read-mode errors''' from the Wikifunctions integration inline rather than in a box, so that editors can be less disrupted when something is wrong ** ([[phab:T390555|T390555]]) Show a '''preview''' of the function call result in the Wikifunctions integration dialog, so that editors can adjust their uses more swiftly ** ([[phab:T390557|T390557]]) Display the local and cross-wiki '''pages on which a Function is used''', so that Wikifunctions users can see the impact of their changes * ([[phab:T390546|T390546]]) Extend features to '''use Wikidata items more fluently''', so that Wikifunctions editors can do more things and so address content gaps more readily. ** ([[phab:T390558|T390558]]) Support a '''light-weight enum Type''' alternative in the Wikifunctions front-end and in the Wikifunctions integration so that editors can use them more easily ** ([[phab:T390559|T390559]]) Extend support for Wikidata items to cover '''unitful values and other types''', so that function creators can take advantage of more of the content features of Wikidata ** ([[phab:T390560|T390560]]) Improve the '''performance in the Wikifunctions front-end''', so that function creators and users can use complex and large Objects such as those from Wikidata without difficulty * ([[phab:T390547|T390547]]) '''Build plans''' in the Abstract Wikipedia team on how to address common concerns and proposed feature expansions, so that we can be prepared for taking this on in future. ** ([[phab:T390561|T390561]]) Experiment with how we might support '''rich content as output''', including in the Wikifunctions integration, so that we can see how to support future use cases. Develop a plan based on this. ** ([[phab:T390563|T390563]]) Develop a plan for how we might support '''macro-languages like Chinese''', so that we can see how to support them as groups in future ** ([[phab:T390564|T390564]]) Discuss with the Wikifunctions community and others '''where we might host Abstract Content''' in the future, so that we can prepare for that work On top of the above planned work, we'll also have some "essential work", where we respond to bug fixes and emergency situations following our standard protocols, aimed at reducing disruption for the Wikifunctions community and its users. You can see [[phab:project/view/7414/|our team's Phabricator board for the current Quarter]] for more detailed tracking of how things are going. == Longer-term plans == : ''These are issues that we hope to work on in the future, as part of the bigger plans for Wikifunctions and Abstract Wikipedia. We will prioritise between them based on your feedback and ideas.'' === Type creation is locked-down to staff === {{Tracked|T343469}} For now, we only support a limited number and nature of types, and creation is limited to only staff. There are a number of built-in functions, ''e.g.'' [[Z811|first element of a list]], [[Z881|typed list]], and many others, which are currently not well-supported for custom types, which we are looking at addressing. Generic types and generic functions require a bit of development and bug-fixing, and are not ready yet. === Function pages don't show you where or how much they're used === {{Tracked|T282915}} This would be an important way for the Wikifunctions community to decide how to focus effort and warn users of changes, like how the [[commons:Special:GlobalUsage|GlobalUsage tool]] guides the Commons community. === Diffs are ugly, so it's hard to do vandalism patrolling or community moderation === {{Tracked|T284473}} For now, diffs "work" but show ugly blobs of JSON rather than nice, understandable, formatted results. We want an experience like Wikidata's or better. === Search is ugly, so it's a problem to find things === {{Tracked|T271963}} For now, the search "works" but shows ugly blobs of JSON rather than a nice, understandable, formatted result, and you can't filter by type of object (''e.g.'' "show me only Implementations that match my search"). <small>Note: You can include the required type’s reference (''e.g.'' "Z14") prefixed by the literal "Z1K1 " (case insensitive) in your search. For example, [[Special:Search/: suffix Z1K1 Z14|: suffix "z1k1 Z14"]] will tend to find Implementations containing the string "suffix" (because Functions and Test cases are unlikely to contain a string that is equivalent to "z1k1 Z14", whereas all Implementations contain <code>"Z1K1": "Z14"</code> in their JSON representations and this is equivalent to "z1k1 Z14").</small> [[Category:Maintenance| ]] quzy8da7t19w6n7svgjc7rpagd28koi Wikifunctions:Community portal 4 1724 261228 261093 2026-03-27T14:40:54Z Tenshi Hinanawi 12610 Reconnected 261228 wikitext text/x-wiki <div style="border:1px solid grey; margin:1em 4em 2em; padding:1.5em 1em;"> <span style="font-size:2em;">Welcome to the '''community portal for Wikifunctions'''!</span> This is the central place to document Wikifunctions's to-do lists and ongoing project work. [To-do!] [[Special:MyLanguage/Wikifunctions:Catalogue|The catalogue of functions]] is a good place to start. For discussions, see [[Wikifunctions:Project chat]]. [[Category:Project]] </div> == Useful links == * [[Wikifunctions:List of policies and guidelines]] * [[Special:MyLanguage/Help:Contents|Help:Contents]] * [[Special:MyLanguage/Wikifunctions:Catalogue|Wikifunctions:Catalogue of functions]] ** [[Wikifunctions:Suggest a function]] * [[Wikifunctions:Type proposals]] * [[Special:MyLanguage/Wikifunctions:User scripts|Wikifunctions:User scripts]] * [[Wikifunctions:Requests for user groups]] * [[Wikifunctions:Requests for deletions]] == Noticeboards == * [[Wikifunctions:Project chat]] * [[Wikifunctions:Administrators' noticeboard]] * [[Wikifunctions:Report vandalism]] * [[Wikifunctions:Translators' noticeboard]] == Task centre == === Perennial tasks === <!--Feel free to add new tasks to this section. However, if they are one-off requests, please add them to Tasks listed by users--> * [[File:OOjs UI icon language-ltr.svg|class=skin-invert]] [[Special:MyLanguage/Help:Multilingual|Translation]]: **[[Special:Random|Add a translation to a random object]] **[[Special:MyLanguage/Category:Policy|Add a translation to a policy page]] **[[Special:ListMissingLabels|See any objects without a label in a given language]] **[[Special:PageTranslation]] **[[Special:LanguageStats|Language statistics]] *[[File:Octicons-tools.svg|15px|class=skin-invert]] [[:Category:Tracking categories|Tracking categories]] * [[File:Octicons-tools.svg|15px|class=skin-invert]] [[Wikifunctions:Request for cleanup|Requests for cleanup]] === Tasks listed by users === :''Example:'' :* Fix [[Special:Random|this implementation]] please. {{User|Example2}} ::{{Done}}. Thanks for pointing that out! {{User|Example}} <hr/> [signing to enable reply link:--[[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:27, 6 May 2024 (UTC) :Heya, I tried to make a {{Z|Z29010}} implementation in composition <small>({{Z|Z29012}})</small>, but it errors out: <code>Unable to convert to canonical form (path to the problem: "Z22K2.K1.K1.K2.Z5K2.Z528K1.Z99K1.Z7K1.Z8K4.[ 1 ].Z14K2.Z26107K2.Z21394K1.[ 1 ].Z10771K1.Z23753K2.Z18K1.{&quot;Z1K1&quot;:&quot;Z18&quot;,&quot;Z6K1&quot;:&quot;Z29010K5&quot;,&quot;Z18K1&quot;:&quot;&quot;}")</code> - why does this happen, and how would I fix it? I tried to use {{Z|Z28030}} as a guide, but for a first dive into composition I may have taken on something a bit large. [[User:Infernostars|infernostars]] <small>([[User talk:Infernostars|talk]]) ([[Special:Contributions/Infernostars|contribs]])</small> 02:49, 23 October 2025 (UTC) ::When you go to {{Z|Z29012}} you'll see two red words "Function" and "Wikidata item". Both of those were not set in the composition, so it is missing information. There may be more deeper problems, but fix this first. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 03:33, 23 October 2025 (UTC) ::{{done}} Works now, seemed to be just a couple typos. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:14, 24 December 2025 (UTC) :Please connect the tests and implementation for {{Z|29750}}. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:33, 25 November 2025 (UTC) ::This ^ was done, so thanks for that, and I've now built a new function around it that's ready to be connected: {{Z|29749}}<!-- --><br>Having fallbacks to other languages and indicating such does of course raise the question of ''when'' it should be indicated, and I certainly don't have the answer, so I might leave this message here for the multilingual among you to see it and chime in. Either on [[Talk:Z24144]], or by way of adding a test case on one of these functions. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:42, 25 November 2025 (UTC) :::If it’s about the way labels in fallback languages are displayed, perhaps the [[Talk:Z21583|Discussion page]] for {{Z|Z21583}} would be a better location? There has been some discussion at [[Wikifunctions talk:Abstract Wikipedia/2025 fragment experiments#Proposed recommendation: Fragments should return Z11/monolingual strings]]. (The spinoff, [[Wikifunctions talk:Abstract Wikipedia/2025 fragment experiments#Fallbacks]], might also be relevant.) [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 15:23, 25 November 2025 (UTC) :Now that raising and catching errors has better support, [[Z28159]] should take an {{Z|50}} instead of a ZID {{Z|6}}. Unfortunately it's already been used in other functions so it might be a pain to change. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 07:20, 21 December 2025 (UTC) ::Yes. I think this gets fixed along with {{Z|Z28162}}, which is listed in [[Wikifunctions:Request for cleanup#Function:(!) throw error (Z28154)]]. ::@[[User:Dv103|Dv103]] I was thinking we might just wrap {{Z|851}}? Custom errors will support only strings for the foreseeable future, as I understand it [can’t currently locate the relevant comment on Phabricator]. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 13:12, 21 December 2025 (UTC) :The simple implementation for {{Z|30737}} is failing with [[Z516]], even though I can get a (correct) result by [https://www.wikifunctions.org/view/en/Z12681?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z12681%22%2C%22Z12681K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22475%22%2C%22Z22475K1%22%3A%7B%22Z1K1%22%3A%22Z39%22%2C%22Z39K1%22%3A%22K1%22%7D%2C%22Z22475K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30260%22%2C%22Z30260K1%22%3A%5B%22Z6095%22%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L100%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L101%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L102%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L103%22%7D%5D%2C%22Z30260K2%22%3A%5B%22Z6030%22%2C%22Z6031%22%5D%2C%22Z30260K3%22%3A%5B%22Z60%22%5D%2C%22Z30260K4%22%3A%5B%22Z6092%22%5D%7D%7D%7D calling those functions on the test input]. Oddly enough [https://www.wikifunctions.org/view/en/Z12681?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z12681%22%2C%22Z12681K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22475%22%2C%22Z22475K1%22%3A%7B%22Z1K1%22%3A%22Z39%22%2C%22Z39K1%22%3A%22K1%22%7D%2C%22Z22475K2%22%3A%7B%22Z1K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z883%22%2C%22Z883K1%22%3A%22Z1%22%2C%22Z883K2%22%3A%22Z1%22%7D%2C%22K1%22%3A%5B%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z882%22%2C%22Z882K1%22%3A%22Z1%22%2C%22Z882K2%22%3A%22Z1%22%7D%2C%7B%22Z1K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z882%22%2C%22Z882K1%22%3A%22Z1%22%2C%22Z882K2%22%3A%22Z1%22%7D%2C%22K1%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%226%22%7D%2C%22K2%22%3A%22Abacus%22%7D%5D%7D%7D%7D a trivial input] causes that to fail with the same error. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:43, 26 December 2025 (UTC) ::Sorry, I missed this one. Initial validation rejects a map with {{Z|Z1}} as its key type. Although it’s not guaranteed to be hashable, [[Z1]] should probably be admitted as a placeholder {{Z|Z4}}. In any event, using {{Z|Z6}} as the alternative seems to work and does not restrict the map to having only Strings for keys (as seen in {{Z|Z30906}}, where the keys have {{Z|Z39}} for their Type). [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 09:18, 31 December 2025 (UTC) :::[[Z30907|Documented]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:50, 31 December 2025 (UTC) :The implementation for {{Z|29183}} is slightly incorrect, it needs to subtract 9 on the condition that variable <code>add</code> is &gt;9 (tests &gt;10 currently). For me to change {{Z|29185}}, the implementation needs to be disconnected from {{Z|29183}} by a functioneer ([[Special:ListUsers/functioneer]]) first. The english wiki also warns about using negative values as input for the modulo operation, so, in addition, the result computation should be rephrased to be <syntaxhighlight lang="python"> def intdivceil(x, d): return x//d + (0 if x % d == 0 else 1) return 10 * intdivceil(sum, 10) - sum </syntaxhighlight> :I'd also like to have all test cases of {{Z|29183}} connected by a functioneer, after changes to {{Z|29185}} have been commited. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 21:54, 2 January 2026 (UTC) ::Disconnected. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 22:12, 2 January 2026 (UTC) :::Thanks, changes done - please reconnect. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 22:33, 2 January 2026 (UTC) ::::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 23:08, 2 January 2026 (UTC) :::Weird: {{Z|30940}} and {{Z|30941}} tests do not pass after the reconnect, although [https://www.wikifunctions.org/wiki/Special:RunFunction?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z29183%22%2C%22Z29183K1%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%2290544230009%22%7D%7D running them manually] produces the expected result. Judging from the timestamps within the detail view, pressing the Refresh-Button does not actually re-run the tests. :::It seems that their results have been generated with the previous function. Can you make an effort to dis- and reconnect these two tests? The (unconfirmed) presumption is that tests only run on demand (event-triggered vs time scheduled). If this is true it may be noteworthy in the [[WF:FAQ]]. :::The first test, {{Z|29184}}, did not exhibit the same problem, it has been updated as expected. Because the execution timestamps of all three tests do not vary greatly, they were probably triggered, correctly so, by the same event. In theory they should then have consequently worked on the same function - since the test results suggest different, there could have either been a race condition or a stale cache, eventually with some tests running before the action that triggered them was fully committed. If this is not a timing issue, the response to the connection event might miss to update some of the data structures associated with the connected tests and simply run them unchanged, but this is speculative. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 01:38, 3 January 2026 (UTC) ::::Yeah the cached failures are super annoying, I think they reduced the cache duration recently but it's still too high IMO. Disconnecting and reconnecting the Implementation triggered them to run again. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:16, 3 January 2026 (UTC) :Can somebody connect the tests and implementation of this function? [[Z31047|arithmetical average of numbers (Z31047)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 04:35, 13 January 2026 (UTC) ::The implementation seems to fail all the tests. I suspect from the use of <code>{}</code> in Python code. Besides, on the implementation ({{Z|Z31048}}), it used <code>sum</code> as variable, which I don't think allowable in Python. Try to use another variable name. Last, what is the expected result of {{Z|Z31050}}? [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 04:50, 13 January 2026 (UTC) :::Sorry, @[[User:Sys64ish|Sys64ish]], I just got the expected result from {{Z|31050}}. I have connected the test cases, but not yet for the implementation as you may want to fix it first(?) [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 05:05, 13 January 2026 (UTC) ::::Fixed it, passes tests [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 05:09, 13 January 2026 (UTC) :::::{{Done}} connected! [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 05:11, 13 January 2026 (UTC) :When I go to add a test to this function, for some reason I cannot select a fixed value for the expected value, the type is fixed to a function call. Can somebody fix this? [[Z31051|graph a one parameter function (Z31051)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 06:16, 13 January 2026 (UTC) ::You need to select an equality function, which in this case would be {{Z|889}} with {{Z|20924}} as an argument. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 09:59, 13 January 2026 (UTC) :::Just what I was about to say, only shorter! :::I had a look at the Python implementation and that doesn’t appear to be viable, because a {{Z|Z8}} object is data, not a callable Python function. I think a composition is the only option here, but we don’t appear to have a [[Special:Search/:"z8k2 z1k1 z7 z7k1 z881 z881k1 Z20838"|generator function for ]]{{Z|Z20838}} yet ([[Special:Search/:"z8k2 z1k1 z7 z7k1 z881 z881k1 z19677"|nor for rationals]]). [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:39, 13 January 2026 (UTC) :Can somebody connect the tests and implementations of this function? [[Z31079|decimal number range (Z31079)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 13:57, 14 January 2026 (UTC) ::I’ve connected the test but there are a few issues with the implementation. The function has no return and the list to return shouldn’t be called range, as that overwrites the built-in range() function. Wikifunctions.Error requires a list of strings and you should probably guard against K3 being zero. Just let us know if you need any help with this. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 14:22, 14 January 2026 (UTC) :::I think I fixed the implementation [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 14:28, 14 January 2026 (UTC) ::::Looks close. You probably want to *return* Wikifunctions.Error in order to halt execution. The K1 and K2 arguments are float64s rather than strings, so they need coercing to str for the error. You still risk a divide by zero if K3 has no guard. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 14:48, 14 January 2026 (UTC) :::::I fixed it now, tests are passing(?) and when I run it locally it works as intended. [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 02:22, 15 January 2026 (UTC) ::::::{{done}} ::::::I created {{Z|31093}} to fix the last test, since your Python implementation was returning slightly inaccurate values for [[w:en:Floating-point_arithmetic#Accuracy_problems|reasons]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:11, 15 January 2026 (UTC) :Can somebody connect the impl. and test cases of these functions? [[Z31051|generate real (float64) list from a function (Z31051)]] [[Z31111|increment (float64) (Z31111)]] [[Z31116|decrement (float64) (Z31116)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 00:11, 16 January 2026 (UTC) ::Mostly. I see {{Z|Z31051}} has its Minimum and Maximum defined as integers rather than float64, as defined for the generator. Something has to change here, and I’m guessing it’s [[Z31051]], so I disconnected its implementation again. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 01:31, 16 January 2026 (UTC) :::all inputs except the input for the function are now float64 [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 13:36, 16 January 2026 (UTC) ::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 15:07, 16 January 2026 (UTC) : Can someone here connect the implementation and test cases of this function: [[Z18679|Malay cardinal to ordinal]]? {{User|Hakimi97}} :: {{Done}} [[User:Sys64ish|Sys32ish]] ([[User talk:Sys32ish|talk]]) 09:16, 19 January 2026 (UTC) :Can someone please add the following IPA symbols needed for {{Z|Z1099}} to <code>lookup</code> in the JavaScript implementation {{Z|Z29880}}? : "ɐ": "Q503323", : "u": "Q29653", : "ɕ": "Q605116", : "x": "Q271603", : "ʑ": "Q684085", : "ɣ": "Q654670", : "ʀ": "Q864677", : "χ": "Q849796", : "ʁ": "Q1054276", : "o": "Q862579", : "æ": "Q740768", : "ɪ": "Q1070049", : "ʊ": "Q1137807", :Thank you! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 20:23, 27 February 2026 (UTC) ::I forgot to mention the ligatures ::"ʤ": "Q778145", ::"ʧ": "Q518603", ::which could be put next to the already present ::"dʒ": "Q778145", ::"tʃ": "Q518603", ::--[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 20:24, 27 February 2026 (UTC) ::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 00:33, 28 February 2026 (UTC) :::Thank you! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 08:59, 28 February 2026 (UTC) : Can someone connect up [[Z31844]] and [[Z31837]]. These are better than the other implementations on their pages. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 09:04, 1 March 2026 (UTC) ::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:12, 1 March 2026 (UTC) :Hello, please connect {{Z|Z31729}}'s implementation and test cases. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 10:48, 8 March 2026 (UTC) ::The implementation does not seem to pass any of the test case. If you click on the [[File:Icon Information.svg|Icon_Information|15px|class=skin-invert-image]] (i) icon on the test status, you can find the error, what the implementation output, etc. Try to fix the implementation first. Thanks! [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 11:22, 8 March 2026 (UTC) ::It seems you're returning a string value when it expects a HTML fragment. HTML fragment and string are different. Maybe you can change the output type to string? [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 11:44, 10 March 2026 (UTC) :::Thanks for running the tests, @[[User:NikolasKHF|NikolasKHF]]; I couldn’t run them on my own (seemingly because I don’t have the needed right). I will fix the errors. :::Thanks for looking into this, @[[User:Sys64ish|Sys64ish]]. I actually did want to return an HTML fragment instead of a string because I think that would be more useful on the wikis. However, it looks like I forgot to convert the string for most cases where an output is returned (hence why only one test failure actually complains about the output value being incorrect). [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 19:52, 10 March 2026 (UTC) :Can someone connect [[Z31994]] and [[Z31999]] with its tests and implementations. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:41, 11 March 2026 (UTC) ::{{done}} [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 08:49, 11 March 2026 (UTC) :::Oh yeah I also made another function now, [[Z32004]]. Can someone connect its implementations and tests. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 09:02, 11 March 2026 (UTC) ::::{{done}} [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 09:23, 11 March 2026 (UTC) :Can someone connect up [[Z32013]]. Also how do you become able to connect and disconnect implementations? Is it only available to extended confirmed users? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 10:06, 12 March 2026 (UTC) ::I don’t believe this implementation should be connected at this time. The existing Python implementation respects the community consensus represented by the test cases connected to {{Z|Z24144}}. What do you think, @[[User:99of9|99of9]]? [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:28, 12 March 2026 (UTC) :::Fair, I didn't realise the test cases served as implicit consensus. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 11:42, 12 March 2026 (UTC) ::::No worries. It’s not clearly articulated, but we’ll clarify that later. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:51, 12 March 2026 (UTC) :::I'm not sure. At the moment it correctly reproduces all those we got "consensus" for. So in some sense this implementation is just suggesting/assuming extra fallbacks for those we haven't properly considered? One option would be to connect it and then add counter test cases if we ever felt we didn't like it's current suggestions. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 00:30, 13 March 2026 (UTC) ::::We should be careful… It’s not easy to tell how many test case results would be affected. It’s easy enough to disconnect again, of course, so I’m happy to give it a go while activity in this domain is at a low ebb. {{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:04, 13 March 2026 (UTC) ::To connect implementations, you need Functioneer rights, which can be requested here [[Wikifunctions:Requests for user groups]]. There is a 48-hour waiting period. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:32, 12 March 2026 (UTC) :Can someone connect up [[Z32027]] with its implementation and test? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:29, 13 March 2026 (UTC) ::And also [[Z32031]]. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 10:16, 13 March 2026 (UTC) :::{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:51, 13 March 2026 (UTC) ::{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:50, 13 March 2026 (UTC) {{tracked|T419920|resolved}} :What is wrong with my implementation at [[Z32055]]? Looking at the failed test, it returns an error because 'dict' has no attribute 'split', but I didn't use split anywhere in my code. What is the issue? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 01:38, 14 March 2026 (UTC) ::I think that error message is coming from the [[Z20424|type converter]]. I think <code>Z20424K1['Z20420K2']['Z20342K1']</code> would be a dictionary representing a {{Z|16098}} but the code is written as though it were a string? Neither Python nor type converters are in my wheelhouse. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:49, 14 March 2026 (UTC) :::I think this is [[:phab:T419920]] and presumed to be a consequence of this week’s rollout of “v2”. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:08, 14 March 2026 (UTC) ::The type converter issue has gone away, but your Implementation doesn't quite match the tests (and composition), so I've disconnected it again. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:54, 20 March 2026 (UTC) ==== Connection / Disconnection requests ==== Can someone connect {{Z|32068}} and {{Z|15974}} to their tests and implementations. Thanks in advance. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 23:24, 14 March 2026 (UTC) :In the first function, there’s some issue with Maybe but I don’t think that’s the implementation. But I do think the error-handling for Maybe needs fixing. I’ll check back tomorrow and dig deeper if need be. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 23:48, 14 March 2026 (UTC) ::I fixed the error raising and checking, but the test is still failing for some reason? [[phab:T419920]] again? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 23:54, 14 March 2026 (UTC) :::It certainly looks like a conversion failure going into {{Z|Z22123}}. I made a [[Z32083|new implementation]] of {{Z|Z22120}} which is now “preferred”. If everything behaves itself, [[Z22123]] can be reconnected. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 17:24, 15 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:56, 20 March 2026 (UTC) Can someone connect {{Z|32208}}, {{Z|32199}}, and {{Z|32204}}'s testcases and implementations? thanks in advance! --[[User:VivianIsBee|VivianIsBee]] ([[User talk:VivianIsBee|talk]]) 14:33, 20 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:48, 20 March 2026 (UTC) Can someone connect {{Z|32355}}'s testcases and implementations? Thanks in advance! [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 08:15, 22 March 2026 (UTC) :I haven't connected the implementation yet, because it doesn't seem to pass any of the test cases. If the implementation has any issues, then fix them first. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:24, 22 March 2026 (UTC) ::Thanks. I fixed. One testcase has passed now. But another testcase still says "The lexeme doesn't have forms" although I added a lexical form about 20 hour ago. I suppose cashed data may not have been refreshed yet. So can you please connect implementation so that I can check precisely? [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 05:47, 23 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:32, 23 March 2026 (UTC) Can someone connect {{Z|32442}}'s testcases and implementations? Thanks in advance! [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 22:38, 23 March 2026 (UTC) :Did you mean to include spaces between "words" with your Implementation, or was that a copy-paste error? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 05:24, 24 March 2026 (UTC) ::Thanks. That's a copy-paste error. I deleted one space.[[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 06:55, 24 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 09:48, 24 March 2026 (UTC) Request to connect {{Z|32212}}, {{Z|32213}}, {{Z|32214}}, {{Z|32216}}, and {{Z|32240}}, all related to defining role sentence in Chinese for all variants. [[User:1F616EMO|1F616EMO]] ([[User talk:1F616EMO|talk]]) 03:21, 24 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 05:28, 24 March 2026 (UTC) Can someone disconnect {{Z|10816}}'s Python implementation? Need to fix one of the test case errors. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 19:47, 26 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 19:59, 26 March 2026 (UTC) ::Fixed the Python implementation, if anyone could reconnect that again. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 20:11, 26 March 2026 (UTC) :::Noting that this was reconnected. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 14:40, 27 March 2026 (UTC) ==== [[WF:HL]] ==== I have recently drafted some revamps of [[Wikifunctions:Human languages]] ([[User:Xeroctic/Human languages]]) and [[Wikifunctions:Reserved ZIDs]] ([[User:Xeroctic/Reserved ZIDs]]) in my userspace, and I think they are ready to replace the originals. I have not included translation tags for HL (which would be entirely different) and they need major modification for RZIDs to add or re-add them, so I would like that to be done as well. — [[User:Xeroctic|Xeroctic]] ([[User talk:Xeroctic|talk]]) 16:39, 3 November 2025 (UTC) : {{s}} since Xeroctic's versions improve readability. — [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 11:17, 24 November 2025 (UTC) :: Restoring this unresolved thread which was archived in oldid 237379. — [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 14:36, 16 January 2026 (UTC) :[[WF:Human languages]]: Copying the categorisation from enWiktionary seems like a good idea. I don't understand why this page is separate from [[WF:Catalogue/Natural language operations]] though? (time/happenstance? [[WT:Human_languages#proposal|previous disc.]]) Redlinks to cataloguing subpages will remain red unless and until someone makes an NLG function in that language. :[[WF:Reserved ZIDs]]: Using the live labels is an obvious improvement. I appreciate it being kept up-to-date. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:55, 16 January 2026 (UTC) :{{support}} per Arlo Barnes and YoshiRulz [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 01:11, 11 March 2026 (UTC) :{{support}} Let’s do this already. --[[User:Mormegil|Mormegil]] ([[User talk:Mormegil|talk]]) 08:33, 27 March 2026 (UTC) l6tpflp5xfs959qzwesblmn7k3h35ji 261410 261228 2026-03-28T07:18:52Z ChaoticVermillion 31127 adding request 261410 wikitext text/x-wiki <div style="border:1px solid grey; margin:1em 4em 2em; padding:1.5em 1em;"> <span style="font-size:2em;">Welcome to the '''community portal for Wikifunctions'''!</span> This is the central place to document Wikifunctions's to-do lists and ongoing project work. [To-do!] [[Special:MyLanguage/Wikifunctions:Catalogue|The catalogue of functions]] is a good place to start. For discussions, see [[Wikifunctions:Project chat]]. [[Category:Project]] </div> == Useful links == * [[Wikifunctions:List of policies and guidelines]] * [[Special:MyLanguage/Help:Contents|Help:Contents]] * [[Special:MyLanguage/Wikifunctions:Catalogue|Wikifunctions:Catalogue of functions]] ** [[Wikifunctions:Suggest a function]] * [[Wikifunctions:Type proposals]] * [[Special:MyLanguage/Wikifunctions:User scripts|Wikifunctions:User scripts]] * [[Wikifunctions:Requests for user groups]] * [[Wikifunctions:Requests for deletions]] == Noticeboards == * [[Wikifunctions:Project chat]] * [[Wikifunctions:Administrators' noticeboard]] * [[Wikifunctions:Report vandalism]] * [[Wikifunctions:Translators' noticeboard]] == Task centre == === Perennial tasks === <!--Feel free to add new tasks to this section. However, if they are one-off requests, please add them to Tasks listed by users--> * [[File:OOjs UI icon language-ltr.svg|class=skin-invert]] [[Special:MyLanguage/Help:Multilingual|Translation]]: **[[Special:Random|Add a translation to a random object]] **[[Special:MyLanguage/Category:Policy|Add a translation to a policy page]] **[[Special:ListMissingLabels|See any objects without a label in a given language]] **[[Special:PageTranslation]] **[[Special:LanguageStats|Language statistics]] *[[File:Octicons-tools.svg|15px|class=skin-invert]] [[:Category:Tracking categories|Tracking categories]] * [[File:Octicons-tools.svg|15px|class=skin-invert]] [[Wikifunctions:Request for cleanup|Requests for cleanup]] === Tasks listed by users === :''Example:'' :* Fix [[Special:Random|this implementation]] please. {{User|Example2}} ::{{Done}}. Thanks for pointing that out! {{User|Example}} <hr/> [signing to enable reply link:--[[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:27, 6 May 2024 (UTC) :Heya, I tried to make a {{Z|Z29010}} implementation in composition <small>({{Z|Z29012}})</small>, but it errors out: <code>Unable to convert to canonical form (path to the problem: "Z22K2.K1.K1.K2.Z5K2.Z528K1.Z99K1.Z7K1.Z8K4.[ 1 ].Z14K2.Z26107K2.Z21394K1.[ 1 ].Z10771K1.Z23753K2.Z18K1.{&quot;Z1K1&quot;:&quot;Z18&quot;,&quot;Z6K1&quot;:&quot;Z29010K5&quot;,&quot;Z18K1&quot;:&quot;&quot;}")</code> - why does this happen, and how would I fix it? I tried to use {{Z|Z28030}} as a guide, but for a first dive into composition I may have taken on something a bit large. [[User:Infernostars|infernostars]] <small>([[User talk:Infernostars|talk]]) ([[Special:Contributions/Infernostars|contribs]])</small> 02:49, 23 October 2025 (UTC) ::When you go to {{Z|Z29012}} you'll see two red words "Function" and "Wikidata item". Both of those were not set in the composition, so it is missing information. There may be more deeper problems, but fix this first. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 03:33, 23 October 2025 (UTC) ::{{done}} Works now, seemed to be just a couple typos. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:14, 24 December 2025 (UTC) :Please connect the tests and implementation for {{Z|29750}}. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:33, 25 November 2025 (UTC) ::This ^ was done, so thanks for that, and I've now built a new function around it that's ready to be connected: {{Z|29749}}<!-- --><br>Having fallbacks to other languages and indicating such does of course raise the question of ''when'' it should be indicated, and I certainly don't have the answer, so I might leave this message here for the multilingual among you to see it and chime in. Either on [[Talk:Z24144]], or by way of adding a test case on one of these functions. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:42, 25 November 2025 (UTC) :::If it’s about the way labels in fallback languages are displayed, perhaps the [[Talk:Z21583|Discussion page]] for {{Z|Z21583}} would be a better location? There has been some discussion at [[Wikifunctions talk:Abstract Wikipedia/2025 fragment experiments#Proposed recommendation: Fragments should return Z11/monolingual strings]]. (The spinoff, [[Wikifunctions talk:Abstract Wikipedia/2025 fragment experiments#Fallbacks]], might also be relevant.) [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 15:23, 25 November 2025 (UTC) :Now that raising and catching errors has better support, [[Z28159]] should take an {{Z|50}} instead of a ZID {{Z|6}}. Unfortunately it's already been used in other functions so it might be a pain to change. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 07:20, 21 December 2025 (UTC) ::Yes. I think this gets fixed along with {{Z|Z28162}}, which is listed in [[Wikifunctions:Request for cleanup#Function:(!) throw error (Z28154)]]. ::@[[User:Dv103|Dv103]] I was thinking we might just wrap {{Z|851}}? Custom errors will support only strings for the foreseeable future, as I understand it [can’t currently locate the relevant comment on Phabricator]. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 13:12, 21 December 2025 (UTC) :The simple implementation for {{Z|30737}} is failing with [[Z516]], even though I can get a (correct) result by [https://www.wikifunctions.org/view/en/Z12681?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z12681%22%2C%22Z12681K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22475%22%2C%22Z22475K1%22%3A%7B%22Z1K1%22%3A%22Z39%22%2C%22Z39K1%22%3A%22K1%22%7D%2C%22Z22475K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30260%22%2C%22Z30260K1%22%3A%5B%22Z6095%22%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L100%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L101%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L102%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L103%22%7D%5D%2C%22Z30260K2%22%3A%5B%22Z6030%22%2C%22Z6031%22%5D%2C%22Z30260K3%22%3A%5B%22Z60%22%5D%2C%22Z30260K4%22%3A%5B%22Z6092%22%5D%7D%7D%7D calling those functions on the test input]. Oddly enough [https://www.wikifunctions.org/view/en/Z12681?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z12681%22%2C%22Z12681K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22475%22%2C%22Z22475K1%22%3A%7B%22Z1K1%22%3A%22Z39%22%2C%22Z39K1%22%3A%22K1%22%7D%2C%22Z22475K2%22%3A%7B%22Z1K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z883%22%2C%22Z883K1%22%3A%22Z1%22%2C%22Z883K2%22%3A%22Z1%22%7D%2C%22K1%22%3A%5B%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z882%22%2C%22Z882K1%22%3A%22Z1%22%2C%22Z882K2%22%3A%22Z1%22%7D%2C%7B%22Z1K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z882%22%2C%22Z882K1%22%3A%22Z1%22%2C%22Z882K2%22%3A%22Z1%22%7D%2C%22K1%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%226%22%7D%2C%22K2%22%3A%22Abacus%22%7D%5D%7D%7D%7D a trivial input] causes that to fail with the same error. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:43, 26 December 2025 (UTC) ::Sorry, I missed this one. Initial validation rejects a map with {{Z|Z1}} as its key type. Although it’s not guaranteed to be hashable, [[Z1]] should probably be admitted as a placeholder {{Z|Z4}}. In any event, using {{Z|Z6}} as the alternative seems to work and does not restrict the map to having only Strings for keys (as seen in {{Z|Z30906}}, where the keys have {{Z|Z39}} for their Type). [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 09:18, 31 December 2025 (UTC) :::[[Z30907|Documented]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:50, 31 December 2025 (UTC) :The implementation for {{Z|29183}} is slightly incorrect, it needs to subtract 9 on the condition that variable <code>add</code> is &gt;9 (tests &gt;10 currently). For me to change {{Z|29185}}, the implementation needs to be disconnected from {{Z|29183}} by a functioneer ([[Special:ListUsers/functioneer]]) first. The english wiki also warns about using negative values as input for the modulo operation, so, in addition, the result computation should be rephrased to be <syntaxhighlight lang="python"> def intdivceil(x, d): return x//d + (0 if x % d == 0 else 1) return 10 * intdivceil(sum, 10) - sum </syntaxhighlight> :I'd also like to have all test cases of {{Z|29183}} connected by a functioneer, after changes to {{Z|29185}} have been commited. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 21:54, 2 January 2026 (UTC) ::Disconnected. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 22:12, 2 January 2026 (UTC) :::Thanks, changes done - please reconnect. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 22:33, 2 January 2026 (UTC) ::::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 23:08, 2 January 2026 (UTC) :::Weird: {{Z|30940}} and {{Z|30941}} tests do not pass after the reconnect, although [https://www.wikifunctions.org/wiki/Special:RunFunction?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z29183%22%2C%22Z29183K1%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%2290544230009%22%7D%7D running them manually] produces the expected result. Judging from the timestamps within the detail view, pressing the Refresh-Button does not actually re-run the tests. :::It seems that their results have been generated with the previous function. Can you make an effort to dis- and reconnect these two tests? The (unconfirmed) presumption is that tests only run on demand (event-triggered vs time scheduled). If this is true it may be noteworthy in the [[WF:FAQ]]. :::The first test, {{Z|29184}}, did not exhibit the same problem, it has been updated as expected. Because the execution timestamps of all three tests do not vary greatly, they were probably triggered, correctly so, by the same event. In theory they should then have consequently worked on the same function - since the test results suggest different, there could have either been a race condition or a stale cache, eventually with some tests running before the action that triggered them was fully committed. If this is not a timing issue, the response to the connection event might miss to update some of the data structures associated with the connected tests and simply run them unchanged, but this is speculative. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 01:38, 3 January 2026 (UTC) ::::Yeah the cached failures are super annoying, I think they reduced the cache duration recently but it's still too high IMO. Disconnecting and reconnecting the Implementation triggered them to run again. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:16, 3 January 2026 (UTC) :Can somebody connect the tests and implementation of this function? [[Z31047|arithmetical average of numbers (Z31047)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 04:35, 13 January 2026 (UTC) ::The implementation seems to fail all the tests. I suspect from the use of <code>{}</code> in Python code. Besides, on the implementation ({{Z|Z31048}}), it used <code>sum</code> as variable, which I don't think allowable in Python. Try to use another variable name. Last, what is the expected result of {{Z|Z31050}}? [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 04:50, 13 January 2026 (UTC) :::Sorry, @[[User:Sys64ish|Sys64ish]], I just got the expected result from {{Z|31050}}. I have connected the test cases, but not yet for the implementation as you may want to fix it first(?) [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 05:05, 13 January 2026 (UTC) ::::Fixed it, passes tests [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 05:09, 13 January 2026 (UTC) :::::{{Done}} connected! [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 05:11, 13 January 2026 (UTC) :When I go to add a test to this function, for some reason I cannot select a fixed value for the expected value, the type is fixed to a function call. Can somebody fix this? [[Z31051|graph a one parameter function (Z31051)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 06:16, 13 January 2026 (UTC) ::You need to select an equality function, which in this case would be {{Z|889}} with {{Z|20924}} as an argument. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 09:59, 13 January 2026 (UTC) :::Just what I was about to say, only shorter! :::I had a look at the Python implementation and that doesn’t appear to be viable, because a {{Z|Z8}} object is data, not a callable Python function. I think a composition is the only option here, but we don’t appear to have a [[Special:Search/:"z8k2 z1k1 z7 z7k1 z881 z881k1 Z20838"|generator function for ]]{{Z|Z20838}} yet ([[Special:Search/:"z8k2 z1k1 z7 z7k1 z881 z881k1 z19677"|nor for rationals]]). [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:39, 13 January 2026 (UTC) :Can somebody connect the tests and implementations of this function? [[Z31079|decimal number range (Z31079)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 13:57, 14 January 2026 (UTC) ::I’ve connected the test but there are a few issues with the implementation. The function has no return and the list to return shouldn’t be called range, as that overwrites the built-in range() function. Wikifunctions.Error requires a list of strings and you should probably guard against K3 being zero. Just let us know if you need any help with this. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 14:22, 14 January 2026 (UTC) :::I think I fixed the implementation [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 14:28, 14 January 2026 (UTC) ::::Looks close. You probably want to *return* Wikifunctions.Error in order to halt execution. The K1 and K2 arguments are float64s rather than strings, so they need coercing to str for the error. You still risk a divide by zero if K3 has no guard. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 14:48, 14 January 2026 (UTC) :::::I fixed it now, tests are passing(?) and when I run it locally it works as intended. [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 02:22, 15 January 2026 (UTC) ::::::{{done}} ::::::I created {{Z|31093}} to fix the last test, since your Python implementation was returning slightly inaccurate values for [[w:en:Floating-point_arithmetic#Accuracy_problems|reasons]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:11, 15 January 2026 (UTC) :Can somebody connect the impl. and test cases of these functions? [[Z31051|generate real (float64) list from a function (Z31051)]] [[Z31111|increment (float64) (Z31111)]] [[Z31116|decrement (float64) (Z31116)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 00:11, 16 January 2026 (UTC) ::Mostly. I see {{Z|Z31051}} has its Minimum and Maximum defined as integers rather than float64, as defined for the generator. Something has to change here, and I’m guessing it’s [[Z31051]], so I disconnected its implementation again. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 01:31, 16 January 2026 (UTC) :::all inputs except the input for the function are now float64 [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 13:36, 16 January 2026 (UTC) ::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 15:07, 16 January 2026 (UTC) : Can someone here connect the implementation and test cases of this function: [[Z18679|Malay cardinal to ordinal]]? {{User|Hakimi97}} :: {{Done}} [[User:Sys64ish|Sys32ish]] ([[User talk:Sys32ish|talk]]) 09:16, 19 January 2026 (UTC) :Can someone please add the following IPA symbols needed for {{Z|Z1099}} to <code>lookup</code> in the JavaScript implementation {{Z|Z29880}}? : "ɐ": "Q503323", : "u": "Q29653", : "ɕ": "Q605116", : "x": "Q271603", : "ʑ": "Q684085", : "ɣ": "Q654670", : "ʀ": "Q864677", : "χ": "Q849796", : "ʁ": "Q1054276", : "o": "Q862579", : "æ": "Q740768", : "ɪ": "Q1070049", : "ʊ": "Q1137807", :Thank you! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 20:23, 27 February 2026 (UTC) ::I forgot to mention the ligatures ::"ʤ": "Q778145", ::"ʧ": "Q518603", ::which could be put next to the already present ::"dʒ": "Q778145", ::"tʃ": "Q518603", ::--[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 20:24, 27 February 2026 (UTC) ::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 00:33, 28 February 2026 (UTC) :::Thank you! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 08:59, 28 February 2026 (UTC) : Can someone connect up [[Z31844]] and [[Z31837]]. These are better than the other implementations on their pages. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 09:04, 1 March 2026 (UTC) ::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:12, 1 March 2026 (UTC) :Hello, please connect {{Z|Z31729}}'s implementation and test cases. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 10:48, 8 March 2026 (UTC) ::The implementation does not seem to pass any of the test case. If you click on the [[File:Icon Information.svg|Icon_Information|15px|class=skin-invert-image]] (i) icon on the test status, you can find the error, what the implementation output, etc. Try to fix the implementation first. Thanks! [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 11:22, 8 March 2026 (UTC) ::It seems you're returning a string value when it expects a HTML fragment. HTML fragment and string are different. Maybe you can change the output type to string? [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 11:44, 10 March 2026 (UTC) :::Thanks for running the tests, @[[User:NikolasKHF|NikolasKHF]]; I couldn’t run them on my own (seemingly because I don’t have the needed right). I will fix the errors. :::Thanks for looking into this, @[[User:Sys64ish|Sys64ish]]. I actually did want to return an HTML fragment instead of a string because I think that would be more useful on the wikis. However, it looks like I forgot to convert the string for most cases where an output is returned (hence why only one test failure actually complains about the output value being incorrect). [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 19:52, 10 March 2026 (UTC) :Can someone connect [[Z31994]] and [[Z31999]] with its tests and implementations. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:41, 11 March 2026 (UTC) ::{{done}} [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 08:49, 11 March 2026 (UTC) :::Oh yeah I also made another function now, [[Z32004]]. Can someone connect its implementations and tests. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 09:02, 11 March 2026 (UTC) ::::{{done}} [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 09:23, 11 March 2026 (UTC) :Can someone connect up [[Z32013]]. Also how do you become able to connect and disconnect implementations? Is it only available to extended confirmed users? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 10:06, 12 March 2026 (UTC) ::I don’t believe this implementation should be connected at this time. The existing Python implementation respects the community consensus represented by the test cases connected to {{Z|Z24144}}. What do you think, @[[User:99of9|99of9]]? [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:28, 12 March 2026 (UTC) :::Fair, I didn't realise the test cases served as implicit consensus. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 11:42, 12 March 2026 (UTC) ::::No worries. It’s not clearly articulated, but we’ll clarify that later. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:51, 12 March 2026 (UTC) :::I'm not sure. At the moment it correctly reproduces all those we got "consensus" for. So in some sense this implementation is just suggesting/assuming extra fallbacks for those we haven't properly considered? One option would be to connect it and then add counter test cases if we ever felt we didn't like it's current suggestions. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 00:30, 13 March 2026 (UTC) ::::We should be careful… It’s not easy to tell how many test case results would be affected. It’s easy enough to disconnect again, of course, so I’m happy to give it a go while activity in this domain is at a low ebb. {{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:04, 13 March 2026 (UTC) ::To connect implementations, you need Functioneer rights, which can be requested here [[Wikifunctions:Requests for user groups]]. There is a 48-hour waiting period. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:32, 12 March 2026 (UTC) :Can someone connect up [[Z32027]] with its implementation and test? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:29, 13 March 2026 (UTC) ::And also [[Z32031]]. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 10:16, 13 March 2026 (UTC) :::{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:51, 13 March 2026 (UTC) ::{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:50, 13 March 2026 (UTC) {{tracked|T419920|resolved}} :What is wrong with my implementation at [[Z32055]]? Looking at the failed test, it returns an error because 'dict' has no attribute 'split', but I didn't use split anywhere in my code. What is the issue? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 01:38, 14 March 2026 (UTC) ::I think that error message is coming from the [[Z20424|type converter]]. I think <code>Z20424K1['Z20420K2']['Z20342K1']</code> would be a dictionary representing a {{Z|16098}} but the code is written as though it were a string? Neither Python nor type converters are in my wheelhouse. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:49, 14 March 2026 (UTC) :::I think this is [[:phab:T419920]] and presumed to be a consequence of this week’s rollout of “v2”. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:08, 14 March 2026 (UTC) ::The type converter issue has gone away, but your Implementation doesn't quite match the tests (and composition), so I've disconnected it again. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:54, 20 March 2026 (UTC) :What is wrong with my implementation at {{Z|Z32851}}? Btw, it would be really useful if errors said which dependency produced the error, instead of just saying "Error in evaluation". [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 07:18, 28 March 2026 (UTC) ==== Connection / Disconnection requests ==== Can someone connect {{Z|32068}} and {{Z|15974}} to their tests and implementations. Thanks in advance. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 23:24, 14 March 2026 (UTC) :In the first function, there’s some issue with Maybe but I don’t think that’s the implementation. But I do think the error-handling for Maybe needs fixing. I’ll check back tomorrow and dig deeper if need be. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 23:48, 14 March 2026 (UTC) ::I fixed the error raising and checking, but the test is still failing for some reason? [[phab:T419920]] again? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 23:54, 14 March 2026 (UTC) :::It certainly looks like a conversion failure going into {{Z|Z22123}}. I made a [[Z32083|new implementation]] of {{Z|Z22120}} which is now “preferred”. If everything behaves itself, [[Z22123]] can be reconnected. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 17:24, 15 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:56, 20 March 2026 (UTC) Can someone connect {{Z|32208}}, {{Z|32199}}, and {{Z|32204}}'s testcases and implementations? thanks in advance! --[[User:VivianIsBee|VivianIsBee]] ([[User talk:VivianIsBee|talk]]) 14:33, 20 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:48, 20 March 2026 (UTC) Can someone connect {{Z|32355}}'s testcases and implementations? Thanks in advance! [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 08:15, 22 March 2026 (UTC) :I haven't connected the implementation yet, because it doesn't seem to pass any of the test cases. If the implementation has any issues, then fix them first. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:24, 22 March 2026 (UTC) ::Thanks. I fixed. One testcase has passed now. But another testcase still says "The lexeme doesn't have forms" although I added a lexical form about 20 hour ago. I suppose cashed data may not have been refreshed yet. So can you please connect implementation so that I can check precisely? [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 05:47, 23 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:32, 23 March 2026 (UTC) Can someone connect {{Z|32442}}'s testcases and implementations? Thanks in advance! [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 22:38, 23 March 2026 (UTC) :Did you mean to include spaces between "words" with your Implementation, or was that a copy-paste error? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 05:24, 24 March 2026 (UTC) ::Thanks. That's a copy-paste error. I deleted one space.[[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 06:55, 24 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 09:48, 24 March 2026 (UTC) Request to connect {{Z|32212}}, {{Z|32213}}, {{Z|32214}}, {{Z|32216}}, and {{Z|32240}}, all related to defining role sentence in Chinese for all variants. [[User:1F616EMO|1F616EMO]] ([[User talk:1F616EMO|talk]]) 03:21, 24 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 05:28, 24 March 2026 (UTC) Can someone disconnect {{Z|10816}}'s Python implementation? Need to fix one of the test case errors. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 19:47, 26 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 19:59, 26 March 2026 (UTC) ::Fixed the Python implementation, if anyone could reconnect that again. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 20:11, 26 March 2026 (UTC) :::Noting that this was reconnected. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 14:40, 27 March 2026 (UTC) ==== [[WF:HL]] ==== I have recently drafted some revamps of [[Wikifunctions:Human languages]] ([[User:Xeroctic/Human languages]]) and [[Wikifunctions:Reserved ZIDs]] ([[User:Xeroctic/Reserved ZIDs]]) in my userspace, and I think they are ready to replace the originals. I have not included translation tags for HL (which would be entirely different) and they need major modification for RZIDs to add or re-add them, so I would like that to be done as well. — [[User:Xeroctic|Xeroctic]] ([[User talk:Xeroctic|talk]]) 16:39, 3 November 2025 (UTC) : {{s}} since Xeroctic's versions improve readability. — [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 11:17, 24 November 2025 (UTC) :: Restoring this unresolved thread which was archived in oldid 237379. — [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 14:36, 16 January 2026 (UTC) :[[WF:Human languages]]: Copying the categorisation from enWiktionary seems like a good idea. I don't understand why this page is separate from [[WF:Catalogue/Natural language operations]] though? (time/happenstance? [[WT:Human_languages#proposal|previous disc.]]) Redlinks to cataloguing subpages will remain red unless and until someone makes an NLG function in that language. :[[WF:Reserved ZIDs]]: Using the live labels is an obvious improvement. I appreciate it being kept up-to-date. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:55, 16 January 2026 (UTC) :{{support}} per Arlo Barnes and YoshiRulz [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 01:11, 11 March 2026 (UTC) :{{support}} Let’s do this already. --[[User:Mormegil|Mormegil]] ([[User talk:Mormegil|talk]]) 08:33, 27 March 2026 (UTC) ss3skip59vvia22t2kgvgu2vljhcqze 261416 261410 2026-03-28T08:14:32Z YoshiRulz 10156 /* Tasks listed by users */ Reply 261416 wikitext text/x-wiki <div style="border:1px solid grey; margin:1em 4em 2em; padding:1.5em 1em;"> <span style="font-size:2em;">Welcome to the '''community portal for Wikifunctions'''!</span> This is the central place to document Wikifunctions's to-do lists and ongoing project work. [To-do!] [[Special:MyLanguage/Wikifunctions:Catalogue|The catalogue of functions]] is a good place to start. For discussions, see [[Wikifunctions:Project chat]]. [[Category:Project]] </div> == Useful links == * [[Wikifunctions:List of policies and guidelines]] * [[Special:MyLanguage/Help:Contents|Help:Contents]] * [[Special:MyLanguage/Wikifunctions:Catalogue|Wikifunctions:Catalogue of functions]] ** [[Wikifunctions:Suggest a function]] * [[Wikifunctions:Type proposals]] * [[Special:MyLanguage/Wikifunctions:User scripts|Wikifunctions:User scripts]] * [[Wikifunctions:Requests for user groups]] * [[Wikifunctions:Requests for deletions]] == Noticeboards == * [[Wikifunctions:Project chat]] * [[Wikifunctions:Administrators' noticeboard]] * [[Wikifunctions:Report vandalism]] * [[Wikifunctions:Translators' noticeboard]] == Task centre == === Perennial tasks === <!--Feel free to add new tasks to this section. However, if they are one-off requests, please add them to Tasks listed by users--> * [[File:OOjs UI icon language-ltr.svg|class=skin-invert]] [[Special:MyLanguage/Help:Multilingual|Translation]]: **[[Special:Random|Add a translation to a random object]] **[[Special:MyLanguage/Category:Policy|Add a translation to a policy page]] **[[Special:ListMissingLabels|See any objects without a label in a given language]] **[[Special:PageTranslation]] **[[Special:LanguageStats|Language statistics]] *[[File:Octicons-tools.svg|15px|class=skin-invert]] [[:Category:Tracking categories|Tracking categories]] * [[File:Octicons-tools.svg|15px|class=skin-invert]] [[Wikifunctions:Request for cleanup|Requests for cleanup]] === Tasks listed by users === :''Example:'' :* Fix [[Special:Random|this implementation]] please. {{User|Example2}} ::{{Done}}. Thanks for pointing that out! {{User|Example}} <hr/> [signing to enable reply link:--[[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:27, 6 May 2024 (UTC) :Heya, I tried to make a {{Z|Z29010}} implementation in composition <small>({{Z|Z29012}})</small>, but it errors out: <code>Unable to convert to canonical form (path to the problem: "Z22K2.K1.K1.K2.Z5K2.Z528K1.Z99K1.Z7K1.Z8K4.[ 1 ].Z14K2.Z26107K2.Z21394K1.[ 1 ].Z10771K1.Z23753K2.Z18K1.{&quot;Z1K1&quot;:&quot;Z18&quot;,&quot;Z6K1&quot;:&quot;Z29010K5&quot;,&quot;Z18K1&quot;:&quot;&quot;}")</code> - why does this happen, and how would I fix it? I tried to use {{Z|Z28030}} as a guide, but for a first dive into composition I may have taken on something a bit large. [[User:Infernostars|infernostars]] <small>([[User talk:Infernostars|talk]]) ([[Special:Contributions/Infernostars|contribs]])</small> 02:49, 23 October 2025 (UTC) ::When you go to {{Z|Z29012}} you'll see two red words "Function" and "Wikidata item". Both of those were not set in the composition, so it is missing information. There may be more deeper problems, but fix this first. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 03:33, 23 October 2025 (UTC) ::{{done}} Works now, seemed to be just a couple typos. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:14, 24 December 2025 (UTC) :Please connect the tests and implementation for {{Z|29750}}. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:33, 25 November 2025 (UTC) ::This ^ was done, so thanks for that, and I've now built a new function around it that's ready to be connected: {{Z|29749}}<!-- --><br>Having fallbacks to other languages and indicating such does of course raise the question of ''when'' it should be indicated, and I certainly don't have the answer, so I might leave this message here for the multilingual among you to see it and chime in. Either on [[Talk:Z24144]], or by way of adding a test case on one of these functions. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:42, 25 November 2025 (UTC) :::If it’s about the way labels in fallback languages are displayed, perhaps the [[Talk:Z21583|Discussion page]] for {{Z|Z21583}} would be a better location? There has been some discussion at [[Wikifunctions talk:Abstract Wikipedia/2025 fragment experiments#Proposed recommendation: Fragments should return Z11/monolingual strings]]. (The spinoff, [[Wikifunctions talk:Abstract Wikipedia/2025 fragment experiments#Fallbacks]], might also be relevant.) [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 15:23, 25 November 2025 (UTC) :Now that raising and catching errors has better support, [[Z28159]] should take an {{Z|50}} instead of a ZID {{Z|6}}. Unfortunately it's already been used in other functions so it might be a pain to change. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 07:20, 21 December 2025 (UTC) ::Yes. I think this gets fixed along with {{Z|Z28162}}, which is listed in [[Wikifunctions:Request for cleanup#Function:(!) throw error (Z28154)]]. ::@[[User:Dv103|Dv103]] I was thinking we might just wrap {{Z|851}}? Custom errors will support only strings for the foreseeable future, as I understand it [can’t currently locate the relevant comment on Phabricator]. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 13:12, 21 December 2025 (UTC) :The simple implementation for {{Z|30737}} is failing with [[Z516]], even though I can get a (correct) result by [https://www.wikifunctions.org/view/en/Z12681?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z12681%22%2C%22Z12681K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22475%22%2C%22Z22475K1%22%3A%7B%22Z1K1%22%3A%22Z39%22%2C%22Z39K1%22%3A%22K1%22%7D%2C%22Z22475K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30260%22%2C%22Z30260K1%22%3A%5B%22Z6095%22%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L100%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L101%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L102%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L103%22%7D%5D%2C%22Z30260K2%22%3A%5B%22Z6030%22%2C%22Z6031%22%5D%2C%22Z30260K3%22%3A%5B%22Z60%22%5D%2C%22Z30260K4%22%3A%5B%22Z6092%22%5D%7D%7D%7D calling those functions on the test input]. Oddly enough [https://www.wikifunctions.org/view/en/Z12681?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z12681%22%2C%22Z12681K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22475%22%2C%22Z22475K1%22%3A%7B%22Z1K1%22%3A%22Z39%22%2C%22Z39K1%22%3A%22K1%22%7D%2C%22Z22475K2%22%3A%7B%22Z1K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z883%22%2C%22Z883K1%22%3A%22Z1%22%2C%22Z883K2%22%3A%22Z1%22%7D%2C%22K1%22%3A%5B%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z882%22%2C%22Z882K1%22%3A%22Z1%22%2C%22Z882K2%22%3A%22Z1%22%7D%2C%7B%22Z1K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z882%22%2C%22Z882K1%22%3A%22Z1%22%2C%22Z882K2%22%3A%22Z1%22%7D%2C%22K1%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%226%22%7D%2C%22K2%22%3A%22Abacus%22%7D%5D%7D%7D%7D a trivial input] causes that to fail with the same error. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:43, 26 December 2025 (UTC) ::Sorry, I missed this one. Initial validation rejects a map with {{Z|Z1}} as its key type. Although it’s not guaranteed to be hashable, [[Z1]] should probably be admitted as a placeholder {{Z|Z4}}. In any event, using {{Z|Z6}} as the alternative seems to work and does not restrict the map to having only Strings for keys (as seen in {{Z|Z30906}}, where the keys have {{Z|Z39}} for their Type). [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 09:18, 31 December 2025 (UTC) :::[[Z30907|Documented]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:50, 31 December 2025 (UTC) :The implementation for {{Z|29183}} is slightly incorrect, it needs to subtract 9 on the condition that variable <code>add</code> is &gt;9 (tests &gt;10 currently). For me to change {{Z|29185}}, the implementation needs to be disconnected from {{Z|29183}} by a functioneer ([[Special:ListUsers/functioneer]]) first. The english wiki also warns about using negative values as input for the modulo operation, so, in addition, the result computation should be rephrased to be <syntaxhighlight lang="python"> def intdivceil(x, d): return x//d + (0 if x % d == 0 else 1) return 10 * intdivceil(sum, 10) - sum </syntaxhighlight> :I'd also like to have all test cases of {{Z|29183}} connected by a functioneer, after changes to {{Z|29185}} have been commited. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 21:54, 2 January 2026 (UTC) ::Disconnected. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 22:12, 2 January 2026 (UTC) :::Thanks, changes done - please reconnect. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 22:33, 2 January 2026 (UTC) ::::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 23:08, 2 January 2026 (UTC) :::Weird: {{Z|30940}} and {{Z|30941}} tests do not pass after the reconnect, although [https://www.wikifunctions.org/wiki/Special:RunFunction?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z29183%22%2C%22Z29183K1%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%2290544230009%22%7D%7D running them manually] produces the expected result. Judging from the timestamps within the detail view, pressing the Refresh-Button does not actually re-run the tests. :::It seems that their results have been generated with the previous function. Can you make an effort to dis- and reconnect these two tests? The (unconfirmed) presumption is that tests only run on demand (event-triggered vs time scheduled). If this is true it may be noteworthy in the [[WF:FAQ]]. :::The first test, {{Z|29184}}, did not exhibit the same problem, it has been updated as expected. Because the execution timestamps of all three tests do not vary greatly, they were probably triggered, correctly so, by the same event. In theory they should then have consequently worked on the same function - since the test results suggest different, there could have either been a race condition or a stale cache, eventually with some tests running before the action that triggered them was fully committed. If this is not a timing issue, the response to the connection event might miss to update some of the data structures associated with the connected tests and simply run them unchanged, but this is speculative. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 01:38, 3 January 2026 (UTC) ::::Yeah the cached failures are super annoying, I think they reduced the cache duration recently but it's still too high IMO. Disconnecting and reconnecting the Implementation triggered them to run again. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:16, 3 January 2026 (UTC) :Can somebody connect the tests and implementation of this function? [[Z31047|arithmetical average of numbers (Z31047)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 04:35, 13 January 2026 (UTC) ::The implementation seems to fail all the tests. I suspect from the use of <code>{}</code> in Python code. Besides, on the implementation ({{Z|Z31048}}), it used <code>sum</code> as variable, which I don't think allowable in Python. Try to use another variable name. Last, what is the expected result of {{Z|Z31050}}? [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 04:50, 13 January 2026 (UTC) :::Sorry, @[[User:Sys64ish|Sys64ish]], I just got the expected result from {{Z|31050}}. I have connected the test cases, but not yet for the implementation as you may want to fix it first(?) [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 05:05, 13 January 2026 (UTC) ::::Fixed it, passes tests [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 05:09, 13 January 2026 (UTC) :::::{{Done}} connected! [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 05:11, 13 January 2026 (UTC) :When I go to add a test to this function, for some reason I cannot select a fixed value for the expected value, the type is fixed to a function call. Can somebody fix this? [[Z31051|graph a one parameter function (Z31051)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 06:16, 13 January 2026 (UTC) ::You need to select an equality function, which in this case would be {{Z|889}} with {{Z|20924}} as an argument. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 09:59, 13 January 2026 (UTC) :::Just what I was about to say, only shorter! :::I had a look at the Python implementation and that doesn’t appear to be viable, because a {{Z|Z8}} object is data, not a callable Python function. I think a composition is the only option here, but we don’t appear to have a [[Special:Search/:"z8k2 z1k1 z7 z7k1 z881 z881k1 Z20838"|generator function for ]]{{Z|Z20838}} yet ([[Special:Search/:"z8k2 z1k1 z7 z7k1 z881 z881k1 z19677"|nor for rationals]]). [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:39, 13 January 2026 (UTC) :Can somebody connect the tests and implementations of this function? [[Z31079|decimal number range (Z31079)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 13:57, 14 January 2026 (UTC) ::I’ve connected the test but there are a few issues with the implementation. The function has no return and the list to return shouldn’t be called range, as that overwrites the built-in range() function. Wikifunctions.Error requires a list of strings and you should probably guard against K3 being zero. Just let us know if you need any help with this. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 14:22, 14 January 2026 (UTC) :::I think I fixed the implementation [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 14:28, 14 January 2026 (UTC) ::::Looks close. You probably want to *return* Wikifunctions.Error in order to halt execution. The K1 and K2 arguments are float64s rather than strings, so they need coercing to str for the error. You still risk a divide by zero if K3 has no guard. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 14:48, 14 January 2026 (UTC) :::::I fixed it now, tests are passing(?) and when I run it locally it works as intended. [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 02:22, 15 January 2026 (UTC) ::::::{{done}} ::::::I created {{Z|31093}} to fix the last test, since your Python implementation was returning slightly inaccurate values for [[w:en:Floating-point_arithmetic#Accuracy_problems|reasons]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:11, 15 January 2026 (UTC) :Can somebody connect the impl. and test cases of these functions? [[Z31051|generate real (float64) list from a function (Z31051)]] [[Z31111|increment (float64) (Z31111)]] [[Z31116|decrement (float64) (Z31116)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 00:11, 16 January 2026 (UTC) ::Mostly. I see {{Z|Z31051}} has its Minimum and Maximum defined as integers rather than float64, as defined for the generator. Something has to change here, and I’m guessing it’s [[Z31051]], so I disconnected its implementation again. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 01:31, 16 January 2026 (UTC) :::all inputs except the input for the function are now float64 [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 13:36, 16 January 2026 (UTC) ::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 15:07, 16 January 2026 (UTC) : Can someone here connect the implementation and test cases of this function: [[Z18679|Malay cardinal to ordinal]]? {{User|Hakimi97}} :: {{Done}} [[User:Sys64ish|Sys32ish]] ([[User talk:Sys32ish|talk]]) 09:16, 19 January 2026 (UTC) :Can someone please add the following IPA symbols needed for {{Z|Z1099}} to <code>lookup</code> in the JavaScript implementation {{Z|Z29880}}? : "ɐ": "Q503323", : "u": "Q29653", : "ɕ": "Q605116", : "x": "Q271603", : "ʑ": "Q684085", : "ɣ": "Q654670", : "ʀ": "Q864677", : "χ": "Q849796", : "ʁ": "Q1054276", : "o": "Q862579", : "æ": "Q740768", : "ɪ": "Q1070049", : "ʊ": "Q1137807", :Thank you! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 20:23, 27 February 2026 (UTC) ::I forgot to mention the ligatures ::"ʤ": "Q778145", ::"ʧ": "Q518603", ::which could be put next to the already present ::"dʒ": "Q778145", ::"tʃ": "Q518603", ::--[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 20:24, 27 February 2026 (UTC) ::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 00:33, 28 February 2026 (UTC) :::Thank you! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 08:59, 28 February 2026 (UTC) : Can someone connect up [[Z31844]] and [[Z31837]]. These are better than the other implementations on their pages. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 09:04, 1 March 2026 (UTC) ::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:12, 1 March 2026 (UTC) :Hello, please connect {{Z|Z31729}}'s implementation and test cases. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 10:48, 8 March 2026 (UTC) ::The implementation does not seem to pass any of the test case. If you click on the [[File:Icon Information.svg|Icon_Information|15px|class=skin-invert-image]] (i) icon on the test status, you can find the error, what the implementation output, etc. Try to fix the implementation first. Thanks! [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 11:22, 8 March 2026 (UTC) ::It seems you're returning a string value when it expects a HTML fragment. HTML fragment and string are different. Maybe you can change the output type to string? [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 11:44, 10 March 2026 (UTC) :::Thanks for running the tests, @[[User:NikolasKHF|NikolasKHF]]; I couldn’t run them on my own (seemingly because I don’t have the needed right). I will fix the errors. :::Thanks for looking into this, @[[User:Sys64ish|Sys64ish]]. I actually did want to return an HTML fragment instead of a string because I think that would be more useful on the wikis. However, it looks like I forgot to convert the string for most cases where an output is returned (hence why only one test failure actually complains about the output value being incorrect). [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 19:52, 10 March 2026 (UTC) :Can someone connect [[Z31994]] and [[Z31999]] with its tests and implementations. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:41, 11 March 2026 (UTC) ::{{done}} [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 08:49, 11 March 2026 (UTC) :::Oh yeah I also made another function now, [[Z32004]]. Can someone connect its implementations and tests. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 09:02, 11 March 2026 (UTC) ::::{{done}} [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 09:23, 11 March 2026 (UTC) :Can someone connect up [[Z32013]]. Also how do you become able to connect and disconnect implementations? Is it only available to extended confirmed users? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 10:06, 12 March 2026 (UTC) ::I don’t believe this implementation should be connected at this time. The existing Python implementation respects the community consensus represented by the test cases connected to {{Z|Z24144}}. What do you think, @[[User:99of9|99of9]]? [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:28, 12 March 2026 (UTC) :::Fair, I didn't realise the test cases served as implicit consensus. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 11:42, 12 March 2026 (UTC) ::::No worries. It’s not clearly articulated, but we’ll clarify that later. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:51, 12 March 2026 (UTC) :::I'm not sure. At the moment it correctly reproduces all those we got "consensus" for. So in some sense this implementation is just suggesting/assuming extra fallbacks for those we haven't properly considered? One option would be to connect it and then add counter test cases if we ever felt we didn't like it's current suggestions. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 00:30, 13 March 2026 (UTC) ::::We should be careful… It’s not easy to tell how many test case results would be affected. It’s easy enough to disconnect again, of course, so I’m happy to give it a go while activity in this domain is at a low ebb. {{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:04, 13 March 2026 (UTC) ::To connect implementations, you need Functioneer rights, which can be requested here [[Wikifunctions:Requests for user groups]]. There is a 48-hour waiting period. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:32, 12 March 2026 (UTC) :Can someone connect up [[Z32027]] with its implementation and test? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:29, 13 March 2026 (UTC) ::And also [[Z32031]]. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 10:16, 13 March 2026 (UTC) :::{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:51, 13 March 2026 (UTC) ::{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:50, 13 March 2026 (UTC) {{tracked|T419920|resolved}} :What is wrong with my implementation at [[Z32055]]? Looking at the failed test, it returns an error because 'dict' has no attribute 'split', but I didn't use split anywhere in my code. What is the issue? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 01:38, 14 March 2026 (UTC) ::I think that error message is coming from the [[Z20424|type converter]]. I think <code>Z20424K1['Z20420K2']['Z20342K1']</code> would be a dictionary representing a {{Z|16098}} but the code is written as though it were a string? Neither Python nor type converters are in my wheelhouse. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:49, 14 March 2026 (UTC) :::I think this is [[:phab:T419920]] and presumed to be a consequence of this week’s rollout of “v2”. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:08, 14 March 2026 (UTC) ::The type converter issue has gone away, but your Implementation doesn't quite match the tests (and composition), so I've disconnected it again. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:54, 20 March 2026 (UTC) :What is wrong with my implementation at {{Z|Z32851}}? Btw, it would be really useful if errors said which dependency produced the error, instead of just saying "Error in evaluation". [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 07:18, 28 March 2026 (UTC) ::You were catching the wrong {{Z|50}}, but then the error should have bubbled up so you could see it. I think there's something broken in the site w/ {{Z|11}} right now since [[Z32804|I ran into a similar problem yesterday]]. (And to contradict my note there, while debugging your implementation I saw the same behaviour regardless of if I used [[Z26107]] or a literal Z11, so it must be a bug in WikiLambda.) [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 08:14, 28 March 2026 (UTC) ==== Connection / Disconnection requests ==== Can someone connect {{Z|32068}} and {{Z|15974}} to their tests and implementations. Thanks in advance. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 23:24, 14 March 2026 (UTC) :In the first function, there’s some issue with Maybe but I don’t think that’s the implementation. But I do think the error-handling for Maybe needs fixing. I’ll check back tomorrow and dig deeper if need be. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 23:48, 14 March 2026 (UTC) ::I fixed the error raising and checking, but the test is still failing for some reason? [[phab:T419920]] again? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 23:54, 14 March 2026 (UTC) :::It certainly looks like a conversion failure going into {{Z|Z22123}}. I made a [[Z32083|new implementation]] of {{Z|Z22120}} which is now “preferred”. If everything behaves itself, [[Z22123]] can be reconnected. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 17:24, 15 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:56, 20 March 2026 (UTC) Can someone connect {{Z|32208}}, {{Z|32199}}, and {{Z|32204}}'s testcases and implementations? thanks in advance! --[[User:VivianIsBee|VivianIsBee]] ([[User talk:VivianIsBee|talk]]) 14:33, 20 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:48, 20 March 2026 (UTC) Can someone connect {{Z|32355}}'s testcases and implementations? Thanks in advance! [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 08:15, 22 March 2026 (UTC) :I haven't connected the implementation yet, because it doesn't seem to pass any of the test cases. If the implementation has any issues, then fix them first. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:24, 22 March 2026 (UTC) ::Thanks. I fixed. One testcase has passed now. But another testcase still says "The lexeme doesn't have forms" although I added a lexical form about 20 hour ago. I suppose cashed data may not have been refreshed yet. So can you please connect implementation so that I can check precisely? [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 05:47, 23 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:32, 23 March 2026 (UTC) Can someone connect {{Z|32442}}'s testcases and implementations? Thanks in advance! [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 22:38, 23 March 2026 (UTC) :Did you mean to include spaces between "words" with your Implementation, or was that a copy-paste error? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 05:24, 24 March 2026 (UTC) ::Thanks. That's a copy-paste error. I deleted one space.[[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 06:55, 24 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 09:48, 24 March 2026 (UTC) Request to connect {{Z|32212}}, {{Z|32213}}, {{Z|32214}}, {{Z|32216}}, and {{Z|32240}}, all related to defining role sentence in Chinese for all variants. [[User:1F616EMO|1F616EMO]] ([[User talk:1F616EMO|talk]]) 03:21, 24 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 05:28, 24 March 2026 (UTC) Can someone disconnect {{Z|10816}}'s Python implementation? Need to fix one of the test case errors. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 19:47, 26 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 19:59, 26 March 2026 (UTC) ::Fixed the Python implementation, if anyone could reconnect that again. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 20:11, 26 March 2026 (UTC) :::Noting that this was reconnected. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 14:40, 27 March 2026 (UTC) ==== [[WF:HL]] ==== I have recently drafted some revamps of [[Wikifunctions:Human languages]] ([[User:Xeroctic/Human languages]]) and [[Wikifunctions:Reserved ZIDs]] ([[User:Xeroctic/Reserved ZIDs]]) in my userspace, and I think they are ready to replace the originals. I have not included translation tags for HL (which would be entirely different) and they need major modification for RZIDs to add or re-add them, so I would like that to be done as well. — [[User:Xeroctic|Xeroctic]] ([[User talk:Xeroctic|talk]]) 16:39, 3 November 2025 (UTC) : {{s}} since Xeroctic's versions improve readability. — [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 11:17, 24 November 2025 (UTC) :: Restoring this unresolved thread which was archived in oldid 237379. — [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 14:36, 16 January 2026 (UTC) :[[WF:Human languages]]: Copying the categorisation from enWiktionary seems like a good idea. I don't understand why this page is separate from [[WF:Catalogue/Natural language operations]] though? (time/happenstance? [[WT:Human_languages#proposal|previous disc.]]) Redlinks to cataloguing subpages will remain red unless and until someone makes an NLG function in that language. :[[WF:Reserved ZIDs]]: Using the live labels is an obvious improvement. I appreciate it being kept up-to-date. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:55, 16 January 2026 (UTC) :{{support}} per Arlo Barnes and YoshiRulz [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 01:11, 11 March 2026 (UTC) :{{support}} Let’s do this already. --[[User:Mormegil|Mormegil]] ([[User talk:Mormegil|talk]]) 08:33, 27 March 2026 (UTC) hl3muqlso9wtiirm1c4cahbs9htj10a 261444 261416 2026-03-28T10:23:39Z Redmin 52094 /* Tasks listed by users */ Reply 261444 wikitext text/x-wiki <div style="border:1px solid grey; margin:1em 4em 2em; padding:1.5em 1em;"> <span style="font-size:2em;">Welcome to the '''community portal for Wikifunctions'''!</span> This is the central place to document Wikifunctions's to-do lists and ongoing project work. [To-do!] [[Special:MyLanguage/Wikifunctions:Catalogue|The catalogue of functions]] is a good place to start. For discussions, see [[Wikifunctions:Project chat]]. [[Category:Project]] </div> == Useful links == * [[Wikifunctions:List of policies and guidelines]] * [[Special:MyLanguage/Help:Contents|Help:Contents]] * [[Special:MyLanguage/Wikifunctions:Catalogue|Wikifunctions:Catalogue of functions]] ** [[Wikifunctions:Suggest a function]] * [[Wikifunctions:Type proposals]] * [[Special:MyLanguage/Wikifunctions:User scripts|Wikifunctions:User scripts]] * [[Wikifunctions:Requests for user groups]] * [[Wikifunctions:Requests for deletions]] == Noticeboards == * [[Wikifunctions:Project chat]] * [[Wikifunctions:Administrators' noticeboard]] * [[Wikifunctions:Report vandalism]] * [[Wikifunctions:Translators' noticeboard]] == Task centre == === Perennial tasks === <!--Feel free to add new tasks to this section. However, if they are one-off requests, please add them to Tasks listed by users--> * [[File:OOjs UI icon language-ltr.svg|class=skin-invert]] [[Special:MyLanguage/Help:Multilingual|Translation]]: **[[Special:Random|Add a translation to a random object]] **[[Special:MyLanguage/Category:Policy|Add a translation to a policy page]] **[[Special:ListMissingLabels|See any objects without a label in a given language]] **[[Special:PageTranslation]] **[[Special:LanguageStats|Language statistics]] *[[File:Octicons-tools.svg|15px|class=skin-invert]] [[:Category:Tracking categories|Tracking categories]] * [[File:Octicons-tools.svg|15px|class=skin-invert]] [[Wikifunctions:Request for cleanup|Requests for cleanup]] === Tasks listed by users === :''Example:'' :* Fix [[Special:Random|this implementation]] please. {{User|Example2}} ::{{Done}}. Thanks for pointing that out! {{User|Example}} <hr/> [signing to enable reply link:--[[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:27, 6 May 2024 (UTC) :Heya, I tried to make a {{Z|Z29010}} implementation in composition <small>({{Z|Z29012}})</small>, but it errors out: <code>Unable to convert to canonical form (path to the problem: "Z22K2.K1.K1.K2.Z5K2.Z528K1.Z99K1.Z7K1.Z8K4.[ 1 ].Z14K2.Z26107K2.Z21394K1.[ 1 ].Z10771K1.Z23753K2.Z18K1.{&quot;Z1K1&quot;:&quot;Z18&quot;,&quot;Z6K1&quot;:&quot;Z29010K5&quot;,&quot;Z18K1&quot;:&quot;&quot;}")</code> - why does this happen, and how would I fix it? I tried to use {{Z|Z28030}} as a guide, but for a first dive into composition I may have taken on something a bit large. [[User:Infernostars|infernostars]] <small>([[User talk:Infernostars|talk]]) ([[Special:Contributions/Infernostars|contribs]])</small> 02:49, 23 October 2025 (UTC) ::When you go to {{Z|Z29012}} you'll see two red words "Function" and "Wikidata item". Both of those were not set in the composition, so it is missing information. There may be more deeper problems, but fix this first. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 03:33, 23 October 2025 (UTC) ::{{done}} Works now, seemed to be just a couple typos. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:14, 24 December 2025 (UTC) :Please connect the tests and implementation for {{Z|29750}}. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:33, 25 November 2025 (UTC) ::This ^ was done, so thanks for that, and I've now built a new function around it that's ready to be connected: {{Z|29749}}<!-- --><br>Having fallbacks to other languages and indicating such does of course raise the question of ''when'' it should be indicated, and I certainly don't have the answer, so I might leave this message here for the multilingual among you to see it and chime in. Either on [[Talk:Z24144]], or by way of adding a test case on one of these functions. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:42, 25 November 2025 (UTC) :::If it’s about the way labels in fallback languages are displayed, perhaps the [[Talk:Z21583|Discussion page]] for {{Z|Z21583}} would be a better location? There has been some discussion at [[Wikifunctions talk:Abstract Wikipedia/2025 fragment experiments#Proposed recommendation: Fragments should return Z11/monolingual strings]]. (The spinoff, [[Wikifunctions talk:Abstract Wikipedia/2025 fragment experiments#Fallbacks]], might also be relevant.) [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 15:23, 25 November 2025 (UTC) :Now that raising and catching errors has better support, [[Z28159]] should take an {{Z|50}} instead of a ZID {{Z|6}}. Unfortunately it's already been used in other functions so it might be a pain to change. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 07:20, 21 December 2025 (UTC) ::Yes. I think this gets fixed along with {{Z|Z28162}}, which is listed in [[Wikifunctions:Request for cleanup#Function:(!) throw error (Z28154)]]. ::@[[User:Dv103|Dv103]] I was thinking we might just wrap {{Z|851}}? Custom errors will support only strings for the foreseeable future, as I understand it [can’t currently locate the relevant comment on Phabricator]. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 13:12, 21 December 2025 (UTC) :The simple implementation for {{Z|30737}} is failing with [[Z516]], even though I can get a (correct) result by [https://www.wikifunctions.org/view/en/Z12681?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z12681%22%2C%22Z12681K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22475%22%2C%22Z22475K1%22%3A%7B%22Z1K1%22%3A%22Z39%22%2C%22Z39K1%22%3A%22K1%22%7D%2C%22Z22475K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30260%22%2C%22Z30260K1%22%3A%5B%22Z6095%22%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L100%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L101%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L102%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L103%22%7D%5D%2C%22Z30260K2%22%3A%5B%22Z6030%22%2C%22Z6031%22%5D%2C%22Z30260K3%22%3A%5B%22Z60%22%5D%2C%22Z30260K4%22%3A%5B%22Z6092%22%5D%7D%7D%7D calling those functions on the test input]. Oddly enough [https://www.wikifunctions.org/view/en/Z12681?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z12681%22%2C%22Z12681K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22475%22%2C%22Z22475K1%22%3A%7B%22Z1K1%22%3A%22Z39%22%2C%22Z39K1%22%3A%22K1%22%7D%2C%22Z22475K2%22%3A%7B%22Z1K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z883%22%2C%22Z883K1%22%3A%22Z1%22%2C%22Z883K2%22%3A%22Z1%22%7D%2C%22K1%22%3A%5B%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z882%22%2C%22Z882K1%22%3A%22Z1%22%2C%22Z882K2%22%3A%22Z1%22%7D%2C%7B%22Z1K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z882%22%2C%22Z882K1%22%3A%22Z1%22%2C%22Z882K2%22%3A%22Z1%22%7D%2C%22K1%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%226%22%7D%2C%22K2%22%3A%22Abacus%22%7D%5D%7D%7D%7D a trivial input] causes that to fail with the same error. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:43, 26 December 2025 (UTC) ::Sorry, I missed this one. Initial validation rejects a map with {{Z|Z1}} as its key type. Although it’s not guaranteed to be hashable, [[Z1]] should probably be admitted as a placeholder {{Z|Z4}}. In any event, using {{Z|Z6}} as the alternative seems to work and does not restrict the map to having only Strings for keys (as seen in {{Z|Z30906}}, where the keys have {{Z|Z39}} for their Type). [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 09:18, 31 December 2025 (UTC) :::[[Z30907|Documented]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:50, 31 December 2025 (UTC) :The implementation for {{Z|29183}} is slightly incorrect, it needs to subtract 9 on the condition that variable <code>add</code> is &gt;9 (tests &gt;10 currently). For me to change {{Z|29185}}, the implementation needs to be disconnected from {{Z|29183}} by a functioneer ([[Special:ListUsers/functioneer]]) first. The english wiki also warns about using negative values as input for the modulo operation, so, in addition, the result computation should be rephrased to be <syntaxhighlight lang="python"> def intdivceil(x, d): return x//d + (0 if x % d == 0 else 1) return 10 * intdivceil(sum, 10) - sum </syntaxhighlight> :I'd also like to have all test cases of {{Z|29183}} connected by a functioneer, after changes to {{Z|29185}} have been commited. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 21:54, 2 January 2026 (UTC) ::Disconnected. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 22:12, 2 January 2026 (UTC) :::Thanks, changes done - please reconnect. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 22:33, 2 January 2026 (UTC) ::::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 23:08, 2 January 2026 (UTC) :::Weird: {{Z|30940}} and {{Z|30941}} tests do not pass after the reconnect, although [https://www.wikifunctions.org/wiki/Special:RunFunction?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z29183%22%2C%22Z29183K1%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%2290544230009%22%7D%7D running them manually] produces the expected result. Judging from the timestamps within the detail view, pressing the Refresh-Button does not actually re-run the tests. :::It seems that their results have been generated with the previous function. Can you make an effort to dis- and reconnect these two tests? The (unconfirmed) presumption is that tests only run on demand (event-triggered vs time scheduled). If this is true it may be noteworthy in the [[WF:FAQ]]. :::The first test, {{Z|29184}}, did not exhibit the same problem, it has been updated as expected. Because the execution timestamps of all three tests do not vary greatly, they were probably triggered, correctly so, by the same event. In theory they should then have consequently worked on the same function - since the test results suggest different, there could have either been a race condition or a stale cache, eventually with some tests running before the action that triggered them was fully committed. If this is not a timing issue, the response to the connection event might miss to update some of the data structures associated with the connected tests and simply run them unchanged, but this is speculative. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 01:38, 3 January 2026 (UTC) ::::Yeah the cached failures are super annoying, I think they reduced the cache duration recently but it's still too high IMO. Disconnecting and reconnecting the Implementation triggered them to run again. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:16, 3 January 2026 (UTC) :Can somebody connect the tests and implementation of this function? [[Z31047|arithmetical average of numbers (Z31047)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 04:35, 13 January 2026 (UTC) ::The implementation seems to fail all the tests. I suspect from the use of <code>{}</code> in Python code. Besides, on the implementation ({{Z|Z31048}}), it used <code>sum</code> as variable, which I don't think allowable in Python. Try to use another variable name. Last, what is the expected result of {{Z|Z31050}}? [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 04:50, 13 January 2026 (UTC) :::Sorry, @[[User:Sys64ish|Sys64ish]], I just got the expected result from {{Z|31050}}. I have connected the test cases, but not yet for the implementation as you may want to fix it first(?) [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 05:05, 13 January 2026 (UTC) ::::Fixed it, passes tests [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 05:09, 13 January 2026 (UTC) :::::{{Done}} connected! [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 05:11, 13 January 2026 (UTC) :When I go to add a test to this function, for some reason I cannot select a fixed value for the expected value, the type is fixed to a function call. Can somebody fix this? [[Z31051|graph a one parameter function (Z31051)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 06:16, 13 January 2026 (UTC) ::You need to select an equality function, which in this case would be {{Z|889}} with {{Z|20924}} as an argument. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 09:59, 13 January 2026 (UTC) :::Just what I was about to say, only shorter! :::I had a look at the Python implementation and that doesn’t appear to be viable, because a {{Z|Z8}} object is data, not a callable Python function. I think a composition is the only option here, but we don’t appear to have a [[Special:Search/:"z8k2 z1k1 z7 z7k1 z881 z881k1 Z20838"|generator function for ]]{{Z|Z20838}} yet ([[Special:Search/:"z8k2 z1k1 z7 z7k1 z881 z881k1 z19677"|nor for rationals]]). [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:39, 13 January 2026 (UTC) :Can somebody connect the tests and implementations of this function? [[Z31079|decimal number range (Z31079)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 13:57, 14 January 2026 (UTC) ::I’ve connected the test but there are a few issues with the implementation. The function has no return and the list to return shouldn’t be called range, as that overwrites the built-in range() function. Wikifunctions.Error requires a list of strings and you should probably guard against K3 being zero. Just let us know if you need any help with this. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 14:22, 14 January 2026 (UTC) :::I think I fixed the implementation [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 14:28, 14 January 2026 (UTC) ::::Looks close. You probably want to *return* Wikifunctions.Error in order to halt execution. The K1 and K2 arguments are float64s rather than strings, so they need coercing to str for the error. You still risk a divide by zero if K3 has no guard. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 14:48, 14 January 2026 (UTC) :::::I fixed it now, tests are passing(?) and when I run it locally it works as intended. [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 02:22, 15 January 2026 (UTC) ::::::{{done}} ::::::I created {{Z|31093}} to fix the last test, since your Python implementation was returning slightly inaccurate values for [[w:en:Floating-point_arithmetic#Accuracy_problems|reasons]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:11, 15 January 2026 (UTC) :Can somebody connect the impl. and test cases of these functions? [[Z31051|generate real (float64) list from a function (Z31051)]] [[Z31111|increment (float64) (Z31111)]] [[Z31116|decrement (float64) (Z31116)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 00:11, 16 January 2026 (UTC) ::Mostly. I see {{Z|Z31051}} has its Minimum and Maximum defined as integers rather than float64, as defined for the generator. Something has to change here, and I’m guessing it’s [[Z31051]], so I disconnected its implementation again. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 01:31, 16 January 2026 (UTC) :::all inputs except the input for the function are now float64 [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 13:36, 16 January 2026 (UTC) ::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 15:07, 16 January 2026 (UTC) : Can someone here connect the implementation and test cases of this function: [[Z18679|Malay cardinal to ordinal]]? {{User|Hakimi97}} :: {{Done}} [[User:Sys64ish|Sys32ish]] ([[User talk:Sys32ish|talk]]) 09:16, 19 January 2026 (UTC) :Can someone please add the following IPA symbols needed for {{Z|Z1099}} to <code>lookup</code> in the JavaScript implementation {{Z|Z29880}}? : "ɐ": "Q503323", : "u": "Q29653", : "ɕ": "Q605116", : "x": "Q271603", : "ʑ": "Q684085", : "ɣ": "Q654670", : "ʀ": "Q864677", : "χ": "Q849796", : "ʁ": "Q1054276", : "o": "Q862579", : "æ": "Q740768", : "ɪ": "Q1070049", : "ʊ": "Q1137807", :Thank you! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 20:23, 27 February 2026 (UTC) ::I forgot to mention the ligatures ::"ʤ": "Q778145", ::"ʧ": "Q518603", ::which could be put next to the already present ::"dʒ": "Q778145", ::"tʃ": "Q518603", ::--[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 20:24, 27 February 2026 (UTC) ::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 00:33, 28 February 2026 (UTC) :::Thank you! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 08:59, 28 February 2026 (UTC) : Can someone connect up [[Z31844]] and [[Z31837]]. These are better than the other implementations on their pages. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 09:04, 1 March 2026 (UTC) ::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:12, 1 March 2026 (UTC) :Hello, please connect {{Z|Z31729}}'s implementation and test cases. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 10:48, 8 March 2026 (UTC) ::The implementation does not seem to pass any of the test case. If you click on the [[File:Icon Information.svg|Icon_Information|15px|class=skin-invert-image]] (i) icon on the test status, you can find the error, what the implementation output, etc. Try to fix the implementation first. Thanks! [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 11:22, 8 March 2026 (UTC) ::It seems you're returning a string value when it expects a HTML fragment. HTML fragment and string are different. Maybe you can change the output type to string? [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 11:44, 10 March 2026 (UTC) :::Thanks for running the tests, @[[User:NikolasKHF|NikolasKHF]]; I couldn’t run them on my own (seemingly because I don’t have the needed right). I will fix the errors. :::Thanks for looking into this, @[[User:Sys64ish|Sys64ish]]. I actually did want to return an HTML fragment instead of a string because I think that would be more useful on the wikis. However, it looks like I forgot to convert the string for most cases where an output is returned (hence why only one test failure actually complains about the output value being incorrect). [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 19:52, 10 March 2026 (UTC) :::I have fixed the errors and added a new test case. Please connect the implementation and all the test cases now. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 10:23, 28 March 2026 (UTC) :Can someone connect [[Z31994]] and [[Z31999]] with its tests and implementations. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:41, 11 March 2026 (UTC) ::{{done}} [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 08:49, 11 March 2026 (UTC) :::Oh yeah I also made another function now, [[Z32004]]. Can someone connect its implementations and tests. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 09:02, 11 March 2026 (UTC) ::::{{done}} [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 09:23, 11 March 2026 (UTC) :Can someone connect up [[Z32013]]. Also how do you become able to connect and disconnect implementations? Is it only available to extended confirmed users? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 10:06, 12 March 2026 (UTC) ::I don’t believe this implementation should be connected at this time. The existing Python implementation respects the community consensus represented by the test cases connected to {{Z|Z24144}}. What do you think, @[[User:99of9|99of9]]? [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:28, 12 March 2026 (UTC) :::Fair, I didn't realise the test cases served as implicit consensus. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 11:42, 12 March 2026 (UTC) ::::No worries. It’s not clearly articulated, but we’ll clarify that later. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:51, 12 March 2026 (UTC) :::I'm not sure. At the moment it correctly reproduces all those we got "consensus" for. So in some sense this implementation is just suggesting/assuming extra fallbacks for those we haven't properly considered? One option would be to connect it and then add counter test cases if we ever felt we didn't like it's current suggestions. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 00:30, 13 March 2026 (UTC) ::::We should be careful… It’s not easy to tell how many test case results would be affected. It’s easy enough to disconnect again, of course, so I’m happy to give it a go while activity in this domain is at a low ebb. {{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:04, 13 March 2026 (UTC) ::To connect implementations, you need Functioneer rights, which can be requested here [[Wikifunctions:Requests for user groups]]. There is a 48-hour waiting period. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:32, 12 March 2026 (UTC) :Can someone connect up [[Z32027]] with its implementation and test? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:29, 13 March 2026 (UTC) ::And also [[Z32031]]. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 10:16, 13 March 2026 (UTC) :::{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:51, 13 March 2026 (UTC) ::{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:50, 13 March 2026 (UTC) {{tracked|T419920|resolved}} :What is wrong with my implementation at [[Z32055]]? Looking at the failed test, it returns an error because 'dict' has no attribute 'split', but I didn't use split anywhere in my code. What is the issue? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 01:38, 14 March 2026 (UTC) ::I think that error message is coming from the [[Z20424|type converter]]. I think <code>Z20424K1['Z20420K2']['Z20342K1']</code> would be a dictionary representing a {{Z|16098}} but the code is written as though it were a string? Neither Python nor type converters are in my wheelhouse. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:49, 14 March 2026 (UTC) :::I think this is [[:phab:T419920]] and presumed to be a consequence of this week’s rollout of “v2”. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:08, 14 March 2026 (UTC) ::The type converter issue has gone away, but your Implementation doesn't quite match the tests (and composition), so I've disconnected it again. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:54, 20 March 2026 (UTC) :What is wrong with my implementation at {{Z|Z32851}}? Btw, it would be really useful if errors said which dependency produced the error, instead of just saying "Error in evaluation". [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 07:18, 28 March 2026 (UTC) ::You were catching the wrong {{Z|50}}, but then the error should have bubbled up so you could see it. I think there's something broken in the site w/ {{Z|11}} right now since [[Z32804|I ran into a similar problem yesterday]]. (And to contradict my note there, while debugging your implementation I saw the same behaviour regardless of if I used [[Z26107]] or a literal Z11, so it must be a bug in WikiLambda.) [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 08:14, 28 March 2026 (UTC) ==== Connection / Disconnection requests ==== Can someone connect {{Z|32068}} and {{Z|15974}} to their tests and implementations. Thanks in advance. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 23:24, 14 March 2026 (UTC) :In the first function, there’s some issue with Maybe but I don’t think that’s the implementation. But I do think the error-handling for Maybe needs fixing. I’ll check back tomorrow and dig deeper if need be. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 23:48, 14 March 2026 (UTC) ::I fixed the error raising and checking, but the test is still failing for some reason? [[phab:T419920]] again? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 23:54, 14 March 2026 (UTC) :::It certainly looks like a conversion failure going into {{Z|Z22123}}. I made a [[Z32083|new implementation]] of {{Z|Z22120}} which is now “preferred”. If everything behaves itself, [[Z22123]] can be reconnected. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 17:24, 15 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:56, 20 March 2026 (UTC) Can someone connect {{Z|32208}}, {{Z|32199}}, and {{Z|32204}}'s testcases and implementations? thanks in advance! --[[User:VivianIsBee|VivianIsBee]] ([[User talk:VivianIsBee|talk]]) 14:33, 20 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:48, 20 March 2026 (UTC) Can someone connect {{Z|32355}}'s testcases and implementations? Thanks in advance! [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 08:15, 22 March 2026 (UTC) :I haven't connected the implementation yet, because it doesn't seem to pass any of the test cases. If the implementation has any issues, then fix them first. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:24, 22 March 2026 (UTC) ::Thanks. I fixed. One testcase has passed now. But another testcase still says "The lexeme doesn't have forms" although I added a lexical form about 20 hour ago. I suppose cashed data may not have been refreshed yet. So can you please connect implementation so that I can check precisely? [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 05:47, 23 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:32, 23 March 2026 (UTC) Can someone connect {{Z|32442}}'s testcases and implementations? Thanks in advance! [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 22:38, 23 March 2026 (UTC) :Did you mean to include spaces between "words" with your Implementation, or was that a copy-paste error? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 05:24, 24 March 2026 (UTC) ::Thanks. That's a copy-paste error. I deleted one space.[[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 06:55, 24 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 09:48, 24 March 2026 (UTC) Request to connect {{Z|32212}}, {{Z|32213}}, {{Z|32214}}, {{Z|32216}}, and {{Z|32240}}, all related to defining role sentence in Chinese for all variants. [[User:1F616EMO|1F616EMO]] ([[User talk:1F616EMO|talk]]) 03:21, 24 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 05:28, 24 March 2026 (UTC) Can someone disconnect {{Z|10816}}'s Python implementation? Need to fix one of the test case errors. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 19:47, 26 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 19:59, 26 March 2026 (UTC) ::Fixed the Python implementation, if anyone could reconnect that again. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 20:11, 26 March 2026 (UTC) :::Noting that this was reconnected. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 14:40, 27 March 2026 (UTC) ==== [[WF:HL]] ==== I have recently drafted some revamps of [[Wikifunctions:Human languages]] ([[User:Xeroctic/Human languages]]) and [[Wikifunctions:Reserved ZIDs]] ([[User:Xeroctic/Reserved ZIDs]]) in my userspace, and I think they are ready to replace the originals. I have not included translation tags for HL (which would be entirely different) and they need major modification for RZIDs to add or re-add them, so I would like that to be done as well. — [[User:Xeroctic|Xeroctic]] ([[User talk:Xeroctic|talk]]) 16:39, 3 November 2025 (UTC) : {{s}} since Xeroctic's versions improve readability. — [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 11:17, 24 November 2025 (UTC) :: Restoring this unresolved thread which was archived in oldid 237379. — [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 14:36, 16 January 2026 (UTC) :[[WF:Human languages]]: Copying the categorisation from enWiktionary seems like a good idea. I don't understand why this page is separate from [[WF:Catalogue/Natural language operations]] though? (time/happenstance? [[WT:Human_languages#proposal|previous disc.]]) Redlinks to cataloguing subpages will remain red unless and until someone makes an NLG function in that language. :[[WF:Reserved ZIDs]]: Using the live labels is an obvious improvement. I appreciate it being kept up-to-date. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:55, 16 January 2026 (UTC) :{{support}} per Arlo Barnes and YoshiRulz [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 01:11, 11 March 2026 (UTC) :{{support}} Let’s do this already. --[[User:Mormegil|Mormegil]] ([[User talk:Mormegil|talk]]) 08:33, 27 March 2026 (UTC) 6cby4xcm2g4mog2uj6jtm2zxqnaou0k 261463 261444 2026-03-28T10:59:40Z Redmin 52094 /* Task centre */ +req 261463 wikitext text/x-wiki <div style="border:1px solid grey; margin:1em 4em 2em; padding:1.5em 1em;"> <span style="font-size:2em;">Welcome to the '''community portal for Wikifunctions'''!</span> This is the central place to document Wikifunctions's to-do lists and ongoing project work. [To-do!] [[Special:MyLanguage/Wikifunctions:Catalogue|The catalogue of functions]] is a good place to start. For discussions, see [[Wikifunctions:Project chat]]. [[Category:Project]] </div> == Useful links == * [[Wikifunctions:List of policies and guidelines]] * [[Special:MyLanguage/Help:Contents|Help:Contents]] * [[Special:MyLanguage/Wikifunctions:Catalogue|Wikifunctions:Catalogue of functions]] ** [[Wikifunctions:Suggest a function]] * [[Wikifunctions:Type proposals]] * [[Special:MyLanguage/Wikifunctions:User scripts|Wikifunctions:User scripts]] * [[Wikifunctions:Requests for user groups]] * [[Wikifunctions:Requests for deletions]] == Noticeboards == * [[Wikifunctions:Project chat]] * [[Wikifunctions:Administrators' noticeboard]] * [[Wikifunctions:Report vandalism]] * [[Wikifunctions:Translators' noticeboard]] == Task centre == === Perennial tasks === <!--Feel free to add new tasks to this section. However, if they are one-off requests, please add them to Tasks listed by users--> * [[File:OOjs UI icon language-ltr.svg|class=skin-invert]] [[Special:MyLanguage/Help:Multilingual|Translation]]: **[[Special:Random|Add a translation to a random object]] **[[Special:MyLanguage/Category:Policy|Add a translation to a policy page]] **[[Special:ListMissingLabels|See any objects without a label in a given language]] **[[Special:PageTranslation]] **[[Special:LanguageStats|Language statistics]] *[[File:Octicons-tools.svg|15px|class=skin-invert]] [[:Category:Tracking categories|Tracking categories]] * [[File:Octicons-tools.svg|15px|class=skin-invert]] [[Wikifunctions:Request for cleanup|Requests for cleanup]] === Tasks listed by users === :''Example:'' :* Fix [[Special:Random|this implementation]] please. {{User|Example2}} ::{{Done}}. Thanks for pointing that out! {{User|Example}} <hr/> [signing to enable reply link:--[[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:27, 6 May 2024 (UTC) :Heya, I tried to make a {{Z|Z29010}} implementation in composition <small>({{Z|Z29012}})</small>, but it errors out: <code>Unable to convert to canonical form (path to the problem: "Z22K2.K1.K1.K2.Z5K2.Z528K1.Z99K1.Z7K1.Z8K4.[ 1 ].Z14K2.Z26107K2.Z21394K1.[ 1 ].Z10771K1.Z23753K2.Z18K1.{&quot;Z1K1&quot;:&quot;Z18&quot;,&quot;Z6K1&quot;:&quot;Z29010K5&quot;,&quot;Z18K1&quot;:&quot;&quot;}")</code> - why does this happen, and how would I fix it? I tried to use {{Z|Z28030}} as a guide, but for a first dive into composition I may have taken on something a bit large. [[User:Infernostars|infernostars]] <small>([[User talk:Infernostars|talk]]) ([[Special:Contributions/Infernostars|contribs]])</small> 02:49, 23 October 2025 (UTC) ::When you go to {{Z|Z29012}} you'll see two red words "Function" and "Wikidata item". Both of those were not set in the composition, so it is missing information. There may be more deeper problems, but fix this first. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 03:33, 23 October 2025 (UTC) ::{{done}} Works now, seemed to be just a couple typos. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:14, 24 December 2025 (UTC) :Please connect the tests and implementation for {{Z|29750}}. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:33, 25 November 2025 (UTC) ::This ^ was done, so thanks for that, and I've now built a new function around it that's ready to be connected: {{Z|29749}}<!-- --><br>Having fallbacks to other languages and indicating such does of course raise the question of ''when'' it should be indicated, and I certainly don't have the answer, so I might leave this message here for the multilingual among you to see it and chime in. Either on [[Talk:Z24144]], or by way of adding a test case on one of these functions. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:42, 25 November 2025 (UTC) :::If it’s about the way labels in fallback languages are displayed, perhaps the [[Talk:Z21583|Discussion page]] for {{Z|Z21583}} would be a better location? There has been some discussion at [[Wikifunctions talk:Abstract Wikipedia/2025 fragment experiments#Proposed recommendation: Fragments should return Z11/monolingual strings]]. (The spinoff, [[Wikifunctions talk:Abstract Wikipedia/2025 fragment experiments#Fallbacks]], might also be relevant.) [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 15:23, 25 November 2025 (UTC) :Now that raising and catching errors has better support, [[Z28159]] should take an {{Z|50}} instead of a ZID {{Z|6}}. Unfortunately it's already been used in other functions so it might be a pain to change. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 07:20, 21 December 2025 (UTC) ::Yes. I think this gets fixed along with {{Z|Z28162}}, which is listed in [[Wikifunctions:Request for cleanup#Function:(!) throw error (Z28154)]]. ::@[[User:Dv103|Dv103]] I was thinking we might just wrap {{Z|851}}? Custom errors will support only strings for the foreseeable future, as I understand it [can’t currently locate the relevant comment on Phabricator]. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 13:12, 21 December 2025 (UTC) :The simple implementation for {{Z|30737}} is failing with [[Z516]], even though I can get a (correct) result by [https://www.wikifunctions.org/view/en/Z12681?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z12681%22%2C%22Z12681K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22475%22%2C%22Z22475K1%22%3A%7B%22Z1K1%22%3A%22Z39%22%2C%22Z39K1%22%3A%22K1%22%7D%2C%22Z22475K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30260%22%2C%22Z30260K1%22%3A%5B%22Z6095%22%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L100%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L101%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L102%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L103%22%7D%5D%2C%22Z30260K2%22%3A%5B%22Z6030%22%2C%22Z6031%22%5D%2C%22Z30260K3%22%3A%5B%22Z60%22%5D%2C%22Z30260K4%22%3A%5B%22Z6092%22%5D%7D%7D%7D calling those functions on the test input]. Oddly enough [https://www.wikifunctions.org/view/en/Z12681?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z12681%22%2C%22Z12681K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22475%22%2C%22Z22475K1%22%3A%7B%22Z1K1%22%3A%22Z39%22%2C%22Z39K1%22%3A%22K1%22%7D%2C%22Z22475K2%22%3A%7B%22Z1K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z883%22%2C%22Z883K1%22%3A%22Z1%22%2C%22Z883K2%22%3A%22Z1%22%7D%2C%22K1%22%3A%5B%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z882%22%2C%22Z882K1%22%3A%22Z1%22%2C%22Z882K2%22%3A%22Z1%22%7D%2C%7B%22Z1K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z882%22%2C%22Z882K1%22%3A%22Z1%22%2C%22Z882K2%22%3A%22Z1%22%7D%2C%22K1%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%226%22%7D%2C%22K2%22%3A%22Abacus%22%7D%5D%7D%7D%7D a trivial input] causes that to fail with the same error. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:43, 26 December 2025 (UTC) ::Sorry, I missed this one. Initial validation rejects a map with {{Z|Z1}} as its key type. Although it’s not guaranteed to be hashable, [[Z1]] should probably be admitted as a placeholder {{Z|Z4}}. In any event, using {{Z|Z6}} as the alternative seems to work and does not restrict the map to having only Strings for keys (as seen in {{Z|Z30906}}, where the keys have {{Z|Z39}} for their Type). [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 09:18, 31 December 2025 (UTC) :::[[Z30907|Documented]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:50, 31 December 2025 (UTC) :The implementation for {{Z|29183}} is slightly incorrect, it needs to subtract 9 on the condition that variable <code>add</code> is &gt;9 (tests &gt;10 currently). For me to change {{Z|29185}}, the implementation needs to be disconnected from {{Z|29183}} by a functioneer ([[Special:ListUsers/functioneer]]) first. The english wiki also warns about using negative values as input for the modulo operation, so, in addition, the result computation should be rephrased to be <syntaxhighlight lang="python"> def intdivceil(x, d): return x//d + (0 if x % d == 0 else 1) return 10 * intdivceil(sum, 10) - sum </syntaxhighlight> :I'd also like to have all test cases of {{Z|29183}} connected by a functioneer, after changes to {{Z|29185}} have been commited. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 21:54, 2 January 2026 (UTC) ::Disconnected. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 22:12, 2 January 2026 (UTC) :::Thanks, changes done - please reconnect. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 22:33, 2 January 2026 (UTC) ::::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 23:08, 2 January 2026 (UTC) :::Weird: {{Z|30940}} and {{Z|30941}} tests do not pass after the reconnect, although [https://www.wikifunctions.org/wiki/Special:RunFunction?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z29183%22%2C%22Z29183K1%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%2290544230009%22%7D%7D running them manually] produces the expected result. Judging from the timestamps within the detail view, pressing the Refresh-Button does not actually re-run the tests. :::It seems that their results have been generated with the previous function. Can you make an effort to dis- and reconnect these two tests? The (unconfirmed) presumption is that tests only run on demand (event-triggered vs time scheduled). If this is true it may be noteworthy in the [[WF:FAQ]]. :::The first test, {{Z|29184}}, did not exhibit the same problem, it has been updated as expected. Because the execution timestamps of all three tests do not vary greatly, they were probably triggered, correctly so, by the same event. In theory they should then have consequently worked on the same function - since the test results suggest different, there could have either been a race condition or a stale cache, eventually with some tests running before the action that triggered them was fully committed. If this is not a timing issue, the response to the connection event might miss to update some of the data structures associated with the connected tests and simply run them unchanged, but this is speculative. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 01:38, 3 January 2026 (UTC) ::::Yeah the cached failures are super annoying, I think they reduced the cache duration recently but it's still too high IMO. Disconnecting and reconnecting the Implementation triggered them to run again. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:16, 3 January 2026 (UTC) :Can somebody connect the tests and implementation of this function? [[Z31047|arithmetical average of numbers (Z31047)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 04:35, 13 January 2026 (UTC) ::The implementation seems to fail all the tests. I suspect from the use of <code>{}</code> in Python code. Besides, on the implementation ({{Z|Z31048}}), it used <code>sum</code> as variable, which I don't think allowable in Python. Try to use another variable name. Last, what is the expected result of {{Z|Z31050}}? [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 04:50, 13 January 2026 (UTC) :::Sorry, @[[User:Sys64ish|Sys64ish]], I just got the expected result from {{Z|31050}}. I have connected the test cases, but not yet for the implementation as you may want to fix it first(?) [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 05:05, 13 January 2026 (UTC) ::::Fixed it, passes tests [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 05:09, 13 January 2026 (UTC) :::::{{Done}} connected! [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 05:11, 13 January 2026 (UTC) :When I go to add a test to this function, for some reason I cannot select a fixed value for the expected value, the type is fixed to a function call. Can somebody fix this? [[Z31051|graph a one parameter function (Z31051)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 06:16, 13 January 2026 (UTC) ::You need to select an equality function, which in this case would be {{Z|889}} with {{Z|20924}} as an argument. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 09:59, 13 January 2026 (UTC) :::Just what I was about to say, only shorter! :::I had a look at the Python implementation and that doesn’t appear to be viable, because a {{Z|Z8}} object is data, not a callable Python function. I think a composition is the only option here, but we don’t appear to have a [[Special:Search/:"z8k2 z1k1 z7 z7k1 z881 z881k1 Z20838"|generator function for ]]{{Z|Z20838}} yet ([[Special:Search/:"z8k2 z1k1 z7 z7k1 z881 z881k1 z19677"|nor for rationals]]). [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:39, 13 January 2026 (UTC) :Can somebody connect the tests and implementations of this function? [[Z31079|decimal number range (Z31079)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 13:57, 14 January 2026 (UTC) ::I’ve connected the test but there are a few issues with the implementation. The function has no return and the list to return shouldn’t be called range, as that overwrites the built-in range() function. Wikifunctions.Error requires a list of strings and you should probably guard against K3 being zero. Just let us know if you need any help with this. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 14:22, 14 January 2026 (UTC) :::I think I fixed the implementation [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 14:28, 14 January 2026 (UTC) ::::Looks close. You probably want to *return* Wikifunctions.Error in order to halt execution. The K1 and K2 arguments are float64s rather than strings, so they need coercing to str for the error. You still risk a divide by zero if K3 has no guard. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 14:48, 14 January 2026 (UTC) :::::I fixed it now, tests are passing(?) and when I run it locally it works as intended. [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 02:22, 15 January 2026 (UTC) ::::::{{done}} ::::::I created {{Z|31093}} to fix the last test, since your Python implementation was returning slightly inaccurate values for [[w:en:Floating-point_arithmetic#Accuracy_problems|reasons]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:11, 15 January 2026 (UTC) :Can somebody connect the impl. and test cases of these functions? [[Z31051|generate real (float64) list from a function (Z31051)]] [[Z31111|increment (float64) (Z31111)]] [[Z31116|decrement (float64) (Z31116)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 00:11, 16 January 2026 (UTC) ::Mostly. I see {{Z|Z31051}} has its Minimum and Maximum defined as integers rather than float64, as defined for the generator. Something has to change here, and I’m guessing it’s [[Z31051]], so I disconnected its implementation again. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 01:31, 16 January 2026 (UTC) :::all inputs except the input for the function are now float64 [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 13:36, 16 January 2026 (UTC) ::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 15:07, 16 January 2026 (UTC) : Can someone here connect the implementation and test cases of this function: [[Z18679|Malay cardinal to ordinal]]? {{User|Hakimi97}} :: {{Done}} [[User:Sys64ish|Sys32ish]] ([[User talk:Sys32ish|talk]]) 09:16, 19 January 2026 (UTC) :Can someone please add the following IPA symbols needed for {{Z|Z1099}} to <code>lookup</code> in the JavaScript implementation {{Z|Z29880}}? : "ɐ": "Q503323", : "u": "Q29653", : "ɕ": "Q605116", : "x": "Q271603", : "ʑ": "Q684085", : "ɣ": "Q654670", : "ʀ": "Q864677", : "χ": "Q849796", : "ʁ": "Q1054276", : "o": "Q862579", : "æ": "Q740768", : "ɪ": "Q1070049", : "ʊ": "Q1137807", :Thank you! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 20:23, 27 February 2026 (UTC) ::I forgot to mention the ligatures ::"ʤ": "Q778145", ::"ʧ": "Q518603", ::which could be put next to the already present ::"dʒ": "Q778145", ::"tʃ": "Q518603", ::--[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 20:24, 27 February 2026 (UTC) ::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 00:33, 28 February 2026 (UTC) :::Thank you! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 08:59, 28 February 2026 (UTC) : Can someone connect up [[Z31844]] and [[Z31837]]. These are better than the other implementations on their pages. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 09:04, 1 March 2026 (UTC) ::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:12, 1 March 2026 (UTC) :Hello, please connect {{Z|Z31729}}'s implementation and test cases. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 10:48, 8 March 2026 (UTC) ::The implementation does not seem to pass any of the test case. If you click on the [[File:Icon Information.svg|Icon_Information|15px|class=skin-invert-image]] (i) icon on the test status, you can find the error, what the implementation output, etc. Try to fix the implementation first. Thanks! [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 11:22, 8 March 2026 (UTC) ::It seems you're returning a string value when it expects a HTML fragment. HTML fragment and string are different. Maybe you can change the output type to string? [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 11:44, 10 March 2026 (UTC) :::Thanks for running the tests, @[[User:NikolasKHF|NikolasKHF]]; I couldn’t run them on my own (seemingly because I don’t have the needed right). I will fix the errors. :::Thanks for looking into this, @[[User:Sys64ish|Sys64ish]]. I actually did want to return an HTML fragment instead of a string because I think that would be more useful on the wikis. However, it looks like I forgot to convert the string for most cases where an output is returned (hence why only one test failure actually complains about the output value being incorrect). [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 19:52, 10 March 2026 (UTC) :::I have fixed the errors and added a new test case. Please connect the implementation and all the test cases now. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 10:23, 28 March 2026 (UTC) :Can someone connect [[Z31994]] and [[Z31999]] with its tests and implementations. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:41, 11 March 2026 (UTC) ::{{done}} [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 08:49, 11 March 2026 (UTC) :::Oh yeah I also made another function now, [[Z32004]]. Can someone connect its implementations and tests. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 09:02, 11 March 2026 (UTC) ::::{{done}} [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 09:23, 11 March 2026 (UTC) :Can someone connect up [[Z32013]]. Also how do you become able to connect and disconnect implementations? Is it only available to extended confirmed users? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 10:06, 12 March 2026 (UTC) ::I don’t believe this implementation should be connected at this time. The existing Python implementation respects the community consensus represented by the test cases connected to {{Z|Z24144}}. What do you think, @[[User:99of9|99of9]]? [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:28, 12 March 2026 (UTC) :::Fair, I didn't realise the test cases served as implicit consensus. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 11:42, 12 March 2026 (UTC) ::::No worries. It’s not clearly articulated, but we’ll clarify that later. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:51, 12 March 2026 (UTC) :::I'm not sure. At the moment it correctly reproduces all those we got "consensus" for. So in some sense this implementation is just suggesting/assuming extra fallbacks for those we haven't properly considered? One option would be to connect it and then add counter test cases if we ever felt we didn't like it's current suggestions. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 00:30, 13 March 2026 (UTC) ::::We should be careful… It’s not easy to tell how many test case results would be affected. It’s easy enough to disconnect again, of course, so I’m happy to give it a go while activity in this domain is at a low ebb. {{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:04, 13 March 2026 (UTC) ::To connect implementations, you need Functioneer rights, which can be requested here [[Wikifunctions:Requests for user groups]]. There is a 48-hour waiting period. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:32, 12 March 2026 (UTC) :Can someone connect up [[Z32027]] with its implementation and test? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:29, 13 March 2026 (UTC) ::And also [[Z32031]]. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 10:16, 13 March 2026 (UTC) :::{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:51, 13 March 2026 (UTC) ::{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:50, 13 March 2026 (UTC) {{tracked|T419920|resolved}} :What is wrong with my implementation at [[Z32055]]? Looking at the failed test, it returns an error because 'dict' has no attribute 'split', but I didn't use split anywhere in my code. What is the issue? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 01:38, 14 March 2026 (UTC) ::I think that error message is coming from the [[Z20424|type converter]]. I think <code>Z20424K1['Z20420K2']['Z20342K1']</code> would be a dictionary representing a {{Z|16098}} but the code is written as though it were a string? Neither Python nor type converters are in my wheelhouse. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:49, 14 March 2026 (UTC) :::I think this is [[:phab:T419920]] and presumed to be a consequence of this week’s rollout of “v2”. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:08, 14 March 2026 (UTC) ::The type converter issue has gone away, but your Implementation doesn't quite match the tests (and composition), so I've disconnected it again. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:54, 20 March 2026 (UTC) :What is wrong with my implementation at {{Z|Z32851}}? Btw, it would be really useful if errors said which dependency produced the error, instead of just saying "Error in evaluation". [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 07:18, 28 March 2026 (UTC) ::You were catching the wrong {{Z|50}}, but then the error should have bubbled up so you could see it. I think there's something broken in the site w/ {{Z|11}} right now since [[Z32804|I ran into a similar problem yesterday]]. (And to contradict my note there, while debugging your implementation I saw the same behaviour regardless of if I used [[Z26107]] or a literal Z11, so it must be a bug in WikiLambda.) [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 08:14, 28 March 2026 (UTC) ==== Connection / Disconnection requests ==== Can someone connect {{Z|32068}} and {{Z|15974}} to their tests and implementations. Thanks in advance. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 23:24, 14 March 2026 (UTC) :In the first function, there’s some issue with Maybe but I don’t think that’s the implementation. But I do think the error-handling for Maybe needs fixing. I’ll check back tomorrow and dig deeper if need be. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 23:48, 14 March 2026 (UTC) ::I fixed the error raising and checking, but the test is still failing for some reason? [[phab:T419920]] again? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 23:54, 14 March 2026 (UTC) :::It certainly looks like a conversion failure going into {{Z|Z22123}}. I made a [[Z32083|new implementation]] of {{Z|Z22120}} which is now “preferred”. If everything behaves itself, [[Z22123]] can be reconnected. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 17:24, 15 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:56, 20 March 2026 (UTC) Can someone connect {{Z|32208}}, {{Z|32199}}, and {{Z|32204}}'s testcases and implementations? thanks in advance! --[[User:VivianIsBee|VivianIsBee]] ([[User talk:VivianIsBee|talk]]) 14:33, 20 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:48, 20 March 2026 (UTC) Can someone connect {{Z|32355}}'s testcases and implementations? Thanks in advance! [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 08:15, 22 March 2026 (UTC) :I haven't connected the implementation yet, because it doesn't seem to pass any of the test cases. If the implementation has any issues, then fix them first. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:24, 22 March 2026 (UTC) ::Thanks. I fixed. One testcase has passed now. But another testcase still says "The lexeme doesn't have forms" although I added a lexical form about 20 hour ago. I suppose cashed data may not have been refreshed yet. So can you please connect implementation so that I can check precisely? [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 05:47, 23 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:32, 23 March 2026 (UTC) Can someone connect {{Z|32442}}'s testcases and implementations? Thanks in advance! [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 22:38, 23 March 2026 (UTC) :Did you mean to include spaces between "words" with your Implementation, or was that a copy-paste error? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 05:24, 24 March 2026 (UTC) ::Thanks. That's a copy-paste error. I deleted one space.[[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 06:55, 24 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 09:48, 24 March 2026 (UTC) Request to connect {{Z|32212}}, {{Z|32213}}, {{Z|32214}}, {{Z|32216}}, and {{Z|32240}}, all related to defining role sentence in Chinese for all variants. [[User:1F616EMO|1F616EMO]] ([[User talk:1F616EMO|talk]]) 03:21, 24 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 05:28, 24 March 2026 (UTC) Can someone disconnect {{Z|10816}}'s Python implementation? Need to fix one of the test case errors. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 19:47, 26 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 19:59, 26 March 2026 (UTC) ::Fixed the Python implementation, if anyone could reconnect that again. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 20:11, 26 March 2026 (UTC) :::Noting that this was reconnected. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 14:40, 27 March 2026 (UTC) Can someone please disconnect {{Z|26572}}? It needs to be edited to add the Bengali equivalent of a period to the end of the sentence. Thanks. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 10:59, 28 March 2026 (UTC) ==== [[WF:HL]] ==== I have recently drafted some revamps of [[Wikifunctions:Human languages]] ([[User:Xeroctic/Human languages]]) and [[Wikifunctions:Reserved ZIDs]] ([[User:Xeroctic/Reserved ZIDs]]) in my userspace, and I think they are ready to replace the originals. I have not included translation tags for HL (which would be entirely different) and they need major modification for RZIDs to add or re-add them, so I would like that to be done as well. — [[User:Xeroctic|Xeroctic]] ([[User talk:Xeroctic|talk]]) 16:39, 3 November 2025 (UTC) : {{s}} since Xeroctic's versions improve readability. — [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 11:17, 24 November 2025 (UTC) :: Restoring this unresolved thread which was archived in oldid 237379. — [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 14:36, 16 January 2026 (UTC) :[[WF:Human languages]]: Copying the categorisation from enWiktionary seems like a good idea. I don't understand why this page is separate from [[WF:Catalogue/Natural language operations]] though? (time/happenstance? [[WT:Human_languages#proposal|previous disc.]]) Redlinks to cataloguing subpages will remain red unless and until someone makes an NLG function in that language. :[[WF:Reserved ZIDs]]: Using the live labels is an obvious improvement. I appreciate it being kept up-to-date. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:55, 16 January 2026 (UTC) :{{support}} per Arlo Barnes and YoshiRulz [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 01:11, 11 March 2026 (UTC) :{{support}} Let’s do this already. --[[User:Mormegil|Mormegil]] ([[User talk:Mormegil|talk]]) 08:33, 27 March 2026 (UTC) obm9ho6n88v8z4emdzd7ih8zl7mu2v5 261465 261463 2026-03-28T11:01:02Z Redmin 52094 /* Task centre */ Fix ZID 261465 wikitext text/x-wiki <div style="border:1px solid grey; margin:1em 4em 2em; padding:1.5em 1em;"> <span style="font-size:2em;">Welcome to the '''community portal for Wikifunctions'''!</span> This is the central place to document Wikifunctions's to-do lists and ongoing project work. [To-do!] [[Special:MyLanguage/Wikifunctions:Catalogue|The catalogue of functions]] is a good place to start. For discussions, see [[Wikifunctions:Project chat]]. [[Category:Project]] </div> == Useful links == * [[Wikifunctions:List of policies and guidelines]] * [[Special:MyLanguage/Help:Contents|Help:Contents]] * [[Special:MyLanguage/Wikifunctions:Catalogue|Wikifunctions:Catalogue of functions]] ** [[Wikifunctions:Suggest a function]] * [[Wikifunctions:Type proposals]] * [[Special:MyLanguage/Wikifunctions:User scripts|Wikifunctions:User scripts]] * [[Wikifunctions:Requests for user groups]] * [[Wikifunctions:Requests for deletions]] == Noticeboards == * [[Wikifunctions:Project chat]] * [[Wikifunctions:Administrators' noticeboard]] * [[Wikifunctions:Report vandalism]] * [[Wikifunctions:Translators' noticeboard]] == Task centre == === Perennial tasks === <!--Feel free to add new tasks to this section. However, if they are one-off requests, please add them to Tasks listed by users--> * [[File:OOjs UI icon language-ltr.svg|class=skin-invert]] [[Special:MyLanguage/Help:Multilingual|Translation]]: **[[Special:Random|Add a translation to a random object]] **[[Special:MyLanguage/Category:Policy|Add a translation to a policy page]] **[[Special:ListMissingLabels|See any objects without a label in a given language]] **[[Special:PageTranslation]] **[[Special:LanguageStats|Language statistics]] *[[File:Octicons-tools.svg|15px|class=skin-invert]] [[:Category:Tracking categories|Tracking categories]] * [[File:Octicons-tools.svg|15px|class=skin-invert]] [[Wikifunctions:Request for cleanup|Requests for cleanup]] === Tasks listed by users === :''Example:'' :* Fix [[Special:Random|this implementation]] please. {{User|Example2}} ::{{Done}}. Thanks for pointing that out! {{User|Example}} <hr/> [signing to enable reply link:--[[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:27, 6 May 2024 (UTC) :Heya, I tried to make a {{Z|Z29010}} implementation in composition <small>({{Z|Z29012}})</small>, but it errors out: <code>Unable to convert to canonical form (path to the problem: "Z22K2.K1.K1.K2.Z5K2.Z528K1.Z99K1.Z7K1.Z8K4.[ 1 ].Z14K2.Z26107K2.Z21394K1.[ 1 ].Z10771K1.Z23753K2.Z18K1.{&quot;Z1K1&quot;:&quot;Z18&quot;,&quot;Z6K1&quot;:&quot;Z29010K5&quot;,&quot;Z18K1&quot;:&quot;&quot;}")</code> - why does this happen, and how would I fix it? I tried to use {{Z|Z28030}} as a guide, but for a first dive into composition I may have taken on something a bit large. [[User:Infernostars|infernostars]] <small>([[User talk:Infernostars|talk]]) ([[Special:Contributions/Infernostars|contribs]])</small> 02:49, 23 October 2025 (UTC) ::When you go to {{Z|Z29012}} you'll see two red words "Function" and "Wikidata item". Both of those were not set in the composition, so it is missing information. There may be more deeper problems, but fix this first. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 03:33, 23 October 2025 (UTC) ::{{done}} Works now, seemed to be just a couple typos. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:14, 24 December 2025 (UTC) :Please connect the tests and implementation for {{Z|29750}}. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:33, 25 November 2025 (UTC) ::This ^ was done, so thanks for that, and I've now built a new function around it that's ready to be connected: {{Z|29749}}<!-- --><br>Having fallbacks to other languages and indicating such does of course raise the question of ''when'' it should be indicated, and I certainly don't have the answer, so I might leave this message here for the multilingual among you to see it and chime in. Either on [[Talk:Z24144]], or by way of adding a test case on one of these functions. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:42, 25 November 2025 (UTC) :::If it’s about the way labels in fallback languages are displayed, perhaps the [[Talk:Z21583|Discussion page]] for {{Z|Z21583}} would be a better location? There has been some discussion at [[Wikifunctions talk:Abstract Wikipedia/2025 fragment experiments#Proposed recommendation: Fragments should return Z11/monolingual strings]]. (The spinoff, [[Wikifunctions talk:Abstract Wikipedia/2025 fragment experiments#Fallbacks]], might also be relevant.) [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 15:23, 25 November 2025 (UTC) :Now that raising and catching errors has better support, [[Z28159]] should take an {{Z|50}} instead of a ZID {{Z|6}}. Unfortunately it's already been used in other functions so it might be a pain to change. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 07:20, 21 December 2025 (UTC) ::Yes. I think this gets fixed along with {{Z|Z28162}}, which is listed in [[Wikifunctions:Request for cleanup#Function:(!) throw error (Z28154)]]. ::@[[User:Dv103|Dv103]] I was thinking we might just wrap {{Z|851}}? Custom errors will support only strings for the foreseeable future, as I understand it [can’t currently locate the relevant comment on Phabricator]. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 13:12, 21 December 2025 (UTC) :The simple implementation for {{Z|30737}} is failing with [[Z516]], even though I can get a (correct) result by [https://www.wikifunctions.org/view/en/Z12681?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z12681%22%2C%22Z12681K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22475%22%2C%22Z22475K1%22%3A%7B%22Z1K1%22%3A%22Z39%22%2C%22Z39K1%22%3A%22K1%22%7D%2C%22Z22475K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30260%22%2C%22Z30260K1%22%3A%5B%22Z6095%22%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L100%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L101%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L102%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L103%22%7D%5D%2C%22Z30260K2%22%3A%5B%22Z6030%22%2C%22Z6031%22%5D%2C%22Z30260K3%22%3A%5B%22Z60%22%5D%2C%22Z30260K4%22%3A%5B%22Z6092%22%5D%7D%7D%7D calling those functions on the test input]. Oddly enough [https://www.wikifunctions.org/view/en/Z12681?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z12681%22%2C%22Z12681K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22475%22%2C%22Z22475K1%22%3A%7B%22Z1K1%22%3A%22Z39%22%2C%22Z39K1%22%3A%22K1%22%7D%2C%22Z22475K2%22%3A%7B%22Z1K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z883%22%2C%22Z883K1%22%3A%22Z1%22%2C%22Z883K2%22%3A%22Z1%22%7D%2C%22K1%22%3A%5B%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z882%22%2C%22Z882K1%22%3A%22Z1%22%2C%22Z882K2%22%3A%22Z1%22%7D%2C%7B%22Z1K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z882%22%2C%22Z882K1%22%3A%22Z1%22%2C%22Z882K2%22%3A%22Z1%22%7D%2C%22K1%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%226%22%7D%2C%22K2%22%3A%22Abacus%22%7D%5D%7D%7D%7D a trivial input] causes that to fail with the same error. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:43, 26 December 2025 (UTC) ::Sorry, I missed this one. Initial validation rejects a map with {{Z|Z1}} as its key type. Although it’s not guaranteed to be hashable, [[Z1]] should probably be admitted as a placeholder {{Z|Z4}}. In any event, using {{Z|Z6}} as the alternative seems to work and does not restrict the map to having only Strings for keys (as seen in {{Z|Z30906}}, where the keys have {{Z|Z39}} for their Type). [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 09:18, 31 December 2025 (UTC) :::[[Z30907|Documented]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:50, 31 December 2025 (UTC) :The implementation for {{Z|29183}} is slightly incorrect, it needs to subtract 9 on the condition that variable <code>add</code> is &gt;9 (tests &gt;10 currently). For me to change {{Z|29185}}, the implementation needs to be disconnected from {{Z|29183}} by a functioneer ([[Special:ListUsers/functioneer]]) first. The english wiki also warns about using negative values as input for the modulo operation, so, in addition, the result computation should be rephrased to be <syntaxhighlight lang="python"> def intdivceil(x, d): return x//d + (0 if x % d == 0 else 1) return 10 * intdivceil(sum, 10) - sum </syntaxhighlight> :I'd also like to have all test cases of {{Z|29183}} connected by a functioneer, after changes to {{Z|29185}} have been commited. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 21:54, 2 January 2026 (UTC) ::Disconnected. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 22:12, 2 January 2026 (UTC) :::Thanks, changes done - please reconnect. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 22:33, 2 January 2026 (UTC) ::::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 23:08, 2 January 2026 (UTC) :::Weird: {{Z|30940}} and {{Z|30941}} tests do not pass after the reconnect, although [https://www.wikifunctions.org/wiki/Special:RunFunction?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z29183%22%2C%22Z29183K1%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%2290544230009%22%7D%7D running them manually] produces the expected result. Judging from the timestamps within the detail view, pressing the Refresh-Button does not actually re-run the tests. :::It seems that their results have been generated with the previous function. Can you make an effort to dis- and reconnect these two tests? The (unconfirmed) presumption is that tests only run on demand (event-triggered vs time scheduled). If this is true it may be noteworthy in the [[WF:FAQ]]. :::The first test, {{Z|29184}}, did not exhibit the same problem, it has been updated as expected. Because the execution timestamps of all three tests do not vary greatly, they were probably triggered, correctly so, by the same event. In theory they should then have consequently worked on the same function - since the test results suggest different, there could have either been a race condition or a stale cache, eventually with some tests running before the action that triggered them was fully committed. If this is not a timing issue, the response to the connection event might miss to update some of the data structures associated with the connected tests and simply run them unchanged, but this is speculative. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 01:38, 3 January 2026 (UTC) ::::Yeah the cached failures are super annoying, I think they reduced the cache duration recently but it's still too high IMO. Disconnecting and reconnecting the Implementation triggered them to run again. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:16, 3 January 2026 (UTC) :Can somebody connect the tests and implementation of this function? [[Z31047|arithmetical average of numbers (Z31047)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 04:35, 13 January 2026 (UTC) ::The implementation seems to fail all the tests. I suspect from the use of <code>{}</code> in Python code. Besides, on the implementation ({{Z|Z31048}}), it used <code>sum</code> as variable, which I don't think allowable in Python. Try to use another variable name. Last, what is the expected result of {{Z|Z31050}}? [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 04:50, 13 January 2026 (UTC) :::Sorry, @[[User:Sys64ish|Sys64ish]], I just got the expected result from {{Z|31050}}. I have connected the test cases, but not yet for the implementation as you may want to fix it first(?) [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 05:05, 13 January 2026 (UTC) ::::Fixed it, passes tests [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 05:09, 13 January 2026 (UTC) :::::{{Done}} connected! [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 05:11, 13 January 2026 (UTC) :When I go to add a test to this function, for some reason I cannot select a fixed value for the expected value, the type is fixed to a function call. Can somebody fix this? [[Z31051|graph a one parameter function (Z31051)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 06:16, 13 January 2026 (UTC) ::You need to select an equality function, which in this case would be {{Z|889}} with {{Z|20924}} as an argument. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 09:59, 13 January 2026 (UTC) :::Just what I was about to say, only shorter! :::I had a look at the Python implementation and that doesn’t appear to be viable, because a {{Z|Z8}} object is data, not a callable Python function. I think a composition is the only option here, but we don’t appear to have a [[Special:Search/:"z8k2 z1k1 z7 z7k1 z881 z881k1 Z20838"|generator function for ]]{{Z|Z20838}} yet ([[Special:Search/:"z8k2 z1k1 z7 z7k1 z881 z881k1 z19677"|nor for rationals]]). [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:39, 13 January 2026 (UTC) :Can somebody connect the tests and implementations of this function? [[Z31079|decimal number range (Z31079)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 13:57, 14 January 2026 (UTC) ::I’ve connected the test but there are a few issues with the implementation. The function has no return and the list to return shouldn’t be called range, as that overwrites the built-in range() function. Wikifunctions.Error requires a list of strings and you should probably guard against K3 being zero. Just let us know if you need any help with this. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 14:22, 14 January 2026 (UTC) :::I think I fixed the implementation [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 14:28, 14 January 2026 (UTC) ::::Looks close. You probably want to *return* Wikifunctions.Error in order to halt execution. The K1 and K2 arguments are float64s rather than strings, so they need coercing to str for the error. You still risk a divide by zero if K3 has no guard. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 14:48, 14 January 2026 (UTC) :::::I fixed it now, tests are passing(?) and when I run it locally it works as intended. [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 02:22, 15 January 2026 (UTC) ::::::{{done}} ::::::I created {{Z|31093}} to fix the last test, since your Python implementation was returning slightly inaccurate values for [[w:en:Floating-point_arithmetic#Accuracy_problems|reasons]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:11, 15 January 2026 (UTC) :Can somebody connect the impl. and test cases of these functions? [[Z31051|generate real (float64) list from a function (Z31051)]] [[Z31111|increment (float64) (Z31111)]] [[Z31116|decrement (float64) (Z31116)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 00:11, 16 January 2026 (UTC) ::Mostly. I see {{Z|Z31051}} has its Minimum and Maximum defined as integers rather than float64, as defined for the generator. Something has to change here, and I’m guessing it’s [[Z31051]], so I disconnected its implementation again. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 01:31, 16 January 2026 (UTC) :::all inputs except the input for the function are now float64 [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 13:36, 16 January 2026 (UTC) ::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 15:07, 16 January 2026 (UTC) : Can someone here connect the implementation and test cases of this function: [[Z18679|Malay cardinal to ordinal]]? {{User|Hakimi97}} :: {{Done}} [[User:Sys64ish|Sys32ish]] ([[User talk:Sys32ish|talk]]) 09:16, 19 January 2026 (UTC) :Can someone please add the following IPA symbols needed for {{Z|Z1099}} to <code>lookup</code> in the JavaScript implementation {{Z|Z29880}}? : "ɐ": "Q503323", : "u": "Q29653", : "ɕ": "Q605116", : "x": "Q271603", : "ʑ": "Q684085", : "ɣ": "Q654670", : "ʀ": "Q864677", : "χ": "Q849796", : "ʁ": "Q1054276", : "o": "Q862579", : "æ": "Q740768", : "ɪ": "Q1070049", : "ʊ": "Q1137807", :Thank you! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 20:23, 27 February 2026 (UTC) ::I forgot to mention the ligatures ::"ʤ": "Q778145", ::"ʧ": "Q518603", ::which could be put next to the already present ::"dʒ": "Q778145", ::"tʃ": "Q518603", ::--[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 20:24, 27 February 2026 (UTC) ::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 00:33, 28 February 2026 (UTC) :::Thank you! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 08:59, 28 February 2026 (UTC) : Can someone connect up [[Z31844]] and [[Z31837]]. These are better than the other implementations on their pages. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 09:04, 1 March 2026 (UTC) ::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:12, 1 March 2026 (UTC) :Hello, please connect {{Z|Z31729}}'s implementation and test cases. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 10:48, 8 March 2026 (UTC) ::The implementation does not seem to pass any of the test case. If you click on the [[File:Icon Information.svg|Icon_Information|15px|class=skin-invert-image]] (i) icon on the test status, you can find the error, what the implementation output, etc. Try to fix the implementation first. Thanks! [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 11:22, 8 March 2026 (UTC) ::It seems you're returning a string value when it expects a HTML fragment. HTML fragment and string are different. Maybe you can change the output type to string? [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 11:44, 10 March 2026 (UTC) :::Thanks for running the tests, @[[User:NikolasKHF|NikolasKHF]]; I couldn’t run them on my own (seemingly because I don’t have the needed right). I will fix the errors. :::Thanks for looking into this, @[[User:Sys64ish|Sys64ish]]. I actually did want to return an HTML fragment instead of a string because I think that would be more useful on the wikis. However, it looks like I forgot to convert the string for most cases where an output is returned (hence why only one test failure actually complains about the output value being incorrect). [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 19:52, 10 March 2026 (UTC) :::I have fixed the errors and added a new test case. Please connect the implementation and all the test cases now. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 10:23, 28 March 2026 (UTC) :Can someone connect [[Z31994]] and [[Z31999]] with its tests and implementations. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:41, 11 March 2026 (UTC) ::{{done}} [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 08:49, 11 March 2026 (UTC) :::Oh yeah I also made another function now, [[Z32004]]. Can someone connect its implementations and tests. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 09:02, 11 March 2026 (UTC) ::::{{done}} [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 09:23, 11 March 2026 (UTC) :Can someone connect up [[Z32013]]. Also how do you become able to connect and disconnect implementations? Is it only available to extended confirmed users? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 10:06, 12 March 2026 (UTC) ::I don’t believe this implementation should be connected at this time. The existing Python implementation respects the community consensus represented by the test cases connected to {{Z|Z24144}}. What do you think, @[[User:99of9|99of9]]? [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:28, 12 March 2026 (UTC) :::Fair, I didn't realise the test cases served as implicit consensus. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 11:42, 12 March 2026 (UTC) ::::No worries. It’s not clearly articulated, but we’ll clarify that later. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:51, 12 March 2026 (UTC) :::I'm not sure. At the moment it correctly reproduces all those we got "consensus" for. So in some sense this implementation is just suggesting/assuming extra fallbacks for those we haven't properly considered? One option would be to connect it and then add counter test cases if we ever felt we didn't like it's current suggestions. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 00:30, 13 March 2026 (UTC) ::::We should be careful… It’s not easy to tell how many test case results would be affected. It’s easy enough to disconnect again, of course, so I’m happy to give it a go while activity in this domain is at a low ebb. {{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:04, 13 March 2026 (UTC) ::To connect implementations, you need Functioneer rights, which can be requested here [[Wikifunctions:Requests for user groups]]. There is a 48-hour waiting period. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:32, 12 March 2026 (UTC) :Can someone connect up [[Z32027]] with its implementation and test? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:29, 13 March 2026 (UTC) ::And also [[Z32031]]. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 10:16, 13 March 2026 (UTC) :::{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:51, 13 March 2026 (UTC) ::{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:50, 13 March 2026 (UTC) {{tracked|T419920|resolved}} :What is wrong with my implementation at [[Z32055]]? Looking at the failed test, it returns an error because 'dict' has no attribute 'split', but I didn't use split anywhere in my code. What is the issue? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 01:38, 14 March 2026 (UTC) ::I think that error message is coming from the [[Z20424|type converter]]. I think <code>Z20424K1['Z20420K2']['Z20342K1']</code> would be a dictionary representing a {{Z|16098}} but the code is written as though it were a string? Neither Python nor type converters are in my wheelhouse. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:49, 14 March 2026 (UTC) :::I think this is [[:phab:T419920]] and presumed to be a consequence of this week’s rollout of “v2”. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:08, 14 March 2026 (UTC) ::The type converter issue has gone away, but your Implementation doesn't quite match the tests (and composition), so I've disconnected it again. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:54, 20 March 2026 (UTC) :What is wrong with my implementation at {{Z|Z32851}}? Btw, it would be really useful if errors said which dependency produced the error, instead of just saying "Error in evaluation". [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 07:18, 28 March 2026 (UTC) ::You were catching the wrong {{Z|50}}, but then the error should have bubbled up so you could see it. I think there's something broken in the site w/ {{Z|11}} right now since [[Z32804|I ran into a similar problem yesterday]]. (And to contradict my note there, while debugging your implementation I saw the same behaviour regardless of if I used [[Z26107]] or a literal Z11, so it must be a bug in WikiLambda.) [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 08:14, 28 March 2026 (UTC) ==== Connection / Disconnection requests ==== Can someone connect {{Z|32068}} and {{Z|15974}} to their tests and implementations. Thanks in advance. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 23:24, 14 March 2026 (UTC) :In the first function, there’s some issue with Maybe but I don’t think that’s the implementation. But I do think the error-handling for Maybe needs fixing. I’ll check back tomorrow and dig deeper if need be. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 23:48, 14 March 2026 (UTC) ::I fixed the error raising and checking, but the test is still failing for some reason? [[phab:T419920]] again? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 23:54, 14 March 2026 (UTC) :::It certainly looks like a conversion failure going into {{Z|Z22123}}. I made a [[Z32083|new implementation]] of {{Z|Z22120}} which is now “preferred”. If everything behaves itself, [[Z22123]] can be reconnected. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 17:24, 15 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:56, 20 March 2026 (UTC) Can someone connect {{Z|32208}}, {{Z|32199}}, and {{Z|32204}}'s testcases and implementations? thanks in advance! --[[User:VivianIsBee|VivianIsBee]] ([[User talk:VivianIsBee|talk]]) 14:33, 20 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:48, 20 March 2026 (UTC) Can someone connect {{Z|32355}}'s testcases and implementations? Thanks in advance! [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 08:15, 22 March 2026 (UTC) :I haven't connected the implementation yet, because it doesn't seem to pass any of the test cases. If the implementation has any issues, then fix them first. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:24, 22 March 2026 (UTC) ::Thanks. I fixed. One testcase has passed now. But another testcase still says "The lexeme doesn't have forms" although I added a lexical form about 20 hour ago. I suppose cashed data may not have been refreshed yet. So can you please connect implementation so that I can check precisely? [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 05:47, 23 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:32, 23 March 2026 (UTC) Can someone connect {{Z|32442}}'s testcases and implementations? Thanks in advance! [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 22:38, 23 March 2026 (UTC) :Did you mean to include spaces between "words" with your Implementation, or was that a copy-paste error? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 05:24, 24 March 2026 (UTC) ::Thanks. That's a copy-paste error. I deleted one space.[[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 06:55, 24 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 09:48, 24 March 2026 (UTC) Request to connect {{Z|32212}}, {{Z|32213}}, {{Z|32214}}, {{Z|32216}}, and {{Z|32240}}, all related to defining role sentence in Chinese for all variants. [[User:1F616EMO|1F616EMO]] ([[User talk:1F616EMO|talk]]) 03:21, 24 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 05:28, 24 March 2026 (UTC) Can someone disconnect {{Z|10816}}'s Python implementation? Need to fix one of the test case errors. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 19:47, 26 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 19:59, 26 March 2026 (UTC) ::Fixed the Python implementation, if anyone could reconnect that again. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 20:11, 26 March 2026 (UTC) :::Noting that this was reconnected. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 14:40, 27 March 2026 (UTC) Can someone please disconnect {{Z|26574}}? It needs to be edited to add the Bengali equivalent of a period to the end of the sentence. Thanks. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 10:59, 28 March 2026 (UTC) ==== [[WF:HL]] ==== I have recently drafted some revamps of [[Wikifunctions:Human languages]] ([[User:Xeroctic/Human languages]]) and [[Wikifunctions:Reserved ZIDs]] ([[User:Xeroctic/Reserved ZIDs]]) in my userspace, and I think they are ready to replace the originals. I have not included translation tags for HL (which would be entirely different) and they need major modification for RZIDs to add or re-add them, so I would like that to be done as well. — [[User:Xeroctic|Xeroctic]] ([[User talk:Xeroctic|talk]]) 16:39, 3 November 2025 (UTC) : {{s}} since Xeroctic's versions improve readability. — [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 11:17, 24 November 2025 (UTC) :: Restoring this unresolved thread which was archived in oldid 237379. — [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 14:36, 16 January 2026 (UTC) :[[WF:Human languages]]: Copying the categorisation from enWiktionary seems like a good idea. I don't understand why this page is separate from [[WF:Catalogue/Natural language operations]] though? (time/happenstance? [[WT:Human_languages#proposal|previous disc.]]) Redlinks to cataloguing subpages will remain red unless and until someone makes an NLG function in that language. :[[WF:Reserved ZIDs]]: Using the live labels is an obvious improvement. I appreciate it being kept up-to-date. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:55, 16 January 2026 (UTC) :{{support}} per Arlo Barnes and YoshiRulz [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 01:11, 11 March 2026 (UTC) :{{support}} Let’s do this already. --[[User:Mormegil|Mormegil]] ([[User talk:Mormegil|talk]]) 08:33, 27 March 2026 (UTC) do5cyfimjd0wpwa05t7yd2sb3uzqrbo 261471 261465 2026-03-28T11:05:39Z ChaoticVermillion 31127 /* Connection / Disconnection requests */ Reply 261471 wikitext text/x-wiki <div style="border:1px solid grey; margin:1em 4em 2em; padding:1.5em 1em;"> <span style="font-size:2em;">Welcome to the '''community portal for Wikifunctions'''!</span> This is the central place to document Wikifunctions's to-do lists and ongoing project work. [To-do!] [[Special:MyLanguage/Wikifunctions:Catalogue|The catalogue of functions]] is a good place to start. For discussions, see [[Wikifunctions:Project chat]]. [[Category:Project]] </div> == Useful links == * [[Wikifunctions:List of policies and guidelines]] * [[Special:MyLanguage/Help:Contents|Help:Contents]] * [[Special:MyLanguage/Wikifunctions:Catalogue|Wikifunctions:Catalogue of functions]] ** [[Wikifunctions:Suggest a function]] * [[Wikifunctions:Type proposals]] * [[Special:MyLanguage/Wikifunctions:User scripts|Wikifunctions:User scripts]] * [[Wikifunctions:Requests for user groups]] * [[Wikifunctions:Requests for deletions]] == Noticeboards == * [[Wikifunctions:Project chat]] * [[Wikifunctions:Administrators' noticeboard]] * [[Wikifunctions:Report vandalism]] * [[Wikifunctions:Translators' noticeboard]] == Task centre == === Perennial tasks === <!--Feel free to add new tasks to this section. However, if they are one-off requests, please add them to Tasks listed by users--> * [[File:OOjs UI icon language-ltr.svg|class=skin-invert]] [[Special:MyLanguage/Help:Multilingual|Translation]]: **[[Special:Random|Add a translation to a random object]] **[[Special:MyLanguage/Category:Policy|Add a translation to a policy page]] **[[Special:ListMissingLabels|See any objects without a label in a given language]] **[[Special:PageTranslation]] **[[Special:LanguageStats|Language statistics]] *[[File:Octicons-tools.svg|15px|class=skin-invert]] [[:Category:Tracking categories|Tracking categories]] * [[File:Octicons-tools.svg|15px|class=skin-invert]] [[Wikifunctions:Request for cleanup|Requests for cleanup]] === Tasks listed by users === :''Example:'' :* Fix [[Special:Random|this implementation]] please. {{User|Example2}} ::{{Done}}. Thanks for pointing that out! {{User|Example}} <hr/> [signing to enable reply link:--[[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:27, 6 May 2024 (UTC) :Heya, I tried to make a {{Z|Z29010}} implementation in composition <small>({{Z|Z29012}})</small>, but it errors out: <code>Unable to convert to canonical form (path to the problem: "Z22K2.K1.K1.K2.Z5K2.Z528K1.Z99K1.Z7K1.Z8K4.[ 1 ].Z14K2.Z26107K2.Z21394K1.[ 1 ].Z10771K1.Z23753K2.Z18K1.{&quot;Z1K1&quot;:&quot;Z18&quot;,&quot;Z6K1&quot;:&quot;Z29010K5&quot;,&quot;Z18K1&quot;:&quot;&quot;}")</code> - why does this happen, and how would I fix it? I tried to use {{Z|Z28030}} as a guide, but for a first dive into composition I may have taken on something a bit large. [[User:Infernostars|infernostars]] <small>([[User talk:Infernostars|talk]]) ([[Special:Contributions/Infernostars|contribs]])</small> 02:49, 23 October 2025 (UTC) ::When you go to {{Z|Z29012}} you'll see two red words "Function" and "Wikidata item". Both of those were not set in the composition, so it is missing information. There may be more deeper problems, but fix this first. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 03:33, 23 October 2025 (UTC) ::{{done}} Works now, seemed to be just a couple typos. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:14, 24 December 2025 (UTC) :Please connect the tests and implementation for {{Z|29750}}. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:33, 25 November 2025 (UTC) ::This ^ was done, so thanks for that, and I've now built a new function around it that's ready to be connected: {{Z|29749}}<!-- --><br>Having fallbacks to other languages and indicating such does of course raise the question of ''when'' it should be indicated, and I certainly don't have the answer, so I might leave this message here for the multilingual among you to see it and chime in. Either on [[Talk:Z24144]], or by way of adding a test case on one of these functions. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:42, 25 November 2025 (UTC) :::If it’s about the way labels in fallback languages are displayed, perhaps the [[Talk:Z21583|Discussion page]] for {{Z|Z21583}} would be a better location? There has been some discussion at [[Wikifunctions talk:Abstract Wikipedia/2025 fragment experiments#Proposed recommendation: Fragments should return Z11/monolingual strings]]. (The spinoff, [[Wikifunctions talk:Abstract Wikipedia/2025 fragment experiments#Fallbacks]], might also be relevant.) [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 15:23, 25 November 2025 (UTC) :Now that raising and catching errors has better support, [[Z28159]] should take an {{Z|50}} instead of a ZID {{Z|6}}. Unfortunately it's already been used in other functions so it might be a pain to change. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 07:20, 21 December 2025 (UTC) ::Yes. I think this gets fixed along with {{Z|Z28162}}, which is listed in [[Wikifunctions:Request for cleanup#Function:(!) throw error (Z28154)]]. ::@[[User:Dv103|Dv103]] I was thinking we might just wrap {{Z|851}}? Custom errors will support only strings for the foreseeable future, as I understand it [can’t currently locate the relevant comment on Phabricator]. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 13:12, 21 December 2025 (UTC) :The simple implementation for {{Z|30737}} is failing with [[Z516]], even though I can get a (correct) result by [https://www.wikifunctions.org/view/en/Z12681?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z12681%22%2C%22Z12681K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22475%22%2C%22Z22475K1%22%3A%7B%22Z1K1%22%3A%22Z39%22%2C%22Z39K1%22%3A%22K1%22%7D%2C%22Z22475K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30260%22%2C%22Z30260K1%22%3A%5B%22Z6095%22%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L100%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L101%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L102%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L103%22%7D%5D%2C%22Z30260K2%22%3A%5B%22Z6030%22%2C%22Z6031%22%5D%2C%22Z30260K3%22%3A%5B%22Z60%22%5D%2C%22Z30260K4%22%3A%5B%22Z6092%22%5D%7D%7D%7D calling those functions on the test input]. Oddly enough [https://www.wikifunctions.org/view/en/Z12681?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z12681%22%2C%22Z12681K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22475%22%2C%22Z22475K1%22%3A%7B%22Z1K1%22%3A%22Z39%22%2C%22Z39K1%22%3A%22K1%22%7D%2C%22Z22475K2%22%3A%7B%22Z1K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z883%22%2C%22Z883K1%22%3A%22Z1%22%2C%22Z883K2%22%3A%22Z1%22%7D%2C%22K1%22%3A%5B%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z882%22%2C%22Z882K1%22%3A%22Z1%22%2C%22Z882K2%22%3A%22Z1%22%7D%2C%7B%22Z1K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z882%22%2C%22Z882K1%22%3A%22Z1%22%2C%22Z882K2%22%3A%22Z1%22%7D%2C%22K1%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%226%22%7D%2C%22K2%22%3A%22Abacus%22%7D%5D%7D%7D%7D a trivial input] causes that to fail with the same error. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:43, 26 December 2025 (UTC) ::Sorry, I missed this one. Initial validation rejects a map with {{Z|Z1}} as its key type. Although it’s not guaranteed to be hashable, [[Z1]] should probably be admitted as a placeholder {{Z|Z4}}. In any event, using {{Z|Z6}} as the alternative seems to work and does not restrict the map to having only Strings for keys (as seen in {{Z|Z30906}}, where the keys have {{Z|Z39}} for their Type). [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 09:18, 31 December 2025 (UTC) :::[[Z30907|Documented]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:50, 31 December 2025 (UTC) :The implementation for {{Z|29183}} is slightly incorrect, it needs to subtract 9 on the condition that variable <code>add</code> is &gt;9 (tests &gt;10 currently). For me to change {{Z|29185}}, the implementation needs to be disconnected from {{Z|29183}} by a functioneer ([[Special:ListUsers/functioneer]]) first. The english wiki also warns about using negative values as input for the modulo operation, so, in addition, the result computation should be rephrased to be <syntaxhighlight lang="python"> def intdivceil(x, d): return x//d + (0 if x % d == 0 else 1) return 10 * intdivceil(sum, 10) - sum </syntaxhighlight> :I'd also like to have all test cases of {{Z|29183}} connected by a functioneer, after changes to {{Z|29185}} have been commited. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 21:54, 2 January 2026 (UTC) ::Disconnected. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 22:12, 2 January 2026 (UTC) :::Thanks, changes done - please reconnect. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 22:33, 2 January 2026 (UTC) ::::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 23:08, 2 January 2026 (UTC) :::Weird: {{Z|30940}} and {{Z|30941}} tests do not pass after the reconnect, although [https://www.wikifunctions.org/wiki/Special:RunFunction?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z29183%22%2C%22Z29183K1%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%2290544230009%22%7D%7D running them manually] produces the expected result. Judging from the timestamps within the detail view, pressing the Refresh-Button does not actually re-run the tests. :::It seems that their results have been generated with the previous function. Can you make an effort to dis- and reconnect these two tests? The (unconfirmed) presumption is that tests only run on demand (event-triggered vs time scheduled). If this is true it may be noteworthy in the [[WF:FAQ]]. :::The first test, {{Z|29184}}, did not exhibit the same problem, it has been updated as expected. Because the execution timestamps of all three tests do not vary greatly, they were probably triggered, correctly so, by the same event. In theory they should then have consequently worked on the same function - since the test results suggest different, there could have either been a race condition or a stale cache, eventually with some tests running before the action that triggered them was fully committed. If this is not a timing issue, the response to the connection event might miss to update some of the data structures associated with the connected tests and simply run them unchanged, but this is speculative. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 01:38, 3 January 2026 (UTC) ::::Yeah the cached failures are super annoying, I think they reduced the cache duration recently but it's still too high IMO. Disconnecting and reconnecting the Implementation triggered them to run again. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:16, 3 January 2026 (UTC) :Can somebody connect the tests and implementation of this function? [[Z31047|arithmetical average of numbers (Z31047)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 04:35, 13 January 2026 (UTC) ::The implementation seems to fail all the tests. I suspect from the use of <code>{}</code> in Python code. Besides, on the implementation ({{Z|Z31048}}), it used <code>sum</code> as variable, which I don't think allowable in Python. Try to use another variable name. Last, what is the expected result of {{Z|Z31050}}? [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 04:50, 13 January 2026 (UTC) :::Sorry, @[[User:Sys64ish|Sys64ish]], I just got the expected result from {{Z|31050}}. I have connected the test cases, but not yet for the implementation as you may want to fix it first(?) [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 05:05, 13 January 2026 (UTC) ::::Fixed it, passes tests [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 05:09, 13 January 2026 (UTC) :::::{{Done}} connected! [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 05:11, 13 January 2026 (UTC) :When I go to add a test to this function, for some reason I cannot select a fixed value for the expected value, the type is fixed to a function call. Can somebody fix this? [[Z31051|graph a one parameter function (Z31051)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 06:16, 13 January 2026 (UTC) ::You need to select an equality function, which in this case would be {{Z|889}} with {{Z|20924}} as an argument. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 09:59, 13 January 2026 (UTC) :::Just what I was about to say, only shorter! :::I had a look at the Python implementation and that doesn’t appear to be viable, because a {{Z|Z8}} object is data, not a callable Python function. I think a composition is the only option here, but we don’t appear to have a [[Special:Search/:"z8k2 z1k1 z7 z7k1 z881 z881k1 Z20838"|generator function for ]]{{Z|Z20838}} yet ([[Special:Search/:"z8k2 z1k1 z7 z7k1 z881 z881k1 z19677"|nor for rationals]]). [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:39, 13 January 2026 (UTC) :Can somebody connect the tests and implementations of this function? [[Z31079|decimal number range (Z31079)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 13:57, 14 January 2026 (UTC) ::I’ve connected the test but there are a few issues with the implementation. The function has no return and the list to return shouldn’t be called range, as that overwrites the built-in range() function. Wikifunctions.Error requires a list of strings and you should probably guard against K3 being zero. Just let us know if you need any help with this. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 14:22, 14 January 2026 (UTC) :::I think I fixed the implementation [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 14:28, 14 January 2026 (UTC) ::::Looks close. You probably want to *return* Wikifunctions.Error in order to halt execution. The K1 and K2 arguments are float64s rather than strings, so they need coercing to str for the error. You still risk a divide by zero if K3 has no guard. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 14:48, 14 January 2026 (UTC) :::::I fixed it now, tests are passing(?) and when I run it locally it works as intended. [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 02:22, 15 January 2026 (UTC) ::::::{{done}} ::::::I created {{Z|31093}} to fix the last test, since your Python implementation was returning slightly inaccurate values for [[w:en:Floating-point_arithmetic#Accuracy_problems|reasons]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:11, 15 January 2026 (UTC) :Can somebody connect the impl. and test cases of these functions? [[Z31051|generate real (float64) list from a function (Z31051)]] [[Z31111|increment (float64) (Z31111)]] [[Z31116|decrement (float64) (Z31116)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 00:11, 16 January 2026 (UTC) ::Mostly. I see {{Z|Z31051}} has its Minimum and Maximum defined as integers rather than float64, as defined for the generator. Something has to change here, and I’m guessing it’s [[Z31051]], so I disconnected its implementation again. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 01:31, 16 January 2026 (UTC) :::all inputs except the input for the function are now float64 [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 13:36, 16 January 2026 (UTC) ::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 15:07, 16 January 2026 (UTC) : Can someone here connect the implementation and test cases of this function: [[Z18679|Malay cardinal to ordinal]]? {{User|Hakimi97}} :: {{Done}} [[User:Sys64ish|Sys32ish]] ([[User talk:Sys32ish|talk]]) 09:16, 19 January 2026 (UTC) :Can someone please add the following IPA symbols needed for {{Z|Z1099}} to <code>lookup</code> in the JavaScript implementation {{Z|Z29880}}? : "ɐ": "Q503323", : "u": "Q29653", : "ɕ": "Q605116", : "x": "Q271603", : "ʑ": "Q684085", : "ɣ": "Q654670", : "ʀ": "Q864677", : "χ": "Q849796", : "ʁ": "Q1054276", : "o": "Q862579", : "æ": "Q740768", : "ɪ": "Q1070049", : "ʊ": "Q1137807", :Thank you! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 20:23, 27 February 2026 (UTC) ::I forgot to mention the ligatures ::"ʤ": "Q778145", ::"ʧ": "Q518603", ::which could be put next to the already present ::"dʒ": "Q778145", ::"tʃ": "Q518603", ::--[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 20:24, 27 February 2026 (UTC) ::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 00:33, 28 February 2026 (UTC) :::Thank you! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 08:59, 28 February 2026 (UTC) : Can someone connect up [[Z31844]] and [[Z31837]]. These are better than the other implementations on their pages. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 09:04, 1 March 2026 (UTC) ::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:12, 1 March 2026 (UTC) :Hello, please connect {{Z|Z31729}}'s implementation and test cases. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 10:48, 8 March 2026 (UTC) ::The implementation does not seem to pass any of the test case. If you click on the [[File:Icon Information.svg|Icon_Information|15px|class=skin-invert-image]] (i) icon on the test status, you can find the error, what the implementation output, etc. Try to fix the implementation first. Thanks! [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 11:22, 8 March 2026 (UTC) ::It seems you're returning a string value when it expects a HTML fragment. HTML fragment and string are different. Maybe you can change the output type to string? [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 11:44, 10 March 2026 (UTC) :::Thanks for running the tests, @[[User:NikolasKHF|NikolasKHF]]; I couldn’t run them on my own (seemingly because I don’t have the needed right). I will fix the errors. :::Thanks for looking into this, @[[User:Sys64ish|Sys64ish]]. I actually did want to return an HTML fragment instead of a string because I think that would be more useful on the wikis. However, it looks like I forgot to convert the string for most cases where an output is returned (hence why only one test failure actually complains about the output value being incorrect). [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 19:52, 10 March 2026 (UTC) :::I have fixed the errors and added a new test case. Please connect the implementation and all the test cases now. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 10:23, 28 March 2026 (UTC) :Can someone connect [[Z31994]] and [[Z31999]] with its tests and implementations. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:41, 11 March 2026 (UTC) ::{{done}} [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 08:49, 11 March 2026 (UTC) :::Oh yeah I also made another function now, [[Z32004]]. Can someone connect its implementations and tests. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 09:02, 11 March 2026 (UTC) ::::{{done}} [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 09:23, 11 March 2026 (UTC) :Can someone connect up [[Z32013]]. Also how do you become able to connect and disconnect implementations? Is it only available to extended confirmed users? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 10:06, 12 March 2026 (UTC) ::I don’t believe this implementation should be connected at this time. The existing Python implementation respects the community consensus represented by the test cases connected to {{Z|Z24144}}. What do you think, @[[User:99of9|99of9]]? [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:28, 12 March 2026 (UTC) :::Fair, I didn't realise the test cases served as implicit consensus. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 11:42, 12 March 2026 (UTC) ::::No worries. It’s not clearly articulated, but we’ll clarify that later. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:51, 12 March 2026 (UTC) :::I'm not sure. At the moment it correctly reproduces all those we got "consensus" for. So in some sense this implementation is just suggesting/assuming extra fallbacks for those we haven't properly considered? One option would be to connect it and then add counter test cases if we ever felt we didn't like it's current suggestions. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 00:30, 13 March 2026 (UTC) ::::We should be careful… It’s not easy to tell how many test case results would be affected. It’s easy enough to disconnect again, of course, so I’m happy to give it a go while activity in this domain is at a low ebb. {{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:04, 13 March 2026 (UTC) ::To connect implementations, you need Functioneer rights, which can be requested here [[Wikifunctions:Requests for user groups]]. There is a 48-hour waiting period. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:32, 12 March 2026 (UTC) :Can someone connect up [[Z32027]] with its implementation and test? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:29, 13 March 2026 (UTC) ::And also [[Z32031]]. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 10:16, 13 March 2026 (UTC) :::{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:51, 13 March 2026 (UTC) ::{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:50, 13 March 2026 (UTC) {{tracked|T419920|resolved}} :What is wrong with my implementation at [[Z32055]]? Looking at the failed test, it returns an error because 'dict' has no attribute 'split', but I didn't use split anywhere in my code. What is the issue? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 01:38, 14 March 2026 (UTC) ::I think that error message is coming from the [[Z20424|type converter]]. I think <code>Z20424K1['Z20420K2']['Z20342K1']</code> would be a dictionary representing a {{Z|16098}} but the code is written as though it were a string? Neither Python nor type converters are in my wheelhouse. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:49, 14 March 2026 (UTC) :::I think this is [[:phab:T419920]] and presumed to be a consequence of this week’s rollout of “v2”. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:08, 14 March 2026 (UTC) ::The type converter issue has gone away, but your Implementation doesn't quite match the tests (and composition), so I've disconnected it again. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:54, 20 March 2026 (UTC) :What is wrong with my implementation at {{Z|Z32851}}? Btw, it would be really useful if errors said which dependency produced the error, instead of just saying "Error in evaluation". [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 07:18, 28 March 2026 (UTC) ::You were catching the wrong {{Z|50}}, but then the error should have bubbled up so you could see it. I think there's something broken in the site w/ {{Z|11}} right now since [[Z32804|I ran into a similar problem yesterday]]. (And to contradict my note there, while debugging your implementation I saw the same behaviour regardless of if I used [[Z26107]] or a literal Z11, so it must be a bug in WikiLambda.) [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 08:14, 28 March 2026 (UTC) ==== Connection / Disconnection requests ==== Can someone connect {{Z|32068}} and {{Z|15974}} to their tests and implementations. Thanks in advance. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 23:24, 14 March 2026 (UTC) :In the first function, there’s some issue with Maybe but I don’t think that’s the implementation. But I do think the error-handling for Maybe needs fixing. I’ll check back tomorrow and dig deeper if need be. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 23:48, 14 March 2026 (UTC) ::I fixed the error raising and checking, but the test is still failing for some reason? [[phab:T419920]] again? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 23:54, 14 March 2026 (UTC) :::It certainly looks like a conversion failure going into {{Z|Z22123}}. I made a [[Z32083|new implementation]] of {{Z|Z22120}} which is now “preferred”. If everything behaves itself, [[Z22123]] can be reconnected. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 17:24, 15 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:56, 20 March 2026 (UTC) Can someone connect {{Z|32208}}, {{Z|32199}}, and {{Z|32204}}'s testcases and implementations? thanks in advance! --[[User:VivianIsBee|VivianIsBee]] ([[User talk:VivianIsBee|talk]]) 14:33, 20 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:48, 20 March 2026 (UTC) Can someone connect {{Z|32355}}'s testcases and implementations? Thanks in advance! [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 08:15, 22 March 2026 (UTC) :I haven't connected the implementation yet, because it doesn't seem to pass any of the test cases. If the implementation has any issues, then fix them first. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:24, 22 March 2026 (UTC) ::Thanks. I fixed. One testcase has passed now. But another testcase still says "The lexeme doesn't have forms" although I added a lexical form about 20 hour ago. I suppose cashed data may not have been refreshed yet. So can you please connect implementation so that I can check precisely? [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 05:47, 23 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:32, 23 March 2026 (UTC) Can someone connect {{Z|32442}}'s testcases and implementations? Thanks in advance! [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 22:38, 23 March 2026 (UTC) :Did you mean to include spaces between "words" with your Implementation, or was that a copy-paste error? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 05:24, 24 March 2026 (UTC) ::Thanks. That's a copy-paste error. I deleted one space.[[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 06:55, 24 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 09:48, 24 March 2026 (UTC) Request to connect {{Z|32212}}, {{Z|32213}}, {{Z|32214}}, {{Z|32216}}, and {{Z|32240}}, all related to defining role sentence in Chinese for all variants. [[User:1F616EMO|1F616EMO]] ([[User talk:1F616EMO|talk]]) 03:21, 24 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 05:28, 24 March 2026 (UTC) Can someone disconnect {{Z|10816}}'s Python implementation? Need to fix one of the test case errors. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 19:47, 26 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 19:59, 26 March 2026 (UTC) ::Fixed the Python implementation, if anyone could reconnect that again. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 20:11, 26 March 2026 (UTC) :::Noting that this was reconnected. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 14:40, 27 March 2026 (UTC) Can someone please disconnect {{Z|26574}}? It needs to be edited to add the Bengali equivalent of a period to the end of the sentence. Thanks. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 10:59, 28 March 2026 (UTC) :Disconnected. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 11:05, 28 March 2026 (UTC) ==== [[WF:HL]] ==== I have recently drafted some revamps of [[Wikifunctions:Human languages]] ([[User:Xeroctic/Human languages]]) and [[Wikifunctions:Reserved ZIDs]] ([[User:Xeroctic/Reserved ZIDs]]) in my userspace, and I think they are ready to replace the originals. I have not included translation tags for HL (which would be entirely different) and they need major modification for RZIDs to add or re-add them, so I would like that to be done as well. — [[User:Xeroctic|Xeroctic]] ([[User talk:Xeroctic|talk]]) 16:39, 3 November 2025 (UTC) : {{s}} since Xeroctic's versions improve readability. — [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 11:17, 24 November 2025 (UTC) :: Restoring this unresolved thread which was archived in oldid 237379. — [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 14:36, 16 January 2026 (UTC) :[[WF:Human languages]]: Copying the categorisation from enWiktionary seems like a good idea. I don't understand why this page is separate from [[WF:Catalogue/Natural language operations]] though? (time/happenstance? [[WT:Human_languages#proposal|previous disc.]]) Redlinks to cataloguing subpages will remain red unless and until someone makes an NLG function in that language. :[[WF:Reserved ZIDs]]: Using the live labels is an obvious improvement. I appreciate it being kept up-to-date. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:55, 16 January 2026 (UTC) :{{support}} per Arlo Barnes and YoshiRulz [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 01:11, 11 March 2026 (UTC) :{{support}} Let’s do this already. --[[User:Mormegil|Mormegil]] ([[User talk:Mormegil|talk]]) 08:33, 27 March 2026 (UTC) l1fsswkk1oitdna8cu4f68l6k8idvsc 261478 261471 2026-03-28T11:09:36Z Redmin 52094 /* Connection / Disconnection requests */ Reply 261478 wikitext text/x-wiki <div style="border:1px solid grey; margin:1em 4em 2em; padding:1.5em 1em;"> <span style="font-size:2em;">Welcome to the '''community portal for Wikifunctions'''!</span> This is the central place to document Wikifunctions's to-do lists and ongoing project work. [To-do!] [[Special:MyLanguage/Wikifunctions:Catalogue|The catalogue of functions]] is a good place to start. For discussions, see [[Wikifunctions:Project chat]]. [[Category:Project]] </div> == Useful links == * [[Wikifunctions:List of policies and guidelines]] * [[Special:MyLanguage/Help:Contents|Help:Contents]] * [[Special:MyLanguage/Wikifunctions:Catalogue|Wikifunctions:Catalogue of functions]] ** [[Wikifunctions:Suggest a function]] * [[Wikifunctions:Type proposals]] * [[Special:MyLanguage/Wikifunctions:User scripts|Wikifunctions:User scripts]] * [[Wikifunctions:Requests for user groups]] * [[Wikifunctions:Requests for deletions]] == Noticeboards == * [[Wikifunctions:Project chat]] * [[Wikifunctions:Administrators' noticeboard]] * [[Wikifunctions:Report vandalism]] * [[Wikifunctions:Translators' noticeboard]] == Task centre == === Perennial tasks === <!--Feel free to add new tasks to this section. However, if they are one-off requests, please add them to Tasks listed by users--> * [[File:OOjs UI icon language-ltr.svg|class=skin-invert]] [[Special:MyLanguage/Help:Multilingual|Translation]]: **[[Special:Random|Add a translation to a random object]] **[[Special:MyLanguage/Category:Policy|Add a translation to a policy page]] **[[Special:ListMissingLabels|See any objects without a label in a given language]] **[[Special:PageTranslation]] **[[Special:LanguageStats|Language statistics]] *[[File:Octicons-tools.svg|15px|class=skin-invert]] [[:Category:Tracking categories|Tracking categories]] * [[File:Octicons-tools.svg|15px|class=skin-invert]] [[Wikifunctions:Request for cleanup|Requests for cleanup]] === Tasks listed by users === :''Example:'' :* Fix [[Special:Random|this implementation]] please. {{User|Example2}} ::{{Done}}. Thanks for pointing that out! {{User|Example}} <hr/> [signing to enable reply link:--[[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:27, 6 May 2024 (UTC) :Heya, I tried to make a {{Z|Z29010}} implementation in composition <small>({{Z|Z29012}})</small>, but it errors out: <code>Unable to convert to canonical form (path to the problem: "Z22K2.K1.K1.K2.Z5K2.Z528K1.Z99K1.Z7K1.Z8K4.[ 1 ].Z14K2.Z26107K2.Z21394K1.[ 1 ].Z10771K1.Z23753K2.Z18K1.{&quot;Z1K1&quot;:&quot;Z18&quot;,&quot;Z6K1&quot;:&quot;Z29010K5&quot;,&quot;Z18K1&quot;:&quot;&quot;}")</code> - why does this happen, and how would I fix it? I tried to use {{Z|Z28030}} as a guide, but for a first dive into composition I may have taken on something a bit large. [[User:Infernostars|infernostars]] <small>([[User talk:Infernostars|talk]]) ([[Special:Contributions/Infernostars|contribs]])</small> 02:49, 23 October 2025 (UTC) ::When you go to {{Z|Z29012}} you'll see two red words "Function" and "Wikidata item". Both of those were not set in the composition, so it is missing information. There may be more deeper problems, but fix this first. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 03:33, 23 October 2025 (UTC) ::{{done}} Works now, seemed to be just a couple typos. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:14, 24 December 2025 (UTC) :Please connect the tests and implementation for {{Z|29750}}. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:33, 25 November 2025 (UTC) ::This ^ was done, so thanks for that, and I've now built a new function around it that's ready to be connected: {{Z|29749}}<!-- --><br>Having fallbacks to other languages and indicating such does of course raise the question of ''when'' it should be indicated, and I certainly don't have the answer, so I might leave this message here for the multilingual among you to see it and chime in. Either on [[Talk:Z24144]], or by way of adding a test case on one of these functions. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:42, 25 November 2025 (UTC) :::If it’s about the way labels in fallback languages are displayed, perhaps the [[Talk:Z21583|Discussion page]] for {{Z|Z21583}} would be a better location? There has been some discussion at [[Wikifunctions talk:Abstract Wikipedia/2025 fragment experiments#Proposed recommendation: Fragments should return Z11/monolingual strings]]. (The spinoff, [[Wikifunctions talk:Abstract Wikipedia/2025 fragment experiments#Fallbacks]], might also be relevant.) [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 15:23, 25 November 2025 (UTC) :Now that raising and catching errors has better support, [[Z28159]] should take an {{Z|50}} instead of a ZID {{Z|6}}. Unfortunately it's already been used in other functions so it might be a pain to change. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 07:20, 21 December 2025 (UTC) ::Yes. I think this gets fixed along with {{Z|Z28162}}, which is listed in [[Wikifunctions:Request for cleanup#Function:(!) throw error (Z28154)]]. ::@[[User:Dv103|Dv103]] I was thinking we might just wrap {{Z|851}}? Custom errors will support only strings for the foreseeable future, as I understand it [can’t currently locate the relevant comment on Phabricator]. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 13:12, 21 December 2025 (UTC) :The simple implementation for {{Z|30737}} is failing with [[Z516]], even though I can get a (correct) result by [https://www.wikifunctions.org/view/en/Z12681?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z12681%22%2C%22Z12681K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22475%22%2C%22Z22475K1%22%3A%7B%22Z1K1%22%3A%22Z39%22%2C%22Z39K1%22%3A%22K1%22%7D%2C%22Z22475K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30260%22%2C%22Z30260K1%22%3A%5B%22Z6095%22%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L100%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L101%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L102%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L103%22%7D%5D%2C%22Z30260K2%22%3A%5B%22Z6030%22%2C%22Z6031%22%5D%2C%22Z30260K3%22%3A%5B%22Z60%22%5D%2C%22Z30260K4%22%3A%5B%22Z6092%22%5D%7D%7D%7D calling those functions on the test input]. Oddly enough [https://www.wikifunctions.org/view/en/Z12681?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z12681%22%2C%22Z12681K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22475%22%2C%22Z22475K1%22%3A%7B%22Z1K1%22%3A%22Z39%22%2C%22Z39K1%22%3A%22K1%22%7D%2C%22Z22475K2%22%3A%7B%22Z1K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z883%22%2C%22Z883K1%22%3A%22Z1%22%2C%22Z883K2%22%3A%22Z1%22%7D%2C%22K1%22%3A%5B%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z882%22%2C%22Z882K1%22%3A%22Z1%22%2C%22Z882K2%22%3A%22Z1%22%7D%2C%7B%22Z1K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z882%22%2C%22Z882K1%22%3A%22Z1%22%2C%22Z882K2%22%3A%22Z1%22%7D%2C%22K1%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%226%22%7D%2C%22K2%22%3A%22Abacus%22%7D%5D%7D%7D%7D a trivial input] causes that to fail with the same error. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:43, 26 December 2025 (UTC) ::Sorry, I missed this one. Initial validation rejects a map with {{Z|Z1}} as its key type. Although it’s not guaranteed to be hashable, [[Z1]] should probably be admitted as a placeholder {{Z|Z4}}. In any event, using {{Z|Z6}} as the alternative seems to work and does not restrict the map to having only Strings for keys (as seen in {{Z|Z30906}}, where the keys have {{Z|Z39}} for their Type). [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 09:18, 31 December 2025 (UTC) :::[[Z30907|Documented]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:50, 31 December 2025 (UTC) :The implementation for {{Z|29183}} is slightly incorrect, it needs to subtract 9 on the condition that variable <code>add</code> is &gt;9 (tests &gt;10 currently). For me to change {{Z|29185}}, the implementation needs to be disconnected from {{Z|29183}} by a functioneer ([[Special:ListUsers/functioneer]]) first. The english wiki also warns about using negative values as input for the modulo operation, so, in addition, the result computation should be rephrased to be <syntaxhighlight lang="python"> def intdivceil(x, d): return x//d + (0 if x % d == 0 else 1) return 10 * intdivceil(sum, 10) - sum </syntaxhighlight> :I'd also like to have all test cases of {{Z|29183}} connected by a functioneer, after changes to {{Z|29185}} have been commited. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 21:54, 2 January 2026 (UTC) ::Disconnected. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 22:12, 2 January 2026 (UTC) :::Thanks, changes done - please reconnect. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 22:33, 2 January 2026 (UTC) ::::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 23:08, 2 January 2026 (UTC) :::Weird: {{Z|30940}} and {{Z|30941}} tests do not pass after the reconnect, although [https://www.wikifunctions.org/wiki/Special:RunFunction?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z29183%22%2C%22Z29183K1%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%2290544230009%22%7D%7D running them manually] produces the expected result. Judging from the timestamps within the detail view, pressing the Refresh-Button does not actually re-run the tests. :::It seems that their results have been generated with the previous function. Can you make an effort to dis- and reconnect these two tests? The (unconfirmed) presumption is that tests only run on demand (event-triggered vs time scheduled). If this is true it may be noteworthy in the [[WF:FAQ]]. :::The first test, {{Z|29184}}, did not exhibit the same problem, it has been updated as expected. Because the execution timestamps of all three tests do not vary greatly, they were probably triggered, correctly so, by the same event. In theory they should then have consequently worked on the same function - since the test results suggest different, there could have either been a race condition or a stale cache, eventually with some tests running before the action that triggered them was fully committed. If this is not a timing issue, the response to the connection event might miss to update some of the data structures associated with the connected tests and simply run them unchanged, but this is speculative. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 01:38, 3 January 2026 (UTC) ::::Yeah the cached failures are super annoying, I think they reduced the cache duration recently but it's still too high IMO. Disconnecting and reconnecting the Implementation triggered them to run again. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:16, 3 January 2026 (UTC) :Can somebody connect the tests and implementation of this function? [[Z31047|arithmetical average of numbers (Z31047)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 04:35, 13 January 2026 (UTC) ::The implementation seems to fail all the tests. I suspect from the use of <code>{}</code> in Python code. Besides, on the implementation ({{Z|Z31048}}), it used <code>sum</code> as variable, which I don't think allowable in Python. Try to use another variable name. Last, what is the expected result of {{Z|Z31050}}? [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 04:50, 13 January 2026 (UTC) :::Sorry, @[[User:Sys64ish|Sys64ish]], I just got the expected result from {{Z|31050}}. I have connected the test cases, but not yet for the implementation as you may want to fix it first(?) [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 05:05, 13 January 2026 (UTC) ::::Fixed it, passes tests [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 05:09, 13 January 2026 (UTC) :::::{{Done}} connected! [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 05:11, 13 January 2026 (UTC) :When I go to add a test to this function, for some reason I cannot select a fixed value for the expected value, the type is fixed to a function call. Can somebody fix this? [[Z31051|graph a one parameter function (Z31051)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 06:16, 13 January 2026 (UTC) ::You need to select an equality function, which in this case would be {{Z|889}} with {{Z|20924}} as an argument. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 09:59, 13 January 2026 (UTC) :::Just what I was about to say, only shorter! :::I had a look at the Python implementation and that doesn’t appear to be viable, because a {{Z|Z8}} object is data, not a callable Python function. I think a composition is the only option here, but we don’t appear to have a [[Special:Search/:"z8k2 z1k1 z7 z7k1 z881 z881k1 Z20838"|generator function for ]]{{Z|Z20838}} yet ([[Special:Search/:"z8k2 z1k1 z7 z7k1 z881 z881k1 z19677"|nor for rationals]]). [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:39, 13 January 2026 (UTC) :Can somebody connect the tests and implementations of this function? [[Z31079|decimal number range (Z31079)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 13:57, 14 January 2026 (UTC) ::I’ve connected the test but there are a few issues with the implementation. The function has no return and the list to return shouldn’t be called range, as that overwrites the built-in range() function. Wikifunctions.Error requires a list of strings and you should probably guard against K3 being zero. Just let us know if you need any help with this. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 14:22, 14 January 2026 (UTC) :::I think I fixed the implementation [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 14:28, 14 January 2026 (UTC) ::::Looks close. You probably want to *return* Wikifunctions.Error in order to halt execution. The K1 and K2 arguments are float64s rather than strings, so they need coercing to str for the error. You still risk a divide by zero if K3 has no guard. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 14:48, 14 January 2026 (UTC) :::::I fixed it now, tests are passing(?) and when I run it locally it works as intended. [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 02:22, 15 January 2026 (UTC) ::::::{{done}} ::::::I created {{Z|31093}} to fix the last test, since your Python implementation was returning slightly inaccurate values for [[w:en:Floating-point_arithmetic#Accuracy_problems|reasons]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:11, 15 January 2026 (UTC) :Can somebody connect the impl. and test cases of these functions? [[Z31051|generate real (float64) list from a function (Z31051)]] [[Z31111|increment (float64) (Z31111)]] [[Z31116|decrement (float64) (Z31116)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 00:11, 16 January 2026 (UTC) ::Mostly. I see {{Z|Z31051}} has its Minimum and Maximum defined as integers rather than float64, as defined for the generator. Something has to change here, and I’m guessing it’s [[Z31051]], so I disconnected its implementation again. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 01:31, 16 January 2026 (UTC) :::all inputs except the input for the function are now float64 [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 13:36, 16 January 2026 (UTC) ::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 15:07, 16 January 2026 (UTC) : Can someone here connect the implementation and test cases of this function: [[Z18679|Malay cardinal to ordinal]]? {{User|Hakimi97}} :: {{Done}} [[User:Sys64ish|Sys32ish]] ([[User talk:Sys32ish|talk]]) 09:16, 19 January 2026 (UTC) :Can someone please add the following IPA symbols needed for {{Z|Z1099}} to <code>lookup</code> in the JavaScript implementation {{Z|Z29880}}? : "ɐ": "Q503323", : "u": "Q29653", : "ɕ": "Q605116", : "x": "Q271603", : "ʑ": "Q684085", : "ɣ": "Q654670", : "ʀ": "Q864677", : "χ": "Q849796", : "ʁ": "Q1054276", : "o": "Q862579", : "æ": "Q740768", : "ɪ": "Q1070049", : "ʊ": "Q1137807", :Thank you! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 20:23, 27 February 2026 (UTC) ::I forgot to mention the ligatures ::"ʤ": "Q778145", ::"ʧ": "Q518603", ::which could be put next to the already present ::"dʒ": "Q778145", ::"tʃ": "Q518603", ::--[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 20:24, 27 February 2026 (UTC) ::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 00:33, 28 February 2026 (UTC) :::Thank you! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 08:59, 28 February 2026 (UTC) : Can someone connect up [[Z31844]] and [[Z31837]]. These are better than the other implementations on their pages. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 09:04, 1 March 2026 (UTC) ::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:12, 1 March 2026 (UTC) :Hello, please connect {{Z|Z31729}}'s implementation and test cases. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 10:48, 8 March 2026 (UTC) ::The implementation does not seem to pass any of the test case. If you click on the [[File:Icon Information.svg|Icon_Information|15px|class=skin-invert-image]] (i) icon on the test status, you can find the error, what the implementation output, etc. Try to fix the implementation first. Thanks! [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 11:22, 8 March 2026 (UTC) ::It seems you're returning a string value when it expects a HTML fragment. HTML fragment and string are different. Maybe you can change the output type to string? [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 11:44, 10 March 2026 (UTC) :::Thanks for running the tests, @[[User:NikolasKHF|NikolasKHF]]; I couldn’t run them on my own (seemingly because I don’t have the needed right). I will fix the errors. :::Thanks for looking into this, @[[User:Sys64ish|Sys64ish]]. I actually did want to return an HTML fragment instead of a string because I think that would be more useful on the wikis. However, it looks like I forgot to convert the string for most cases where an output is returned (hence why only one test failure actually complains about the output value being incorrect). [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 19:52, 10 March 2026 (UTC) :::I have fixed the errors and added a new test case. Please connect the implementation and all the test cases now. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 10:23, 28 March 2026 (UTC) :Can someone connect [[Z31994]] and [[Z31999]] with its tests and implementations. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:41, 11 March 2026 (UTC) ::{{done}} [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 08:49, 11 March 2026 (UTC) :::Oh yeah I also made another function now, [[Z32004]]. Can someone connect its implementations and tests. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 09:02, 11 March 2026 (UTC) ::::{{done}} [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 09:23, 11 March 2026 (UTC) :Can someone connect up [[Z32013]]. Also how do you become able to connect and disconnect implementations? Is it only available to extended confirmed users? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 10:06, 12 March 2026 (UTC) ::I don’t believe this implementation should be connected at this time. The existing Python implementation respects the community consensus represented by the test cases connected to {{Z|Z24144}}. What do you think, @[[User:99of9|99of9]]? [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:28, 12 March 2026 (UTC) :::Fair, I didn't realise the test cases served as implicit consensus. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 11:42, 12 March 2026 (UTC) ::::No worries. It’s not clearly articulated, but we’ll clarify that later. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:51, 12 March 2026 (UTC) :::I'm not sure. At the moment it correctly reproduces all those we got "consensus" for. So in some sense this implementation is just suggesting/assuming extra fallbacks for those we haven't properly considered? One option would be to connect it and then add counter test cases if we ever felt we didn't like it's current suggestions. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 00:30, 13 March 2026 (UTC) ::::We should be careful… It’s not easy to tell how many test case results would be affected. It’s easy enough to disconnect again, of course, so I’m happy to give it a go while activity in this domain is at a low ebb. {{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:04, 13 March 2026 (UTC) ::To connect implementations, you need Functioneer rights, which can be requested here [[Wikifunctions:Requests for user groups]]. There is a 48-hour waiting period. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:32, 12 March 2026 (UTC) :Can someone connect up [[Z32027]] with its implementation and test? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:29, 13 March 2026 (UTC) ::And also [[Z32031]]. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 10:16, 13 March 2026 (UTC) :::{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:51, 13 March 2026 (UTC) ::{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:50, 13 March 2026 (UTC) {{tracked|T419920|resolved}} :What is wrong with my implementation at [[Z32055]]? Looking at the failed test, it returns an error because 'dict' has no attribute 'split', but I didn't use split anywhere in my code. What is the issue? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 01:38, 14 March 2026 (UTC) ::I think that error message is coming from the [[Z20424|type converter]]. I think <code>Z20424K1['Z20420K2']['Z20342K1']</code> would be a dictionary representing a {{Z|16098}} but the code is written as though it were a string? Neither Python nor type converters are in my wheelhouse. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:49, 14 March 2026 (UTC) :::I think this is [[:phab:T419920]] and presumed to be a consequence of this week’s rollout of “v2”. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:08, 14 March 2026 (UTC) ::The type converter issue has gone away, but your Implementation doesn't quite match the tests (and composition), so I've disconnected it again. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:54, 20 March 2026 (UTC) :What is wrong with my implementation at {{Z|Z32851}}? Btw, it would be really useful if errors said which dependency produced the error, instead of just saying "Error in evaluation". [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 07:18, 28 March 2026 (UTC) ::You were catching the wrong {{Z|50}}, but then the error should have bubbled up so you could see it. I think there's something broken in the site w/ {{Z|11}} right now since [[Z32804|I ran into a similar problem yesterday]]. (And to contradict my note there, while debugging your implementation I saw the same behaviour regardless of if I used [[Z26107]] or a literal Z11, so it must be a bug in WikiLambda.) [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 08:14, 28 March 2026 (UTC) ==== Connection / Disconnection requests ==== Can someone connect {{Z|32068}} and {{Z|15974}} to their tests and implementations. Thanks in advance. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 23:24, 14 March 2026 (UTC) :In the first function, there’s some issue with Maybe but I don’t think that’s the implementation. But I do think the error-handling for Maybe needs fixing. I’ll check back tomorrow and dig deeper if need be. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 23:48, 14 March 2026 (UTC) ::I fixed the error raising and checking, but the test is still failing for some reason? [[phab:T419920]] again? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 23:54, 14 March 2026 (UTC) :::It certainly looks like a conversion failure going into {{Z|Z22123}}. I made a [[Z32083|new implementation]] of {{Z|Z22120}} which is now “preferred”. If everything behaves itself, [[Z22123]] can be reconnected. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 17:24, 15 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:56, 20 March 2026 (UTC) Can someone connect {{Z|32208}}, {{Z|32199}}, and {{Z|32204}}'s testcases and implementations? thanks in advance! --[[User:VivianIsBee|VivianIsBee]] ([[User talk:VivianIsBee|talk]]) 14:33, 20 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:48, 20 March 2026 (UTC) Can someone connect {{Z|32355}}'s testcases and implementations? Thanks in advance! [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 08:15, 22 March 2026 (UTC) :I haven't connected the implementation yet, because it doesn't seem to pass any of the test cases. If the implementation has any issues, then fix them first. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:24, 22 March 2026 (UTC) ::Thanks. I fixed. One testcase has passed now. But another testcase still says "The lexeme doesn't have forms" although I added a lexical form about 20 hour ago. I suppose cashed data may not have been refreshed yet. So can you please connect implementation so that I can check precisely? [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 05:47, 23 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:32, 23 March 2026 (UTC) Can someone connect {{Z|32442}}'s testcases and implementations? Thanks in advance! [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 22:38, 23 March 2026 (UTC) :Did you mean to include spaces between "words" with your Implementation, or was that a copy-paste error? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 05:24, 24 March 2026 (UTC) ::Thanks. That's a copy-paste error. I deleted one space.[[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 06:55, 24 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 09:48, 24 March 2026 (UTC) Request to connect {{Z|32212}}, {{Z|32213}}, {{Z|32214}}, {{Z|32216}}, and {{Z|32240}}, all related to defining role sentence in Chinese for all variants. [[User:1F616EMO|1F616EMO]] ([[User talk:1F616EMO|talk]]) 03:21, 24 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 05:28, 24 March 2026 (UTC) Can someone disconnect {{Z|10816}}'s Python implementation? Need to fix one of the test case errors. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 19:47, 26 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 19:59, 26 March 2026 (UTC) ::Fixed the Python implementation, if anyone could reconnect that again. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 20:11, 26 March 2026 (UTC) :::Noting that this was reconnected. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 14:40, 27 March 2026 (UTC) Can someone please disconnect {{Z|26574}}? It needs to be edited to add the Bengali equivalent of a period to the end of the sentence. Thanks. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 10:59, 28 March 2026 (UTC) :Disconnected. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 11:05, 28 March 2026 (UTC) ::Thanks! And I am sorry forgot this before but the tests need to be fixed as well, could you please disconnect them, too? [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 11:09, 28 March 2026 (UTC) ==== [[WF:HL]] ==== I have recently drafted some revamps of [[Wikifunctions:Human languages]] ([[User:Xeroctic/Human languages]]) and [[Wikifunctions:Reserved ZIDs]] ([[User:Xeroctic/Reserved ZIDs]]) in my userspace, and I think they are ready to replace the originals. I have not included translation tags for HL (which would be entirely different) and they need major modification for RZIDs to add or re-add them, so I would like that to be done as well. — [[User:Xeroctic|Xeroctic]] ([[User talk:Xeroctic|talk]]) 16:39, 3 November 2025 (UTC) : {{s}} since Xeroctic's versions improve readability. — [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 11:17, 24 November 2025 (UTC) :: Restoring this unresolved thread which was archived in oldid 237379. — [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 14:36, 16 January 2026 (UTC) :[[WF:Human languages]]: Copying the categorisation from enWiktionary seems like a good idea. I don't understand why this page is separate from [[WF:Catalogue/Natural language operations]] though? (time/happenstance? [[WT:Human_languages#proposal|previous disc.]]) Redlinks to cataloguing subpages will remain red unless and until someone makes an NLG function in that language. :[[WF:Reserved ZIDs]]: Using the live labels is an obvious improvement. I appreciate it being kept up-to-date. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:55, 16 January 2026 (UTC) :{{support}} per Arlo Barnes and YoshiRulz [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 01:11, 11 March 2026 (UTC) :{{support}} Let’s do this already. --[[User:Mormegil|Mormegil]] ([[User talk:Mormegil|talk]]) 08:33, 27 March 2026 (UTC) or4f9yf4otqvk44lwewy1ycwuq5r3y4 261482 261478 2026-03-28T11:15:11Z ChaoticVermillion 31127 /* Connection / Disconnection requests */ Reply 261482 wikitext text/x-wiki <div style="border:1px solid grey; margin:1em 4em 2em; padding:1.5em 1em;"> <span style="font-size:2em;">Welcome to the '''community portal for Wikifunctions'''!</span> This is the central place to document Wikifunctions's to-do lists and ongoing project work. [To-do!] [[Special:MyLanguage/Wikifunctions:Catalogue|The catalogue of functions]] is a good place to start. For discussions, see [[Wikifunctions:Project chat]]. [[Category:Project]] </div> == Useful links == * [[Wikifunctions:List of policies and guidelines]] * [[Special:MyLanguage/Help:Contents|Help:Contents]] * [[Special:MyLanguage/Wikifunctions:Catalogue|Wikifunctions:Catalogue of functions]] ** [[Wikifunctions:Suggest a function]] * [[Wikifunctions:Type proposals]] * [[Special:MyLanguage/Wikifunctions:User scripts|Wikifunctions:User scripts]] * [[Wikifunctions:Requests for user groups]] * [[Wikifunctions:Requests for deletions]] == Noticeboards == * [[Wikifunctions:Project chat]] * [[Wikifunctions:Administrators' noticeboard]] * [[Wikifunctions:Report vandalism]] * [[Wikifunctions:Translators' noticeboard]] == Task centre == === Perennial tasks === <!--Feel free to add new tasks to this section. However, if they are one-off requests, please add them to Tasks listed by users--> * [[File:OOjs UI icon language-ltr.svg|class=skin-invert]] [[Special:MyLanguage/Help:Multilingual|Translation]]: **[[Special:Random|Add a translation to a random object]] **[[Special:MyLanguage/Category:Policy|Add a translation to a policy page]] **[[Special:ListMissingLabels|See any objects without a label in a given language]] **[[Special:PageTranslation]] **[[Special:LanguageStats|Language statistics]] *[[File:Octicons-tools.svg|15px|class=skin-invert]] [[:Category:Tracking categories|Tracking categories]] * [[File:Octicons-tools.svg|15px|class=skin-invert]] [[Wikifunctions:Request for cleanup|Requests for cleanup]] === Tasks listed by users === :''Example:'' :* Fix [[Special:Random|this implementation]] please. {{User|Example2}} ::{{Done}}. Thanks for pointing that out! {{User|Example}} <hr/> [signing to enable reply link:--[[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:27, 6 May 2024 (UTC) :Heya, I tried to make a {{Z|Z29010}} implementation in composition <small>({{Z|Z29012}})</small>, but it errors out: <code>Unable to convert to canonical form (path to the problem: "Z22K2.K1.K1.K2.Z5K2.Z528K1.Z99K1.Z7K1.Z8K4.[ 1 ].Z14K2.Z26107K2.Z21394K1.[ 1 ].Z10771K1.Z23753K2.Z18K1.{&quot;Z1K1&quot;:&quot;Z18&quot;,&quot;Z6K1&quot;:&quot;Z29010K5&quot;,&quot;Z18K1&quot;:&quot;&quot;}")</code> - why does this happen, and how would I fix it? I tried to use {{Z|Z28030}} as a guide, but for a first dive into composition I may have taken on something a bit large. [[User:Infernostars|infernostars]] <small>([[User talk:Infernostars|talk]]) ([[Special:Contributions/Infernostars|contribs]])</small> 02:49, 23 October 2025 (UTC) ::When you go to {{Z|Z29012}} you'll see two red words "Function" and "Wikidata item". Both of those were not set in the composition, so it is missing information. There may be more deeper problems, but fix this first. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 03:33, 23 October 2025 (UTC) ::{{done}} Works now, seemed to be just a couple typos. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:14, 24 December 2025 (UTC) :Please connect the tests and implementation for {{Z|29750}}. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:33, 25 November 2025 (UTC) ::This ^ was done, so thanks for that, and I've now built a new function around it that's ready to be connected: {{Z|29749}}<!-- --><br>Having fallbacks to other languages and indicating such does of course raise the question of ''when'' it should be indicated, and I certainly don't have the answer, so I might leave this message here for the multilingual among you to see it and chime in. Either on [[Talk:Z24144]], or by way of adding a test case on one of these functions. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:42, 25 November 2025 (UTC) :::If it’s about the way labels in fallback languages are displayed, perhaps the [[Talk:Z21583|Discussion page]] for {{Z|Z21583}} would be a better location? There has been some discussion at [[Wikifunctions talk:Abstract Wikipedia/2025 fragment experiments#Proposed recommendation: Fragments should return Z11/monolingual strings]]. (The spinoff, [[Wikifunctions talk:Abstract Wikipedia/2025 fragment experiments#Fallbacks]], might also be relevant.) [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 15:23, 25 November 2025 (UTC) :Now that raising and catching errors has better support, [[Z28159]] should take an {{Z|50}} instead of a ZID {{Z|6}}. Unfortunately it's already been used in other functions so it might be a pain to change. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 07:20, 21 December 2025 (UTC) ::Yes. I think this gets fixed along with {{Z|Z28162}}, which is listed in [[Wikifunctions:Request for cleanup#Function:(!) throw error (Z28154)]]. ::@[[User:Dv103|Dv103]] I was thinking we might just wrap {{Z|851}}? Custom errors will support only strings for the foreseeable future, as I understand it [can’t currently locate the relevant comment on Phabricator]. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 13:12, 21 December 2025 (UTC) :The simple implementation for {{Z|30737}} is failing with [[Z516]], even though I can get a (correct) result by [https://www.wikifunctions.org/view/en/Z12681?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z12681%22%2C%22Z12681K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22475%22%2C%22Z22475K1%22%3A%7B%22Z1K1%22%3A%22Z39%22%2C%22Z39K1%22%3A%22K1%22%7D%2C%22Z22475K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30260%22%2C%22Z30260K1%22%3A%5B%22Z6095%22%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L100%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L101%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L102%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L103%22%7D%5D%2C%22Z30260K2%22%3A%5B%22Z6030%22%2C%22Z6031%22%5D%2C%22Z30260K3%22%3A%5B%22Z60%22%5D%2C%22Z30260K4%22%3A%5B%22Z6092%22%5D%7D%7D%7D calling those functions on the test input]. Oddly enough [https://www.wikifunctions.org/view/en/Z12681?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z12681%22%2C%22Z12681K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22475%22%2C%22Z22475K1%22%3A%7B%22Z1K1%22%3A%22Z39%22%2C%22Z39K1%22%3A%22K1%22%7D%2C%22Z22475K2%22%3A%7B%22Z1K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z883%22%2C%22Z883K1%22%3A%22Z1%22%2C%22Z883K2%22%3A%22Z1%22%7D%2C%22K1%22%3A%5B%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z882%22%2C%22Z882K1%22%3A%22Z1%22%2C%22Z882K2%22%3A%22Z1%22%7D%2C%7B%22Z1K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z882%22%2C%22Z882K1%22%3A%22Z1%22%2C%22Z882K2%22%3A%22Z1%22%7D%2C%22K1%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%226%22%7D%2C%22K2%22%3A%22Abacus%22%7D%5D%7D%7D%7D a trivial input] causes that to fail with the same error. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:43, 26 December 2025 (UTC) ::Sorry, I missed this one. Initial validation rejects a map with {{Z|Z1}} as its key type. Although it’s not guaranteed to be hashable, [[Z1]] should probably be admitted as a placeholder {{Z|Z4}}. In any event, using {{Z|Z6}} as the alternative seems to work and does not restrict the map to having only Strings for keys (as seen in {{Z|Z30906}}, where the keys have {{Z|Z39}} for their Type). [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 09:18, 31 December 2025 (UTC) :::[[Z30907|Documented]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:50, 31 December 2025 (UTC) :The implementation for {{Z|29183}} is slightly incorrect, it needs to subtract 9 on the condition that variable <code>add</code> is &gt;9 (tests &gt;10 currently). For me to change {{Z|29185}}, the implementation needs to be disconnected from {{Z|29183}} by a functioneer ([[Special:ListUsers/functioneer]]) first. The english wiki also warns about using negative values as input for the modulo operation, so, in addition, the result computation should be rephrased to be <syntaxhighlight lang="python"> def intdivceil(x, d): return x//d + (0 if x % d == 0 else 1) return 10 * intdivceil(sum, 10) - sum </syntaxhighlight> :I'd also like to have all test cases of {{Z|29183}} connected by a functioneer, after changes to {{Z|29185}} have been commited. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 21:54, 2 January 2026 (UTC) ::Disconnected. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 22:12, 2 January 2026 (UTC) :::Thanks, changes done - please reconnect. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 22:33, 2 January 2026 (UTC) ::::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 23:08, 2 January 2026 (UTC) :::Weird: {{Z|30940}} and {{Z|30941}} tests do not pass after the reconnect, although [https://www.wikifunctions.org/wiki/Special:RunFunction?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z29183%22%2C%22Z29183K1%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%2290544230009%22%7D%7D running them manually] produces the expected result. Judging from the timestamps within the detail view, pressing the Refresh-Button does not actually re-run the tests. :::It seems that their results have been generated with the previous function. Can you make an effort to dis- and reconnect these two tests? The (unconfirmed) presumption is that tests only run on demand (event-triggered vs time scheduled). If this is true it may be noteworthy in the [[WF:FAQ]]. :::The first test, {{Z|29184}}, did not exhibit the same problem, it has been updated as expected. Because the execution timestamps of all three tests do not vary greatly, they were probably triggered, correctly so, by the same event. In theory they should then have consequently worked on the same function - since the test results suggest different, there could have either been a race condition or a stale cache, eventually with some tests running before the action that triggered them was fully committed. If this is not a timing issue, the response to the connection event might miss to update some of the data structures associated with the connected tests and simply run them unchanged, but this is speculative. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 01:38, 3 January 2026 (UTC) ::::Yeah the cached failures are super annoying, I think they reduced the cache duration recently but it's still too high IMO. Disconnecting and reconnecting the Implementation triggered them to run again. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:16, 3 January 2026 (UTC) :Can somebody connect the tests and implementation of this function? [[Z31047|arithmetical average of numbers (Z31047)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 04:35, 13 January 2026 (UTC) ::The implementation seems to fail all the tests. I suspect from the use of <code>{}</code> in Python code. Besides, on the implementation ({{Z|Z31048}}), it used <code>sum</code> as variable, which I don't think allowable in Python. Try to use another variable name. Last, what is the expected result of {{Z|Z31050}}? [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 04:50, 13 January 2026 (UTC) :::Sorry, @[[User:Sys64ish|Sys64ish]], I just got the expected result from {{Z|31050}}. I have connected the test cases, but not yet for the implementation as you may want to fix it first(?) [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 05:05, 13 January 2026 (UTC) ::::Fixed it, passes tests [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 05:09, 13 January 2026 (UTC) :::::{{Done}} connected! [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 05:11, 13 January 2026 (UTC) :When I go to add a test to this function, for some reason I cannot select a fixed value for the expected value, the type is fixed to a function call. Can somebody fix this? [[Z31051|graph a one parameter function (Z31051)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 06:16, 13 January 2026 (UTC) ::You need to select an equality function, which in this case would be {{Z|889}} with {{Z|20924}} as an argument. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 09:59, 13 January 2026 (UTC) :::Just what I was about to say, only shorter! :::I had a look at the Python implementation and that doesn’t appear to be viable, because a {{Z|Z8}} object is data, not a callable Python function. I think a composition is the only option here, but we don’t appear to have a [[Special:Search/:"z8k2 z1k1 z7 z7k1 z881 z881k1 Z20838"|generator function for ]]{{Z|Z20838}} yet ([[Special:Search/:"z8k2 z1k1 z7 z7k1 z881 z881k1 z19677"|nor for rationals]]). [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:39, 13 January 2026 (UTC) :Can somebody connect the tests and implementations of this function? [[Z31079|decimal number range (Z31079)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 13:57, 14 January 2026 (UTC) ::I’ve connected the test but there are a few issues with the implementation. The function has no return and the list to return shouldn’t be called range, as that overwrites the built-in range() function. Wikifunctions.Error requires a list of strings and you should probably guard against K3 being zero. Just let us know if you need any help with this. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 14:22, 14 January 2026 (UTC) :::I think I fixed the implementation [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 14:28, 14 January 2026 (UTC) ::::Looks close. You probably want to *return* Wikifunctions.Error in order to halt execution. The K1 and K2 arguments are float64s rather than strings, so they need coercing to str for the error. You still risk a divide by zero if K3 has no guard. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 14:48, 14 January 2026 (UTC) :::::I fixed it now, tests are passing(?) and when I run it locally it works as intended. [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 02:22, 15 January 2026 (UTC) ::::::{{done}} ::::::I created {{Z|31093}} to fix the last test, since your Python implementation was returning slightly inaccurate values for [[w:en:Floating-point_arithmetic#Accuracy_problems|reasons]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:11, 15 January 2026 (UTC) :Can somebody connect the impl. and test cases of these functions? [[Z31051|generate real (float64) list from a function (Z31051)]] [[Z31111|increment (float64) (Z31111)]] [[Z31116|decrement (float64) (Z31116)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 00:11, 16 January 2026 (UTC) ::Mostly. I see {{Z|Z31051}} has its Minimum and Maximum defined as integers rather than float64, as defined for the generator. Something has to change here, and I’m guessing it’s [[Z31051]], so I disconnected its implementation again. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 01:31, 16 January 2026 (UTC) :::all inputs except the input for the function are now float64 [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 13:36, 16 January 2026 (UTC) ::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 15:07, 16 January 2026 (UTC) : Can someone here connect the implementation and test cases of this function: [[Z18679|Malay cardinal to ordinal]]? {{User|Hakimi97}} :: {{Done}} [[User:Sys64ish|Sys32ish]] ([[User talk:Sys32ish|talk]]) 09:16, 19 January 2026 (UTC) :Can someone please add the following IPA symbols needed for {{Z|Z1099}} to <code>lookup</code> in the JavaScript implementation {{Z|Z29880}}? : "ɐ": "Q503323", : "u": "Q29653", : "ɕ": "Q605116", : "x": "Q271603", : "ʑ": "Q684085", : "ɣ": "Q654670", : "ʀ": "Q864677", : "χ": "Q849796", : "ʁ": "Q1054276", : "o": "Q862579", : "æ": "Q740768", : "ɪ": "Q1070049", : "ʊ": "Q1137807", :Thank you! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 20:23, 27 February 2026 (UTC) ::I forgot to mention the ligatures ::"ʤ": "Q778145", ::"ʧ": "Q518603", ::which could be put next to the already present ::"dʒ": "Q778145", ::"tʃ": "Q518603", ::--[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 20:24, 27 February 2026 (UTC) ::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 00:33, 28 February 2026 (UTC) :::Thank you! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 08:59, 28 February 2026 (UTC) : Can someone connect up [[Z31844]] and [[Z31837]]. These are better than the other implementations on their pages. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 09:04, 1 March 2026 (UTC) ::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:12, 1 March 2026 (UTC) :Hello, please connect {{Z|Z31729}}'s implementation and test cases. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 10:48, 8 March 2026 (UTC) ::The implementation does not seem to pass any of the test case. If you click on the [[File:Icon Information.svg|Icon_Information|15px|class=skin-invert-image]] (i) icon on the test status, you can find the error, what the implementation output, etc. Try to fix the implementation first. Thanks! [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 11:22, 8 March 2026 (UTC) ::It seems you're returning a string value when it expects a HTML fragment. HTML fragment and string are different. Maybe you can change the output type to string? [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 11:44, 10 March 2026 (UTC) :::Thanks for running the tests, @[[User:NikolasKHF|NikolasKHF]]; I couldn’t run them on my own (seemingly because I don’t have the needed right). I will fix the errors. :::Thanks for looking into this, @[[User:Sys64ish|Sys64ish]]. I actually did want to return an HTML fragment instead of a string because I think that would be more useful on the wikis. However, it looks like I forgot to convert the string for most cases where an output is returned (hence why only one test failure actually complains about the output value being incorrect). [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 19:52, 10 March 2026 (UTC) :::I have fixed the errors and added a new test case. Please connect the implementation and all the test cases now. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 10:23, 28 March 2026 (UTC) :Can someone connect [[Z31994]] and [[Z31999]] with its tests and implementations. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:41, 11 March 2026 (UTC) ::{{done}} [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 08:49, 11 March 2026 (UTC) :::Oh yeah I also made another function now, [[Z32004]]. Can someone connect its implementations and tests. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 09:02, 11 March 2026 (UTC) ::::{{done}} [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 09:23, 11 March 2026 (UTC) :Can someone connect up [[Z32013]]. Also how do you become able to connect and disconnect implementations? Is it only available to extended confirmed users? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 10:06, 12 March 2026 (UTC) ::I don’t believe this implementation should be connected at this time. The existing Python implementation respects the community consensus represented by the test cases connected to {{Z|Z24144}}. What do you think, @[[User:99of9|99of9]]? [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:28, 12 March 2026 (UTC) :::Fair, I didn't realise the test cases served as implicit consensus. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 11:42, 12 March 2026 (UTC) ::::No worries. It’s not clearly articulated, but we’ll clarify that later. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:51, 12 March 2026 (UTC) :::I'm not sure. At the moment it correctly reproduces all those we got "consensus" for. So in some sense this implementation is just suggesting/assuming extra fallbacks for those we haven't properly considered? One option would be to connect it and then add counter test cases if we ever felt we didn't like it's current suggestions. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 00:30, 13 March 2026 (UTC) ::::We should be careful… It’s not easy to tell how many test case results would be affected. It’s easy enough to disconnect again, of course, so I’m happy to give it a go while activity in this domain is at a low ebb. {{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:04, 13 March 2026 (UTC) ::To connect implementations, you need Functioneer rights, which can be requested here [[Wikifunctions:Requests for user groups]]. There is a 48-hour waiting period. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:32, 12 March 2026 (UTC) :Can someone connect up [[Z32027]] with its implementation and test? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:29, 13 March 2026 (UTC) ::And also [[Z32031]]. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 10:16, 13 March 2026 (UTC) :::{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:51, 13 March 2026 (UTC) ::{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:50, 13 March 2026 (UTC) {{tracked|T419920|resolved}} :What is wrong with my implementation at [[Z32055]]? Looking at the failed test, it returns an error because 'dict' has no attribute 'split', but I didn't use split anywhere in my code. What is the issue? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 01:38, 14 March 2026 (UTC) ::I think that error message is coming from the [[Z20424|type converter]]. I think <code>Z20424K1['Z20420K2']['Z20342K1']</code> would be a dictionary representing a {{Z|16098}} but the code is written as though it were a string? Neither Python nor type converters are in my wheelhouse. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:49, 14 March 2026 (UTC) :::I think this is [[:phab:T419920]] and presumed to be a consequence of this week’s rollout of “v2”. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:08, 14 March 2026 (UTC) ::The type converter issue has gone away, but your Implementation doesn't quite match the tests (and composition), so I've disconnected it again. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:54, 20 March 2026 (UTC) :What is wrong with my implementation at {{Z|Z32851}}? Btw, it would be really useful if errors said which dependency produced the error, instead of just saying "Error in evaluation". [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 07:18, 28 March 2026 (UTC) ::You were catching the wrong {{Z|50}}, but then the error should have bubbled up so you could see it. I think there's something broken in the site w/ {{Z|11}} right now since [[Z32804|I ran into a similar problem yesterday]]. (And to contradict my note there, while debugging your implementation I saw the same behaviour regardless of if I used [[Z26107]] or a literal Z11, so it must be a bug in WikiLambda.) [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 08:14, 28 March 2026 (UTC) ==== Connection / Disconnection requests ==== Can someone connect {{Z|32068}} and {{Z|15974}} to their tests and implementations. Thanks in advance. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 23:24, 14 March 2026 (UTC) :In the first function, there’s some issue with Maybe but I don’t think that’s the implementation. But I do think the error-handling for Maybe needs fixing. I’ll check back tomorrow and dig deeper if need be. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 23:48, 14 March 2026 (UTC) ::I fixed the error raising and checking, but the test is still failing for some reason? [[phab:T419920]] again? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 23:54, 14 March 2026 (UTC) :::It certainly looks like a conversion failure going into {{Z|Z22123}}. I made a [[Z32083|new implementation]] of {{Z|Z22120}} which is now “preferred”. If everything behaves itself, [[Z22123]] can be reconnected. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 17:24, 15 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:56, 20 March 2026 (UTC) Can someone connect {{Z|32208}}, {{Z|32199}}, and {{Z|32204}}'s testcases and implementations? thanks in advance! --[[User:VivianIsBee|VivianIsBee]] ([[User talk:VivianIsBee|talk]]) 14:33, 20 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:48, 20 March 2026 (UTC) Can someone connect {{Z|32355}}'s testcases and implementations? Thanks in advance! [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 08:15, 22 March 2026 (UTC) :I haven't connected the implementation yet, because it doesn't seem to pass any of the test cases. If the implementation has any issues, then fix them first. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:24, 22 March 2026 (UTC) ::Thanks. I fixed. One testcase has passed now. But another testcase still says "The lexeme doesn't have forms" although I added a lexical form about 20 hour ago. I suppose cashed data may not have been refreshed yet. So can you please connect implementation so that I can check precisely? [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 05:47, 23 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:32, 23 March 2026 (UTC) Can someone connect {{Z|32442}}'s testcases and implementations? Thanks in advance! [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 22:38, 23 March 2026 (UTC) :Did you mean to include spaces between "words" with your Implementation, or was that a copy-paste error? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 05:24, 24 March 2026 (UTC) ::Thanks. That's a copy-paste error. I deleted one space.[[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 06:55, 24 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 09:48, 24 March 2026 (UTC) Request to connect {{Z|32212}}, {{Z|32213}}, {{Z|32214}}, {{Z|32216}}, and {{Z|32240}}, all related to defining role sentence in Chinese for all variants. [[User:1F616EMO|1F616EMO]] ([[User talk:1F616EMO|talk]]) 03:21, 24 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 05:28, 24 March 2026 (UTC) Can someone disconnect {{Z|10816}}'s Python implementation? Need to fix one of the test case errors. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 19:47, 26 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 19:59, 26 March 2026 (UTC) ::Fixed the Python implementation, if anyone could reconnect that again. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 20:11, 26 March 2026 (UTC) :::Noting that this was reconnected. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 14:40, 27 March 2026 (UTC) Can someone please disconnect {{Z|26574}}? It needs to be edited to add the Bengali equivalent of a period to the end of the sentence. Thanks. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 10:59, 28 March 2026 (UTC) :Disconnected. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 11:05, 28 March 2026 (UTC) ::Thanks! And I am sorry forgot this before but the tests need to be fixed as well, could you please disconnect them, too? [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 11:09, 28 March 2026 (UTC) :::I just added the periods to the tests myself. Tell me if I am incorrect in their placement. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 11:15, 28 March 2026 (UTC) ==== [[WF:HL]] ==== I have recently drafted some revamps of [[Wikifunctions:Human languages]] ([[User:Xeroctic/Human languages]]) and [[Wikifunctions:Reserved ZIDs]] ([[User:Xeroctic/Reserved ZIDs]]) in my userspace, and I think they are ready to replace the originals. I have not included translation tags for HL (which would be entirely different) and they need major modification for RZIDs to add or re-add them, so I would like that to be done as well. — [[User:Xeroctic|Xeroctic]] ([[User talk:Xeroctic|talk]]) 16:39, 3 November 2025 (UTC) : {{s}} since Xeroctic's versions improve readability. — [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 11:17, 24 November 2025 (UTC) :: Restoring this unresolved thread which was archived in oldid 237379. — [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 14:36, 16 January 2026 (UTC) :[[WF:Human languages]]: Copying the categorisation from enWiktionary seems like a good idea. I don't understand why this page is separate from [[WF:Catalogue/Natural language operations]] though? (time/happenstance? [[WT:Human_languages#proposal|previous disc.]]) Redlinks to cataloguing subpages will remain red unless and until someone makes an NLG function in that language. :[[WF:Reserved ZIDs]]: Using the live labels is an obvious improvement. I appreciate it being kept up-to-date. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:55, 16 January 2026 (UTC) :{{support}} per Arlo Barnes and YoshiRulz [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 01:11, 11 March 2026 (UTC) :{{support}} Let’s do this already. --[[User:Mormegil|Mormegil]] ([[User talk:Mormegil|talk]]) 08:33, 27 March 2026 (UTC) q6wtfwmnl8clm7f9ibn18nzmxr3ruoo 261491 261482 2026-03-28T11:53:54Z Redmin 52094 /* Connection / Disconnection requests */ Reply 261491 wikitext text/x-wiki <div style="border:1px solid grey; margin:1em 4em 2em; padding:1.5em 1em;"> <span style="font-size:2em;">Welcome to the '''community portal for Wikifunctions'''!</span> This is the central place to document Wikifunctions's to-do lists and ongoing project work. [To-do!] [[Special:MyLanguage/Wikifunctions:Catalogue|The catalogue of functions]] is a good place to start. For discussions, see [[Wikifunctions:Project chat]]. [[Category:Project]] </div> == Useful links == * [[Wikifunctions:List of policies and guidelines]] * [[Special:MyLanguage/Help:Contents|Help:Contents]] * [[Special:MyLanguage/Wikifunctions:Catalogue|Wikifunctions:Catalogue of functions]] ** [[Wikifunctions:Suggest a function]] * [[Wikifunctions:Type proposals]] * [[Special:MyLanguage/Wikifunctions:User scripts|Wikifunctions:User scripts]] * [[Wikifunctions:Requests for user groups]] * [[Wikifunctions:Requests for deletions]] == Noticeboards == * [[Wikifunctions:Project chat]] * [[Wikifunctions:Administrators' noticeboard]] * [[Wikifunctions:Report vandalism]] * [[Wikifunctions:Translators' noticeboard]] == Task centre == === Perennial tasks === <!--Feel free to add new tasks to this section. However, if they are one-off requests, please add them to Tasks listed by users--> * [[File:OOjs UI icon language-ltr.svg|class=skin-invert]] [[Special:MyLanguage/Help:Multilingual|Translation]]: **[[Special:Random|Add a translation to a random object]] **[[Special:MyLanguage/Category:Policy|Add a translation to a policy page]] **[[Special:ListMissingLabels|See any objects without a label in a given language]] **[[Special:PageTranslation]] **[[Special:LanguageStats|Language statistics]] *[[File:Octicons-tools.svg|15px|class=skin-invert]] [[:Category:Tracking categories|Tracking categories]] * [[File:Octicons-tools.svg|15px|class=skin-invert]] [[Wikifunctions:Request for cleanup|Requests for cleanup]] === Tasks listed by users === :''Example:'' :* Fix [[Special:Random|this implementation]] please. {{User|Example2}} ::{{Done}}. Thanks for pointing that out! {{User|Example}} <hr/> [signing to enable reply link:--[[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:27, 6 May 2024 (UTC) :Heya, I tried to make a {{Z|Z29010}} implementation in composition <small>({{Z|Z29012}})</small>, but it errors out: <code>Unable to convert to canonical form (path to the problem: "Z22K2.K1.K1.K2.Z5K2.Z528K1.Z99K1.Z7K1.Z8K4.[ 1 ].Z14K2.Z26107K2.Z21394K1.[ 1 ].Z10771K1.Z23753K2.Z18K1.{&quot;Z1K1&quot;:&quot;Z18&quot;,&quot;Z6K1&quot;:&quot;Z29010K5&quot;,&quot;Z18K1&quot;:&quot;&quot;}")</code> - why does this happen, and how would I fix it? I tried to use {{Z|Z28030}} as a guide, but for a first dive into composition I may have taken on something a bit large. [[User:Infernostars|infernostars]] <small>([[User talk:Infernostars|talk]]) ([[Special:Contributions/Infernostars|contribs]])</small> 02:49, 23 October 2025 (UTC) ::When you go to {{Z|Z29012}} you'll see two red words "Function" and "Wikidata item". Both of those were not set in the composition, so it is missing information. There may be more deeper problems, but fix this first. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 03:33, 23 October 2025 (UTC) ::{{done}} Works now, seemed to be just a couple typos. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:14, 24 December 2025 (UTC) :Please connect the tests and implementation for {{Z|29750}}. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:33, 25 November 2025 (UTC) ::This ^ was done, so thanks for that, and I've now built a new function around it that's ready to be connected: {{Z|29749}}<!-- --><br>Having fallbacks to other languages and indicating such does of course raise the question of ''when'' it should be indicated, and I certainly don't have the answer, so I might leave this message here for the multilingual among you to see it and chime in. Either on [[Talk:Z24144]], or by way of adding a test case on one of these functions. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:42, 25 November 2025 (UTC) :::If it’s about the way labels in fallback languages are displayed, perhaps the [[Talk:Z21583|Discussion page]] for {{Z|Z21583}} would be a better location? There has been some discussion at [[Wikifunctions talk:Abstract Wikipedia/2025 fragment experiments#Proposed recommendation: Fragments should return Z11/monolingual strings]]. (The spinoff, [[Wikifunctions talk:Abstract Wikipedia/2025 fragment experiments#Fallbacks]], might also be relevant.) [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 15:23, 25 November 2025 (UTC) :Now that raising and catching errors has better support, [[Z28159]] should take an {{Z|50}} instead of a ZID {{Z|6}}. Unfortunately it's already been used in other functions so it might be a pain to change. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 07:20, 21 December 2025 (UTC) ::Yes. I think this gets fixed along with {{Z|Z28162}}, which is listed in [[Wikifunctions:Request for cleanup#Function:(!) throw error (Z28154)]]. ::@[[User:Dv103|Dv103]] I was thinking we might just wrap {{Z|851}}? Custom errors will support only strings for the foreseeable future, as I understand it [can’t currently locate the relevant comment on Phabricator]. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 13:12, 21 December 2025 (UTC) :The simple implementation for {{Z|30737}} is failing with [[Z516]], even though I can get a (correct) result by [https://www.wikifunctions.org/view/en/Z12681?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z12681%22%2C%22Z12681K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22475%22%2C%22Z22475K1%22%3A%7B%22Z1K1%22%3A%22Z39%22%2C%22Z39K1%22%3A%22K1%22%7D%2C%22Z22475K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30260%22%2C%22Z30260K1%22%3A%5B%22Z6095%22%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L100%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L101%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L102%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L103%22%7D%5D%2C%22Z30260K2%22%3A%5B%22Z6030%22%2C%22Z6031%22%5D%2C%22Z30260K3%22%3A%5B%22Z60%22%5D%2C%22Z30260K4%22%3A%5B%22Z6092%22%5D%7D%7D%7D calling those functions on the test input]. Oddly enough [https://www.wikifunctions.org/view/en/Z12681?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z12681%22%2C%22Z12681K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22475%22%2C%22Z22475K1%22%3A%7B%22Z1K1%22%3A%22Z39%22%2C%22Z39K1%22%3A%22K1%22%7D%2C%22Z22475K2%22%3A%7B%22Z1K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z883%22%2C%22Z883K1%22%3A%22Z1%22%2C%22Z883K2%22%3A%22Z1%22%7D%2C%22K1%22%3A%5B%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z882%22%2C%22Z882K1%22%3A%22Z1%22%2C%22Z882K2%22%3A%22Z1%22%7D%2C%7B%22Z1K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z882%22%2C%22Z882K1%22%3A%22Z1%22%2C%22Z882K2%22%3A%22Z1%22%7D%2C%22K1%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%226%22%7D%2C%22K2%22%3A%22Abacus%22%7D%5D%7D%7D%7D a trivial input] causes that to fail with the same error. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:43, 26 December 2025 (UTC) ::Sorry, I missed this one. Initial validation rejects a map with {{Z|Z1}} as its key type. Although it’s not guaranteed to be hashable, [[Z1]] should probably be admitted as a placeholder {{Z|Z4}}. In any event, using {{Z|Z6}} as the alternative seems to work and does not restrict the map to having only Strings for keys (as seen in {{Z|Z30906}}, where the keys have {{Z|Z39}} for their Type). [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 09:18, 31 December 2025 (UTC) :::[[Z30907|Documented]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:50, 31 December 2025 (UTC) :The implementation for {{Z|29183}} is slightly incorrect, it needs to subtract 9 on the condition that variable <code>add</code> is &gt;9 (tests &gt;10 currently). For me to change {{Z|29185}}, the implementation needs to be disconnected from {{Z|29183}} by a functioneer ([[Special:ListUsers/functioneer]]) first. The english wiki also warns about using negative values as input for the modulo operation, so, in addition, the result computation should be rephrased to be <syntaxhighlight lang="python"> def intdivceil(x, d): return x//d + (0 if x % d == 0 else 1) return 10 * intdivceil(sum, 10) - sum </syntaxhighlight> :I'd also like to have all test cases of {{Z|29183}} connected by a functioneer, after changes to {{Z|29185}} have been commited. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 21:54, 2 January 2026 (UTC) ::Disconnected. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 22:12, 2 January 2026 (UTC) :::Thanks, changes done - please reconnect. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 22:33, 2 January 2026 (UTC) ::::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 23:08, 2 January 2026 (UTC) :::Weird: {{Z|30940}} and {{Z|30941}} tests do not pass after the reconnect, although [https://www.wikifunctions.org/wiki/Special:RunFunction?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z29183%22%2C%22Z29183K1%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%2290544230009%22%7D%7D running them manually] produces the expected result. Judging from the timestamps within the detail view, pressing the Refresh-Button does not actually re-run the tests. :::It seems that their results have been generated with the previous function. Can you make an effort to dis- and reconnect these two tests? The (unconfirmed) presumption is that tests only run on demand (event-triggered vs time scheduled). If this is true it may be noteworthy in the [[WF:FAQ]]. :::The first test, {{Z|29184}}, did not exhibit the same problem, it has been updated as expected. Because the execution timestamps of all three tests do not vary greatly, they were probably triggered, correctly so, by the same event. In theory they should then have consequently worked on the same function - since the test results suggest different, there could have either been a race condition or a stale cache, eventually with some tests running before the action that triggered them was fully committed. If this is not a timing issue, the response to the connection event might miss to update some of the data structures associated with the connected tests and simply run them unchanged, but this is speculative. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 01:38, 3 January 2026 (UTC) ::::Yeah the cached failures are super annoying, I think they reduced the cache duration recently but it's still too high IMO. Disconnecting and reconnecting the Implementation triggered them to run again. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:16, 3 January 2026 (UTC) :Can somebody connect the tests and implementation of this function? [[Z31047|arithmetical average of numbers (Z31047)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 04:35, 13 January 2026 (UTC) ::The implementation seems to fail all the tests. I suspect from the use of <code>{}</code> in Python code. Besides, on the implementation ({{Z|Z31048}}), it used <code>sum</code> as variable, which I don't think allowable in Python. Try to use another variable name. Last, what is the expected result of {{Z|Z31050}}? [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 04:50, 13 January 2026 (UTC) :::Sorry, @[[User:Sys64ish|Sys64ish]], I just got the expected result from {{Z|31050}}. I have connected the test cases, but not yet for the implementation as you may want to fix it first(?) [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 05:05, 13 January 2026 (UTC) ::::Fixed it, passes tests [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 05:09, 13 January 2026 (UTC) :::::{{Done}} connected! [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 05:11, 13 January 2026 (UTC) :When I go to add a test to this function, for some reason I cannot select a fixed value for the expected value, the type is fixed to a function call. Can somebody fix this? [[Z31051|graph a one parameter function (Z31051)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 06:16, 13 January 2026 (UTC) ::You need to select an equality function, which in this case would be {{Z|889}} with {{Z|20924}} as an argument. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 09:59, 13 January 2026 (UTC) :::Just what I was about to say, only shorter! :::I had a look at the Python implementation and that doesn’t appear to be viable, because a {{Z|Z8}} object is data, not a callable Python function. I think a composition is the only option here, but we don’t appear to have a [[Special:Search/:"z8k2 z1k1 z7 z7k1 z881 z881k1 Z20838"|generator function for ]]{{Z|Z20838}} yet ([[Special:Search/:"z8k2 z1k1 z7 z7k1 z881 z881k1 z19677"|nor for rationals]]). [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:39, 13 January 2026 (UTC) :Can somebody connect the tests and implementations of this function? [[Z31079|decimal number range (Z31079)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 13:57, 14 January 2026 (UTC) ::I’ve connected the test but there are a few issues with the implementation. The function has no return and the list to return shouldn’t be called range, as that overwrites the built-in range() function. Wikifunctions.Error requires a list of strings and you should probably guard against K3 being zero. Just let us know if you need any help with this. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 14:22, 14 January 2026 (UTC) :::I think I fixed the implementation [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 14:28, 14 January 2026 (UTC) ::::Looks close. You probably want to *return* Wikifunctions.Error in order to halt execution. The K1 and K2 arguments are float64s rather than strings, so they need coercing to str for the error. You still risk a divide by zero if K3 has no guard. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 14:48, 14 January 2026 (UTC) :::::I fixed it now, tests are passing(?) and when I run it locally it works as intended. [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 02:22, 15 January 2026 (UTC) ::::::{{done}} ::::::I created {{Z|31093}} to fix the last test, since your Python implementation was returning slightly inaccurate values for [[w:en:Floating-point_arithmetic#Accuracy_problems|reasons]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:11, 15 January 2026 (UTC) :Can somebody connect the impl. and test cases of these functions? [[Z31051|generate real (float64) list from a function (Z31051)]] [[Z31111|increment (float64) (Z31111)]] [[Z31116|decrement (float64) (Z31116)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 00:11, 16 January 2026 (UTC) ::Mostly. I see {{Z|Z31051}} has its Minimum and Maximum defined as integers rather than float64, as defined for the generator. Something has to change here, and I’m guessing it’s [[Z31051]], so I disconnected its implementation again. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 01:31, 16 January 2026 (UTC) :::all inputs except the input for the function are now float64 [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 13:36, 16 January 2026 (UTC) ::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 15:07, 16 January 2026 (UTC) : Can someone here connect the implementation and test cases of this function: [[Z18679|Malay cardinal to ordinal]]? {{User|Hakimi97}} :: {{Done}} [[User:Sys64ish|Sys32ish]] ([[User talk:Sys32ish|talk]]) 09:16, 19 January 2026 (UTC) :Can someone please add the following IPA symbols needed for {{Z|Z1099}} to <code>lookup</code> in the JavaScript implementation {{Z|Z29880}}? : "ɐ": "Q503323", : "u": "Q29653", : "ɕ": "Q605116", : "x": "Q271603", : "ʑ": "Q684085", : "ɣ": "Q654670", : "ʀ": "Q864677", : "χ": "Q849796", : "ʁ": "Q1054276", : "o": "Q862579", : "æ": "Q740768", : "ɪ": "Q1070049", : "ʊ": "Q1137807", :Thank you! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 20:23, 27 February 2026 (UTC) ::I forgot to mention the ligatures ::"ʤ": "Q778145", ::"ʧ": "Q518603", ::which could be put next to the already present ::"dʒ": "Q778145", ::"tʃ": "Q518603", ::--[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 20:24, 27 February 2026 (UTC) ::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 00:33, 28 February 2026 (UTC) :::Thank you! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 08:59, 28 February 2026 (UTC) : Can someone connect up [[Z31844]] and [[Z31837]]. These are better than the other implementations on their pages. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 09:04, 1 March 2026 (UTC) ::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:12, 1 March 2026 (UTC) :Hello, please connect {{Z|Z31729}}'s implementation and test cases. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 10:48, 8 March 2026 (UTC) ::The implementation does not seem to pass any of the test case. If you click on the [[File:Icon Information.svg|Icon_Information|15px|class=skin-invert-image]] (i) icon on the test status, you can find the error, what the implementation output, etc. Try to fix the implementation first. Thanks! [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 11:22, 8 March 2026 (UTC) ::It seems you're returning a string value when it expects a HTML fragment. HTML fragment and string are different. Maybe you can change the output type to string? [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 11:44, 10 March 2026 (UTC) :::Thanks for running the tests, @[[User:NikolasKHF|NikolasKHF]]; I couldn’t run them on my own (seemingly because I don’t have the needed right). I will fix the errors. :::Thanks for looking into this, @[[User:Sys64ish|Sys64ish]]. I actually did want to return an HTML fragment instead of a string because I think that would be more useful on the wikis. However, it looks like I forgot to convert the string for most cases where an output is returned (hence why only one test failure actually complains about the output value being incorrect). [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 19:52, 10 March 2026 (UTC) :::I have fixed the errors and added a new test case. Please connect the implementation and all the test cases now. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 10:23, 28 March 2026 (UTC) :Can someone connect [[Z31994]] and [[Z31999]] with its tests and implementations. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:41, 11 March 2026 (UTC) ::{{done}} [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 08:49, 11 March 2026 (UTC) :::Oh yeah I also made another function now, [[Z32004]]. Can someone connect its implementations and tests. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 09:02, 11 March 2026 (UTC) ::::{{done}} [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 09:23, 11 March 2026 (UTC) :Can someone connect up [[Z32013]]. Also how do you become able to connect and disconnect implementations? Is it only available to extended confirmed users? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 10:06, 12 March 2026 (UTC) ::I don’t believe this implementation should be connected at this time. The existing Python implementation respects the community consensus represented by the test cases connected to {{Z|Z24144}}. What do you think, @[[User:99of9|99of9]]? [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:28, 12 March 2026 (UTC) :::Fair, I didn't realise the test cases served as implicit consensus. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 11:42, 12 March 2026 (UTC) ::::No worries. It’s not clearly articulated, but we’ll clarify that later. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:51, 12 March 2026 (UTC) :::I'm not sure. At the moment it correctly reproduces all those we got "consensus" for. So in some sense this implementation is just suggesting/assuming extra fallbacks for those we haven't properly considered? One option would be to connect it and then add counter test cases if we ever felt we didn't like it's current suggestions. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 00:30, 13 March 2026 (UTC) ::::We should be careful… It’s not easy to tell how many test case results would be affected. It’s easy enough to disconnect again, of course, so I’m happy to give it a go while activity in this domain is at a low ebb. {{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:04, 13 March 2026 (UTC) ::To connect implementations, you need Functioneer rights, which can be requested here [[Wikifunctions:Requests for user groups]]. There is a 48-hour waiting period. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:32, 12 March 2026 (UTC) :Can someone connect up [[Z32027]] with its implementation and test? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:29, 13 March 2026 (UTC) ::And also [[Z32031]]. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 10:16, 13 March 2026 (UTC) :::{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:51, 13 March 2026 (UTC) ::{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:50, 13 March 2026 (UTC) {{tracked|T419920|resolved}} :What is wrong with my implementation at [[Z32055]]? Looking at the failed test, it returns an error because 'dict' has no attribute 'split', but I didn't use split anywhere in my code. What is the issue? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 01:38, 14 March 2026 (UTC) ::I think that error message is coming from the [[Z20424|type converter]]. I think <code>Z20424K1['Z20420K2']['Z20342K1']</code> would be a dictionary representing a {{Z|16098}} but the code is written as though it were a string? Neither Python nor type converters are in my wheelhouse. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:49, 14 March 2026 (UTC) :::I think this is [[:phab:T419920]] and presumed to be a consequence of this week’s rollout of “v2”. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:08, 14 March 2026 (UTC) ::The type converter issue has gone away, but your Implementation doesn't quite match the tests (and composition), so I've disconnected it again. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:54, 20 March 2026 (UTC) :What is wrong with my implementation at {{Z|Z32851}}? Btw, it would be really useful if errors said which dependency produced the error, instead of just saying "Error in evaluation". [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 07:18, 28 March 2026 (UTC) ::You were catching the wrong {{Z|50}}, but then the error should have bubbled up so you could see it. I think there's something broken in the site w/ {{Z|11}} right now since [[Z32804|I ran into a similar problem yesterday]]. (And to contradict my note there, while debugging your implementation I saw the same behaviour regardless of if I used [[Z26107]] or a literal Z11, so it must be a bug in WikiLambda.) [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 08:14, 28 March 2026 (UTC) ==== Connection / Disconnection requests ==== Can someone connect {{Z|32068}} and {{Z|15974}} to their tests and implementations. Thanks in advance. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 23:24, 14 March 2026 (UTC) :In the first function, there’s some issue with Maybe but I don’t think that’s the implementation. But I do think the error-handling for Maybe needs fixing. I’ll check back tomorrow and dig deeper if need be. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 23:48, 14 March 2026 (UTC) ::I fixed the error raising and checking, but the test is still failing for some reason? [[phab:T419920]] again? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 23:54, 14 March 2026 (UTC) :::It certainly looks like a conversion failure going into {{Z|Z22123}}. I made a [[Z32083|new implementation]] of {{Z|Z22120}} which is now “preferred”. If everything behaves itself, [[Z22123]] can be reconnected. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 17:24, 15 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:56, 20 March 2026 (UTC) Can someone connect {{Z|32208}}, {{Z|32199}}, and {{Z|32204}}'s testcases and implementations? thanks in advance! --[[User:VivianIsBee|VivianIsBee]] ([[User talk:VivianIsBee|talk]]) 14:33, 20 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:48, 20 March 2026 (UTC) Can someone connect {{Z|32355}}'s testcases and implementations? Thanks in advance! [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 08:15, 22 March 2026 (UTC) :I haven't connected the implementation yet, because it doesn't seem to pass any of the test cases. If the implementation has any issues, then fix them first. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:24, 22 March 2026 (UTC) ::Thanks. I fixed. One testcase has passed now. But another testcase still says "The lexeme doesn't have forms" although I added a lexical form about 20 hour ago. I suppose cashed data may not have been refreshed yet. So can you please connect implementation so that I can check precisely? [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 05:47, 23 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:32, 23 March 2026 (UTC) Can someone connect {{Z|32442}}'s testcases and implementations? Thanks in advance! [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 22:38, 23 March 2026 (UTC) :Did you mean to include spaces between "words" with your Implementation, or was that a copy-paste error? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 05:24, 24 March 2026 (UTC) ::Thanks. That's a copy-paste error. I deleted one space.[[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 06:55, 24 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 09:48, 24 March 2026 (UTC) Request to connect {{Z|32212}}, {{Z|32213}}, {{Z|32214}}, {{Z|32216}}, and {{Z|32240}}, all related to defining role sentence in Chinese for all variants. [[User:1F616EMO|1F616EMO]] ([[User talk:1F616EMO|talk]]) 03:21, 24 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 05:28, 24 March 2026 (UTC) Can someone disconnect {{Z|10816}}'s Python implementation? Need to fix one of the test case errors. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 19:47, 26 March 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 19:59, 26 March 2026 (UTC) ::Fixed the Python implementation, if anyone could reconnect that again. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 20:11, 26 March 2026 (UTC) :::Noting that this was reconnected. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 14:40, 27 March 2026 (UTC) Can someone please disconnect {{Z|26574}}? It needs to be edited to add the Bengali equivalent of a period to the end of the sentence. Thanks. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 10:59, 28 March 2026 (UTC) :Disconnected. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 11:05, 28 March 2026 (UTC) ::Thanks! And I am sorry forgot this before but the tests need to be fixed as well, could you please disconnect them, too? [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 11:09, 28 March 2026 (UTC) :::I just added the periods to the tests myself. Tell me if I am incorrect in their placement. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 11:15, 28 March 2026 (UTC) ::::Done, thanks for updating the tests but one other change is needed: in Z26606, the expected string should be 'কাজী নজরুল ইসলাম একজন কবি ছিলেন।' now because I updated the function to indicate when a person is deceased. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 11:53, 28 March 2026 (UTC) ==== [[WF:HL]] ==== I have recently drafted some revamps of [[Wikifunctions:Human languages]] ([[User:Xeroctic/Human languages]]) and [[Wikifunctions:Reserved ZIDs]] ([[User:Xeroctic/Reserved ZIDs]]) in my userspace, and I think they are ready to replace the originals. I have not included translation tags for HL (which would be entirely different) and they need major modification for RZIDs to add or re-add them, so I would like that to be done as well. — [[User:Xeroctic|Xeroctic]] ([[User talk:Xeroctic|talk]]) 16:39, 3 November 2025 (UTC) : {{s}} since Xeroctic's versions improve readability. — [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 11:17, 24 November 2025 (UTC) :: Restoring this unresolved thread which was archived in oldid 237379. — [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 14:36, 16 January 2026 (UTC) :[[WF:Human languages]]: Copying the categorisation from enWiktionary seems like a good idea. I don't understand why this page is separate from [[WF:Catalogue/Natural language operations]] though? (time/happenstance? [[WT:Human_languages#proposal|previous disc.]]) Redlinks to cataloguing subpages will remain red unless and until someone makes an NLG function in that language. :[[WF:Reserved ZIDs]]: Using the live labels is an obvious improvement. I appreciate it being kept up-to-date. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:55, 16 January 2026 (UTC) :{{support}} per Arlo Barnes and YoshiRulz [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 01:11, 11 March 2026 (UTC) :{{support}} Let’s do this already. --[[User:Mormegil|Mormegil]] ([[User talk:Mormegil|talk]]) 08:33, 27 March 2026 (UTC) 19yzrh0cgbgenini4qm4k1vwc7fs2yb Template:Section resolved/standard module 10 3532 261466 49663 2026-03-28T11:02:20Z Escargot bleu 1060 dark mode 261466 wikitext text/x-wiki Standard module for [[Template:Section resolved]]. <onlyinclude>{|style="clear:both;display:table;font-size:90%;line-height:normal;margin:2px 0;background:var(--background-color-neutral-subtle, #f8f9fa);color:inherit;border:1px solid var(--border-color-base, #a2a9b1);padding:2px" |- |[[File:OOjs UI icon check-constructive.svg|link=|bottom|Checkmark]] {{Autotranslate|base=Section resolved/i18n}} {{{1|}}} {{{{{subst|}}}#if: {{{2|}}} | ({{{2|}}}) }}{{Clear}} |}</onlyinclude> [[Category:Archival templates|Resolved/standard module]] [[Category:Autotranslated templates]] jmdlp6p5qccwb5fglalu78zh80krxle Wikifunctions:Requests for user groups 4 3790 261341 260645 2026-03-27T22:50:47Z Feeglgeef 8776 /* Higa4 */ Reply 261341 wikitext text/x-wiki {{shortcut|[[WF:RFG]]|[[WF:PERM]]|[[WF:RFUG]]}} This is the place to request specific user groups: {{ombox | image = [[File:Echo user-rights icon.svg|60x60px|alt=|link=]] | text = '''How to make a request''' #Edit the section for the user group you wish to request #Copy the following and ''append'' it to the text-area: ##Requests without required discussion: <code><nowiki>{{subst:rfg|1={{subst:REVISIONUSER}}|2=reason ~~~~}}</nowiki></code> ##Functioneer requests (required 48-hour discussion): <code><nowiki>{{subst:rfg|3=1|length=2 days|1={{subst:REVISIONUSER}}|2=reason ~~~~}}</nowiki></code> ##Requests with required 1-week discussion: <code><nowiki>{{subst:rfg|3=1|1={{subst:REVISIONUSER}}|2=reason ~~~~}}</nowiki></code> #Replace <code>reason</code> with a rationale based on the guidelines specified for the user group }} :''Archived requests can be found at [[Wikifunctions:Requests for user groups/Archive]]'' {{Autoarchive resolved section |age =1 |archive =((FULLPAGENAME))/Archive/((year))/((month:##)) |level =3 }} == Functioneer == {{see also|Wikifunctions:Functioneers}} === Higa4 === :{{UL2.0|1=Higa4|contributions=1|deletedcontributions=1|editcount=1|blocklog=1|rightslog=1|crosswiki=1}} :''Discussion open until: 14:03, 26 March 2026 (UTC)'' :I want to be a functioneer because I'm going to add several functions for Japanese and I hope I can connect for myself to check testcases smoothly. [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 14:03, 24 March 2026 (UTC) ::{{s}}: sufficient contributions, including especially valuable multilingual ones. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 22:50, 27 March 2026 (UTC) === Mormegil === :{{UL2.0|1=Mormegil|contributions=1|deletedcontributions=1|editcount=1|blocklog=1|rightslog=1|crosswiki=1}} :''Discussion open until: 08:50, 27 March 2026 (UTC)'' :I’d like to get the functioneer bit (I’ve had it before when experimenting with Wikifunctions in 2023) to work on a couple of natural language generating functions for Czech. (See the first pieces at [[Z32588]], [[Z32548]].) Thanks. --[[User:Mormegil|Mormegil]] ([[User talk:Mormegil|talk]]) 08:50, 25 March 2026 (UTC) ==Autopatroller== {{See also|Wikifunctions:Autopatrollers}} ==Administrator== {{see also|Wikifunctions:Administrators}} ==Interface administrator== {{see also|Wikifunctions:Interface administrators}} ==Translation administrator== {{see also|Wikifunctions:Translation administrators}} ==Bureaucrat== {{see also|Wikifunctions:Bureaucrats}} == Miscellaneous requests == ==See also== * [[Wikifunctions:User groups]] ** [[mw:Help:Wikifunctions/User rights]] for additional context about functioneers, maintainers, sysops, and bureaucrats [[Category:User groups|*]] pl7d60eywwkk9hp32o3b2a5b0uqyxs2 261342 261341 2026-03-27T22:52:16Z Feeglgeef 8776 /* Mormegil */ Reply 261342 wikitext text/x-wiki {{shortcut|[[WF:RFG]]|[[WF:PERM]]|[[WF:RFUG]]}} This is the place to request specific user groups: {{ombox | image = [[File:Echo user-rights icon.svg|60x60px|alt=|link=]] | text = '''How to make a request''' #Edit the section for the user group you wish to request #Copy the following and ''append'' it to the text-area: ##Requests without required discussion: <code><nowiki>{{subst:rfg|1={{subst:REVISIONUSER}}|2=reason ~~~~}}</nowiki></code> ##Functioneer requests (required 48-hour discussion): <code><nowiki>{{subst:rfg|3=1|length=2 days|1={{subst:REVISIONUSER}}|2=reason ~~~~}}</nowiki></code> ##Requests with required 1-week discussion: <code><nowiki>{{subst:rfg|3=1|1={{subst:REVISIONUSER}}|2=reason ~~~~}}</nowiki></code> #Replace <code>reason</code> with a rationale based on the guidelines specified for the user group }} :''Archived requests can be found at [[Wikifunctions:Requests for user groups/Archive]]'' {{Autoarchive resolved section |age =1 |archive =((FULLPAGENAME))/Archive/((year))/((month:##)) |level =3 }} == Functioneer == {{see also|Wikifunctions:Functioneers}} === Higa4 === :{{UL2.0|1=Higa4|contributions=1|deletedcontributions=1|editcount=1|blocklog=1|rightslog=1|crosswiki=1}} :''Discussion open until: 14:03, 26 March 2026 (UTC)'' :I want to be a functioneer because I'm going to add several functions for Japanese and I hope I can connect for myself to check testcases smoothly. [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 14:03, 24 March 2026 (UTC) ::{{s}}: sufficient contributions, including especially valuable multilingual ones. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 22:50, 27 March 2026 (UTC) === Mormegil === :{{UL2.0|1=Mormegil|contributions=1|deletedcontributions=1|editcount=1|blocklog=1|rightslog=1|crosswiki=1}} :''Discussion open until: 08:50, 27 March 2026 (UTC)'' :I’d like to get the functioneer bit (I’ve had it before when experimenting with Wikifunctions in 2023) to work on a couple of natural language generating functions for Czech. (See the first pieces at [[Z32588]], [[Z32548]].) Thanks. --[[User:Mormegil|Mormegil]] ([[User talk:Mormegil|talk]]) 08:50, 25 March 2026 (UTC) ::{{s}}: sufficient contributions, including especially valuable multilingual ones. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 22:52, 27 March 2026 (UTC) ==Autopatroller== {{See also|Wikifunctions:Autopatrollers}} ==Administrator== {{see also|Wikifunctions:Administrators}} ==Interface administrator== {{see also|Wikifunctions:Interface administrators}} ==Translation administrator== {{see also|Wikifunctions:Translation administrators}} ==Bureaucrat== {{see also|Wikifunctions:Bureaucrats}} == Miscellaneous requests == ==See also== * [[Wikifunctions:User groups]] ** [[mw:Help:Wikifunctions/User rights]] for additional context about functioneers, maintainers, sysops, and bureaucrats [[Category:User groups|*]] ksdhp024mx5m6cdmmxt5fe3dz6pz0ym 261343 261342 2026-03-27T22:53:07Z GearsDatapacks 46130 /* Functioneer */ Request 261343 wikitext text/x-wiki {{shortcut|[[WF:RFG]]|[[WF:PERM]]|[[WF:RFUG]]}} This is the place to request specific user groups: {{ombox | image = [[File:Echo user-rights icon.svg|60x60px|alt=|link=]] | text = '''How to make a request''' #Edit the section for the user group you wish to request #Copy the following and ''append'' it to the text-area: ##Requests without required discussion: <code><nowiki>{{subst:rfg|1={{subst:REVISIONUSER}}|2=reason ~~~~}}</nowiki></code> ##Functioneer requests (required 48-hour discussion): <code><nowiki>{{subst:rfg|3=1|length=2 days|1={{subst:REVISIONUSER}}|2=reason ~~~~}}</nowiki></code> ##Requests with required 1-week discussion: <code><nowiki>{{subst:rfg|3=1|1={{subst:REVISIONUSER}}|2=reason ~~~~}}</nowiki></code> #Replace <code>reason</code> with a rationale based on the guidelines specified for the user group }} :''Archived requests can be found at [[Wikifunctions:Requests for user groups/Archive]]'' {{Autoarchive resolved section |age =1 |archive =((FULLPAGENAME))/Archive/((year))/((month:##)) |level =3 }} == Functioneer == {{see also|Wikifunctions:Functioneers}} === Higa4 === :{{UL2.0|1=Higa4|contributions=1|deletedcontributions=1|editcount=1|blocklog=1|rightslog=1|crosswiki=1}} :''Discussion open until: 14:03, 26 March 2026 (UTC)'' :I want to be a functioneer because I'm going to add several functions for Japanese and I hope I can connect for myself to check testcases smoothly. [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 14:03, 24 March 2026 (UTC) ::{{s}}: sufficient contributions, including especially valuable multilingual ones. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 22:50, 27 March 2026 (UTC) === Mormegil === :{{UL2.0|1=Mormegil|contributions=1|deletedcontributions=1|editcount=1|blocklog=1|rightslog=1|crosswiki=1}} :''Discussion open until: 08:50, 27 March 2026 (UTC)'' :I’d like to get the functioneer bit (I’ve had it before when experimenting with Wikifunctions in 2023) to work on a couple of natural language generating functions for Czech. (See the first pieces at [[Z32588]], [[Z32548]].) Thanks. --[[User:Mormegil|Mormegil]] ([[User talk:Mormegil|talk]]) 08:50, 25 March 2026 (UTC) ::{{s}}: sufficient contributions, including especially valuable multilingual ones. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 22:52, 27 March 2026 (UTC) === GearsDatapacks === :{{UL2.0|1=GearsDatapacks|contributions=1|deletedcontributions=1|editcount=1|blocklog=1|rightslog=1|crosswiki=1}} :''Discussion open until: 22:52, 29 March 2026 (UTC)'' :I've been contributing a decent amount on [[abstract:Abstract Wikipedia:Main page|Abstract Wikipedia]] and noticed a few functions that could be added. I've begun implementing these functions, but due to the complex nature of natural language I often need to go back and improve the implementation later. If I were a functioneer, I could do this more easily, as well as connecting implementations once they are ready to be used. &#123;&#123;[[User:GearsDatapacks|GearsDatapacks]]&#124;[[User talk:GearsDatapacks|talk]]&#124;[[Special:Contributions/GearsDatapacks|contribs]]&#125;&#125; 22:52, 27 March 2026 (UTC) ==Autopatroller== {{See also|Wikifunctions:Autopatrollers}} ==Administrator== {{see also|Wikifunctions:Administrators}} ==Interface administrator== {{see also|Wikifunctions:Interface administrators}} ==Translation administrator== {{see also|Wikifunctions:Translation administrators}} ==Bureaucrat== {{see also|Wikifunctions:Bureaucrats}} == Miscellaneous requests == ==See also== * [[Wikifunctions:User groups]] ** [[mw:Help:Wikifunctions/User rights]] for additional context about functioneers, maintainers, sysops, and bureaucrats [[Category:User groups|*]] oonh67m7ud02buzsfvi1apvm8msc8zq 261344 261343 2026-03-27T22:56:14Z Feeglgeef 8776 /* GearsDatapacks */ Reply 261344 wikitext text/x-wiki {{shortcut|[[WF:RFG]]|[[WF:PERM]]|[[WF:RFUG]]}} This is the place to request specific user groups: {{ombox | image = [[File:Echo user-rights icon.svg|60x60px|alt=|link=]] | text = '''How to make a request''' #Edit the section for the user group you wish to request #Copy the following and ''append'' it to the text-area: ##Requests without required discussion: <code><nowiki>{{subst:rfg|1={{subst:REVISIONUSER}}|2=reason ~~~~}}</nowiki></code> ##Functioneer requests (required 48-hour discussion): <code><nowiki>{{subst:rfg|3=1|length=2 days|1={{subst:REVISIONUSER}}|2=reason ~~~~}}</nowiki></code> ##Requests with required 1-week discussion: <code><nowiki>{{subst:rfg|3=1|1={{subst:REVISIONUSER}}|2=reason ~~~~}}</nowiki></code> #Replace <code>reason</code> with a rationale based on the guidelines specified for the user group }} :''Archived requests can be found at [[Wikifunctions:Requests for user groups/Archive]]'' {{Autoarchive resolved section |age =1 |archive =((FULLPAGENAME))/Archive/((year))/((month:##)) |level =3 }} == Functioneer == {{see also|Wikifunctions:Functioneers}} === Higa4 === :{{UL2.0|1=Higa4|contributions=1|deletedcontributions=1|editcount=1|blocklog=1|rightslog=1|crosswiki=1}} :''Discussion open until: 14:03, 26 March 2026 (UTC)'' :I want to be a functioneer because I'm going to add several functions for Japanese and I hope I can connect for myself to check testcases smoothly. [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 14:03, 24 March 2026 (UTC) ::{{s}}: sufficient contributions, including especially valuable multilingual ones. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 22:50, 27 March 2026 (UTC) === Mormegil === :{{UL2.0|1=Mormegil|contributions=1|deletedcontributions=1|editcount=1|blocklog=1|rightslog=1|crosswiki=1}} :''Discussion open until: 08:50, 27 March 2026 (UTC)'' :I’d like to get the functioneer bit (I’ve had it before when experimenting with Wikifunctions in 2023) to work on a couple of natural language generating functions for Czech. (See the first pieces at [[Z32588]], [[Z32548]].) Thanks. --[[User:Mormegil|Mormegil]] ([[User talk:Mormegil|talk]]) 08:50, 25 March 2026 (UTC) ::{{s}}: sufficient contributions, including especially valuable multilingual ones. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 22:52, 27 March 2026 (UTC) === GearsDatapacks === :{{UL2.0|1=GearsDatapacks|contributions=1|deletedcontributions=1|editcount=1|blocklog=1|rightslog=1|crosswiki=1}} :''Discussion open until: 22:52, 29 March 2026 (UTC)'' :I've been contributing a decent amount on [[abstract:Abstract Wikipedia:Main page|Abstract Wikipedia]] and noticed a few functions that could be added. I've begun implementing these functions, but due to the complex nature of natural language I often need to go back and improve the implementation later. If I were a functioneer, I could do this more easily, as well as connecting implementations once they are ready to be used. &#123;&#123;[[User:GearsDatapacks|GearsDatapacks]]&#124;[[User talk:GearsDatapacks|talk]]&#124;[[Special:Contributions/GearsDatapacks|contribs]]&#125;&#125; 22:52, 27 March 2026 (UTC) ::{{s}}: local contributions are a bit weak but their impactful work on AWP justifies the user group. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 22:56, 27 March 2026 (UTC) ==Autopatroller== {{See also|Wikifunctions:Autopatrollers}} ==Administrator== {{see also|Wikifunctions:Administrators}} ==Interface administrator== {{see also|Wikifunctions:Interface administrators}} ==Translation administrator== {{see also|Wikifunctions:Translation administrators}} ==Bureaucrat== {{see also|Wikifunctions:Bureaucrats}} == Miscellaneous requests == ==See also== * [[Wikifunctions:User groups]] ** [[mw:Help:Wikifunctions/User rights]] for additional context about functioneers, maintainers, sysops, and bureaucrats [[Category:User groups|*]] 41vo9xr74drswjizicjjx2seuxhpcq8 261345 261344 2026-03-27T23:00:07Z Ameisenigel 44 /* Higa4 */ done 261345 wikitext text/x-wiki {{shortcut|[[WF:RFG]]|[[WF:PERM]]|[[WF:RFUG]]}} This is the place to request specific user groups: {{ombox | image = [[File:Echo user-rights icon.svg|60x60px|alt=|link=]] | text = '''How to make a request''' #Edit the section for the user group you wish to request #Copy the following and ''append'' it to the text-area: ##Requests without required discussion: <code><nowiki>{{subst:rfg|1={{subst:REVISIONUSER}}|2=reason ~~~~}}</nowiki></code> ##Functioneer requests (required 48-hour discussion): <code><nowiki>{{subst:rfg|3=1|length=2 days|1={{subst:REVISIONUSER}}|2=reason ~~~~}}</nowiki></code> ##Requests with required 1-week discussion: <code><nowiki>{{subst:rfg|3=1|1={{subst:REVISIONUSER}}|2=reason ~~~~}}</nowiki></code> #Replace <code>reason</code> with a rationale based on the guidelines specified for the user group }} :''Archived requests can be found at [[Wikifunctions:Requests for user groups/Archive]]'' {{Autoarchive resolved section |age =1 |archive =((FULLPAGENAME))/Archive/((year))/((month:##)) |level =3 }} == Functioneer == {{see also|Wikifunctions:Functioneers}} === Higa4 === :{{UL2.0|1=Higa4|contributions=1|deletedcontributions=1|editcount=1|blocklog=1|rightslog=1|crosswiki=1}} :''Discussion open until: 14:03, 26 March 2026 (UTC)'' :I want to be a functioneer because I'm going to add several functions for Japanese and I hope I can connect for myself to check testcases smoothly. [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 14:03, 24 March 2026 (UTC) ::{{s}}: sufficient contributions, including especially valuable multilingual ones. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 22:50, 27 March 2026 (UTC) :{{done}} --[[User:Ameisenigel|Ameisenigel]] ([[User talk:Ameisenigel|talk]]) 23:00, 27 March 2026 (UTC) {{Section resolved|1=[[User:Ameisenigel|Ameisenigel]] ([[User talk:Ameisenigel|talk]]) 23:00, 27 March 2026 (UTC)}} === Mormegil === :{{UL2.0|1=Mormegil|contributions=1|deletedcontributions=1|editcount=1|blocklog=1|rightslog=1|crosswiki=1}} :''Discussion open until: 08:50, 27 March 2026 (UTC)'' :I’d like to get the functioneer bit (I’ve had it before when experimenting with Wikifunctions in 2023) to work on a couple of natural language generating functions for Czech. (See the first pieces at [[Z32588]], [[Z32548]].) Thanks. --[[User:Mormegil|Mormegil]] ([[User talk:Mormegil|talk]]) 08:50, 25 March 2026 (UTC) ::{{s}}: sufficient contributions, including especially valuable multilingual ones. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 22:52, 27 March 2026 (UTC) === GearsDatapacks === :{{UL2.0|1=GearsDatapacks|contributions=1|deletedcontributions=1|editcount=1|blocklog=1|rightslog=1|crosswiki=1}} :''Discussion open until: 22:52, 29 March 2026 (UTC)'' :I've been contributing a decent amount on [[abstract:Abstract Wikipedia:Main page|Abstract Wikipedia]] and noticed a few functions that could be added. I've begun implementing these functions, but due to the complex nature of natural language I often need to go back and improve the implementation later. If I were a functioneer, I could do this more easily, as well as connecting implementations once they are ready to be used. &#123;&#123;[[User:GearsDatapacks|GearsDatapacks]]&#124;[[User talk:GearsDatapacks|talk]]&#124;[[Special:Contributions/GearsDatapacks|contribs]]&#125;&#125; 22:52, 27 March 2026 (UTC) ::{{s}}: local contributions are a bit weak but their impactful work on AWP justifies the user group. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 22:56, 27 March 2026 (UTC) ==Autopatroller== {{See also|Wikifunctions:Autopatrollers}} ==Administrator== {{see also|Wikifunctions:Administrators}} ==Interface administrator== {{see also|Wikifunctions:Interface administrators}} ==Translation administrator== {{see also|Wikifunctions:Translation administrators}} ==Bureaucrat== {{see also|Wikifunctions:Bureaucrats}} == Miscellaneous requests == ==See also== * [[Wikifunctions:User groups]] ** [[mw:Help:Wikifunctions/User rights]] for additional context about functioneers, maintainers, sysops, and bureaucrats [[Category:User groups|*]] b5l8rl0crijxyu6otquui4c2j4ylv3b 261346 261345 2026-03-27T23:01:20Z Ameisenigel 44 /* Mormegil */ done 261346 wikitext text/x-wiki {{shortcut|[[WF:RFG]]|[[WF:PERM]]|[[WF:RFUG]]}} This is the place to request specific user groups: {{ombox | image = [[File:Echo user-rights icon.svg|60x60px|alt=|link=]] | text = '''How to make a request''' #Edit the section for the user group you wish to request #Copy the following and ''append'' it to the text-area: ##Requests without required discussion: <code><nowiki>{{subst:rfg|1={{subst:REVISIONUSER}}|2=reason ~~~~}}</nowiki></code> ##Functioneer requests (required 48-hour discussion): <code><nowiki>{{subst:rfg|3=1|length=2 days|1={{subst:REVISIONUSER}}|2=reason ~~~~}}</nowiki></code> ##Requests with required 1-week discussion: <code><nowiki>{{subst:rfg|3=1|1={{subst:REVISIONUSER}}|2=reason ~~~~}}</nowiki></code> #Replace <code>reason</code> with a rationale based on the guidelines specified for the user group }} :''Archived requests can be found at [[Wikifunctions:Requests for user groups/Archive]]'' {{Autoarchive resolved section |age =1 |archive =((FULLPAGENAME))/Archive/((year))/((month:##)) |level =3 }} == Functioneer == {{see also|Wikifunctions:Functioneers}} === Higa4 === :{{UL2.0|1=Higa4|contributions=1|deletedcontributions=1|editcount=1|blocklog=1|rightslog=1|crosswiki=1}} :''Discussion open until: 14:03, 26 March 2026 (UTC)'' :I want to be a functioneer because I'm going to add several functions for Japanese and I hope I can connect for myself to check testcases smoothly. [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 14:03, 24 March 2026 (UTC) ::{{s}}: sufficient contributions, including especially valuable multilingual ones. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 22:50, 27 March 2026 (UTC) :{{done}} --[[User:Ameisenigel|Ameisenigel]] ([[User talk:Ameisenigel|talk]]) 23:00, 27 March 2026 (UTC) {{Section resolved|1=[[User:Ameisenigel|Ameisenigel]] ([[User talk:Ameisenigel|talk]]) 23:00, 27 March 2026 (UTC)}} === Mormegil === :{{UL2.0|1=Mormegil|contributions=1|deletedcontributions=1|editcount=1|blocklog=1|rightslog=1|crosswiki=1}} :''Discussion open until: 08:50, 27 March 2026 (UTC)'' :I’d like to get the functioneer bit (I’ve had it before when experimenting with Wikifunctions in 2023) to work on a couple of natural language generating functions for Czech. (See the first pieces at [[Z32588]], [[Z32548]].) Thanks. --[[User:Mormegil|Mormegil]] ([[User talk:Mormegil|talk]]) 08:50, 25 March 2026 (UTC) ::{{s}}: sufficient contributions, including especially valuable multilingual ones. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 22:52, 27 March 2026 (UTC) :{{done}} --[[User:Ameisenigel|Ameisenigel]] ([[User talk:Ameisenigel|talk]]) 23:01, 27 March 2026 (UTC) {{Section resolved|1=[[User:Ameisenigel|Ameisenigel]] ([[User talk:Ameisenigel|talk]]) 23:01, 27 March 2026 (UTC)}} === GearsDatapacks === :{{UL2.0|1=GearsDatapacks|contributions=1|deletedcontributions=1|editcount=1|blocklog=1|rightslog=1|crosswiki=1}} :''Discussion open until: 22:52, 29 March 2026 (UTC)'' :I've been contributing a decent amount on [[abstract:Abstract Wikipedia:Main page|Abstract Wikipedia]] and noticed a few functions that could be added. I've begun implementing these functions, but due to the complex nature of natural language I often need to go back and improve the implementation later. If I were a functioneer, I could do this more easily, as well as connecting implementations once they are ready to be used. &#123;&#123;[[User:GearsDatapacks|GearsDatapacks]]&#124;[[User talk:GearsDatapacks|talk]]&#124;[[Special:Contributions/GearsDatapacks|contribs]]&#125;&#125; 22:52, 27 March 2026 (UTC) ::{{s}}: local contributions are a bit weak but their impactful work on AWP justifies the user group. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 22:56, 27 March 2026 (UTC) ==Autopatroller== {{See also|Wikifunctions:Autopatrollers}} ==Administrator== {{see also|Wikifunctions:Administrators}} ==Interface administrator== {{see also|Wikifunctions:Interface administrators}} ==Translation administrator== {{see also|Wikifunctions:Translation administrators}} ==Bureaucrat== {{see also|Wikifunctions:Bureaucrats}} == Miscellaneous requests == ==See also== * [[Wikifunctions:User groups]] ** [[mw:Help:Wikifunctions/User rights]] for additional context about functioneers, maintainers, sysops, and bureaucrats [[Category:User groups|*]] fh1lr569ynkywuufqwshlyinktuujsj 261409 261346 2026-03-28T07:11:48Z EatingCarBatteries 61191 /* Functioneer */ 261409 wikitext text/x-wiki {{shortcut|[[WF:RFG]]|[[WF:PERM]]|[[WF:RFUG]]}} This is the place to request specific user groups: {{ombox | image = [[File:Echo user-rights icon.svg|60x60px|alt=|link=]] | text = '''How to make a request''' #Edit the section for the user group you wish to request #Copy the following and ''append'' it to the text-area: ##Requests without required discussion: <code><nowiki>{{subst:rfg|1={{subst:REVISIONUSER}}|2=reason ~~~~}}</nowiki></code> ##Functioneer requests (required 48-hour discussion): <code><nowiki>{{subst:rfg|3=1|length=2 days|1={{subst:REVISIONUSER}}|2=reason ~~~~}}</nowiki></code> ##Requests with required 1-week discussion: <code><nowiki>{{subst:rfg|3=1|1={{subst:REVISIONUSER}}|2=reason ~~~~}}</nowiki></code> #Replace <code>reason</code> with a rationale based on the guidelines specified for the user group }} :''Archived requests can be found at [[Wikifunctions:Requests for user groups/Archive]]'' {{Autoarchive resolved section |age =1 |archive =((FULLPAGENAME))/Archive/((year))/((month:##)) |level =3 }} == Functioneer == {{see also|Wikifunctions:Functioneers}} === Higa4 === :{{UL2.0|1=Higa4|contributions=1|deletedcontributions=1|editcount=1|blocklog=1|rightslog=1|crosswiki=1}} :''Discussion open until: 14:03, 26 March 2026 (UTC)'' :I want to be a functioneer because I'm going to add several functions for Japanese and I hope I can connect for myself to check testcases smoothly. [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 14:03, 24 March 2026 (UTC) ::{{s}}: sufficient contributions, including especially valuable multilingual ones. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 22:50, 27 March 2026 (UTC) :{{done}} --[[User:Ameisenigel|Ameisenigel]] ([[User talk:Ameisenigel|talk]]) 23:00, 27 March 2026 (UTC) {{Section resolved|1=[[User:Ameisenigel|Ameisenigel]] ([[User talk:Ameisenigel|talk]]) 23:00, 27 March 2026 (UTC)}} === Mormegil === :{{UL2.0|1=Mormegil|contributions=1|deletedcontributions=1|editcount=1|blocklog=1|rightslog=1|crosswiki=1}} :''Discussion open until: 08:50, 27 March 2026 (UTC)'' :I’d like to get the functioneer bit (I’ve had it before when experimenting with Wikifunctions in 2023) to work on a couple of natural language generating functions for Czech. (See the first pieces at [[Z32588]], [[Z32548]].) Thanks. --[[User:Mormegil|Mormegil]] ([[User talk:Mormegil|talk]]) 08:50, 25 March 2026 (UTC) ::{{s}}: sufficient contributions, including especially valuable multilingual ones. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 22:52, 27 March 2026 (UTC) :{{done}} --[[User:Ameisenigel|Ameisenigel]] ([[User talk:Ameisenigel|talk]]) 23:01, 27 March 2026 (UTC) {{Section resolved|1=[[User:Ameisenigel|Ameisenigel]] ([[User talk:Ameisenigel|talk]]) 23:01, 27 March 2026 (UTC)}} === GearsDatapacks === :{{UL2.0|1=GearsDatapacks|contributions=1|deletedcontributions=1|editcount=1|blocklog=1|rightslog=1|crosswiki=1}} :''Discussion open until: 22:52, 29 March 2026 (UTC)'' :I've been contributing a decent amount on [[abstract:Abstract Wikipedia:Main page|Abstract Wikipedia]] and noticed a few functions that could be added. I've begun implementing these functions, but due to the complex nature of natural language I often need to go back and improve the implementation later. If I were a functioneer, I could do this more easily, as well as connecting implementations once they are ready to be used. &#123;&#123;[[User:GearsDatapacks|GearsDatapacks]]&#124;[[User talk:GearsDatapacks|talk]]&#124;[[Special:Contributions/GearsDatapacks|contribs]]&#125;&#125; 22:52, 27 March 2026 (UTC) ::{{s}}: local contributions are a bit weak but their impactful work on AWP justifies the user group. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 22:56, 27 March 2026 (UTC) === EatingCarBatteries === :{{UL2.0|1=EatingCarBatteries|contributions=1|deletedcontributions=1|editcount=1|blocklog=1|rightslog=1|crosswiki=1}} :While I am still new to this game, I feel like I'm picking up creating composition functions fast. I was told to apply for perms in the AW Telegram after creating a sentence-case plural section title function. [[User:EatingCarBatteries|EatingCarBatteries]] ([[User talk:EatingCarBatteries|talk]]) 07:11, 28 March 2026 (UTC) ==Autopatroller== {{See also|Wikifunctions:Autopatrollers}} ==Administrator== {{see also|Wikifunctions:Administrators}} ==Interface administrator== {{see also|Wikifunctions:Interface administrators}} ==Translation administrator== {{see also|Wikifunctions:Translation administrators}} ==Bureaucrat== {{see also|Wikifunctions:Bureaucrats}} == Miscellaneous requests == ==See also== * [[Wikifunctions:User groups]] ** [[mw:Help:Wikifunctions/User rights]] for additional context about functioneers, maintainers, sysops, and bureaucrats [[Category:User groups|*]] 34u3p9okzowk1coevwv7wbu3a7ld7fy Wikifunctions:Type proposals 4 24480 261184 256484 2026-03-27T12:01:33Z DVrandecic (WMF) 7 done two more grammatical voices 261184 wikitext text/x-wiki {{see also|d:Special:ListDatatypes}} {{shortcut|[[WF:TP]]}} This page is to discuss and decide on proposals for new [[WF:types|Types]], and for changing existing ones. Before proposing, you should familiarize yourself with the [[WF:Function model|Function model]]. Types are currently being created by Wikifunctions staff. Over time these rights will be handed over to the community. == Proposals for new types to be created == === Implementation in progress === === In discussion === * [[WF:type proposals/complex128|complex128]] * [[WF:type proposals/SI units|SI units]] * [[WF:type proposals/Unit of measurement|Unit of measurement]] * [[WF:type proposals/Moment in time|Moment in time]] * [[WF:type proposals/Julian calendar date|Julian calendar date]] * [[WF:type proposals/Grapheme|Grapheme]] * [[WF:type proposals/Wikifunctions object reference|Wikifunctions object reference]] * [[WF:type proposals/Value with error|Value with error]] * [[WF:type proposals/configuration of functions for given types|configuration of functions for given types]] * [[WF:type proposals/Geometrical point|Geometrical point]] * [[WF:type proposals/Syntactic type|Syntactic type]] * [[WF:type proposals/Currency|Currency]] * [[WF:type proposals/Named parameters list|Named parameters list]] ==== Lightweight Wikidata enumerations ==== * [[WF:type proposals/French tenses|French tenses]] * [[WF:type proposals/French subjects|French subjects]] * [[WF:type proposals/Timezone|Timezone]] * [[WF:type proposals/Italian auxiliary verb|Italian auxiliary verb]] * [[WF:type proposals/Italian simple preposition|Italian simple preposition]] * [[WF:type proposals/Italian tense|Italian tense]] * [[WF:type proposals/Unicode General Category|Unicode General Category]] * [[WF:type proposals/Taxon rank|Taxon rank]] * [[WF:type proposals/Word order|Word order]] * [[WF:Type_proposals/IPA_phone_base_glyph|IPA phone]] * [[WF:Type_proposals/Season|Season]] * [[WF:Type_proposals/Zodiac sign|Zodiac sign]] * [[WF:Type_proposals/Simple temporal entity|Simple temporal entity]] === Being prepared === === Stalled === * [[WF:type proposals/Typed string|Typed string]] * [[WF:type proposals/Wikidata value|Wikidata value]] * [[WF:type proposals/Wikidata string-based value|Wikidata string-based value]] * [[WF:type proposals/bytes|bytes]] * [[WF:type proposals/Percentage|Percentage]] === Something to think about === * Symbol and expression (as in a [[w:computer algebra system|computer algebra system]]) - currently no idea yet * [[WF:type proposals/Alphabet|Alphabet]] * [[WF:type proposals/Context|Context]] * [[WF:type proposals/Imperial Units|Imperial Units]] * months in calendars ** [[WF:type proposals/Bengali month|Bengali month]] ** [[WF:type proposals/Darian month|Darian month]] ** [[WF:type proposals/Hebrew month|Hebrew month]] ** [[WF:type proposals/Hindu month|Hindu month]] ** [[WF:type proposals/Nepali month|Nepali month]] ** [[WF:type proposals/Sindhi month|Sindhi month]] ** [[WF:type proposals/Tamil month|Tamil month]] * [[WF:type proposals/Multilingual gloss|Multilingual gloss]] * [[WF:type proposals/Position on Earth|Position on Earth]] * [[WF:type proposals/URL|URL]] ==== Wikidata integration ==== (These are just the types we will need that are not listed somewhere else) * Wikidata qualifier * Wikidata Data type * Wikidata sitelink * Unknown value * Entity schema ==== "Heavy" data ==== Heavy data is those that can be more than 1.5MB (where medium data are between 60KB and 1.5MB). This includes most real-world files (jpg, mp3, pdf, zip, exe) and raw forms of data containing in such files (e.g. 1024*768 RGB image has 2359296 bytes in raw form). Wikifunctions currently have limited support for medium data and little support for heavy data (and neither support file uploading for computation). See [[WF:type proposals/bytes#Uses|bytes § Uses]] for more information. * Image (raster): basically, a 2D or 3D array of number (though we ''do'' need a type to represent both the array and image mode) * Audio and signal: basically, one number (sampling rate) and one or more (1D) arrays of number, one per channel (though we ''do'' need a type to represent all of them) * Video: audio plus series of image === Unclear necessity / probably unnecessary === * Multidimensional array: can be represented as list of lists, but a dedicated edit interface would be nice (and way to enforce an array not to be jagged) * Typed tuple: can be represented as nested [[Z882]] * Set: use list instead * Multiset: use list instead * Multimap: use list of [[Z882]] instead (see also simple map [[Z883]]) == Types that have already been Implemented == {{main|WF:type}} * [[WF:type proposals/Grammatical voice (a/m/p)|Grammatical voice (a/m/p)]] * [[WF:type proposals/Grammatical voice (a/mp)|Grammatical voice (a/mp)]] * [[WF:type proposals/RGBA color|RGBA color]] * [[WF:type proposals/Grammatical number (singular/paucal/multal)|Grammatical number (singular/paucal/multal)]] * [[WF:type proposals/Grammatical definiteness|Grammatical definiteness]] * [[WF:type proposals/Grammatical voice (a/p)|Grammatical voice (a/p)]] * [[WF:type proposals/Grammatical affirmation and negation|Grammatical affirmation and negation]] * [[WF:type proposals/Grammatical cases (n/g/d/a)|Grammatical cases (n/g/d/a)]] * [[WF:type proposals/Grammatical degree of comparison (p/c/s)|Grammatical degree of comparison (p/c/s)]] * [[WF:type proposals/Chemical element|Chemical element]] * [[WF:type proposals/Wikidata based types|Wikidata based types]] as {{Z|Z6001}}, {{Z|Z6002}}, {{Z|Z6003}}, {{Z|Z6004}}, {{Z|Z6005}} ** [[WF:type proposals/Wikidata lexeme senses|Wikidata lexeme senses]] as {{Z|Z6006}} ** [[WF:type proposals/Wikidata time|Wikidata time]] as {{Z|Z6064}} ** [[WF:type proposals/Wikidata quantity|Wikidata quantity]] as {{Z|Z6010}} ** [[WF:type proposals/Wikidata geocoordinates|Wikidata geocoordinates]] as {{Z|Z6011}} * [[WF:type proposals/Grammatical number (singular/dual/plural)|Grammatical number (singular/dual/plural)]] as {{Z|Z28215}} * [[WF:type proposals/Breton mutation|Breton mutation]] as {{Z|Z27971}} * [[WF:type proposals/Grammatical person (1/2/3)|Grammatical person (1/2/3)]] as {{Z|Z27970}} * [[WF:type proposals/Grammatical gender (a/i)|Grammatical gender (a/i)]] as {{Z|Z26935}} * [[WF:type proposals/Grammatical number (s/p)|Grammatical number (s/p)]] as {{Z|Z26934}} * [[WF:type proposals/Hijri calendar month|Hijri calendar month]] as {{Z|Z26582}} * [[WF:type proposals/Grammatical gender (m/f)|Grammatical gender (m/f)]] as {{Z|Z25340}} * [[WF:type proposals/Grammatical gender (m/f/n)|Grammatical gender (m/f/n)]] as {{Z|Z25501}} * [[WF:type proposals/Grammatical gender (c/n)|Grammatical gender (c/n)]] as {{Z|Z25502}} * [[WF:type proposals/Natural number|Natural number]] as {{Z|Z13518}} * [[WF:type_proposals/Gregorian calendar month|Gregorian calendar month]] as {{Z|Z16098}} * [[WF:type proposals/Sign|Sign]] as {{Z|Z16659}} * [[WF:type proposals/Igbo calendar month|Igbo calendar month]] as {{Z|Z16927}} * [[WF:type proposals/Integer|Integer]] as {{Z|Z16683}} * [[WF:type proposals/Day of the week|Day of the week]] as {{Z|Z17402}} * [[WF:type proposals/Gregorian era|Gregorian era]] as {{Z|Z17813}} * [[WF:type proposals/Rational number|Rational number]] as {{Z|Z19677}} * [[WF:type proposals/Gregorian year|Gregorian year]] as {{Z|Z20159}} * [[WF:type proposals/Day of Roman year|Day of Roman year]] as {{Z|Z20342}} * [[WF:type proposals/Gregorian calendar date|Gregorian calendar date]] as {{Z|Z20420}} * [[WF:type proposals/float64|float64]] as {{Z|Z20838}} * [[WF:type proposals/Kleenean|Kleenean]] as {{Z|Z22112}} * [[WF:type proposals/Byte|Byte]] as {{Z|Z80}} * [[WF:type proposals/Unicode codepoint|Unicode codepoint]] as {{Z|Z86}} == Proposals for changing existing types == === Changes to existing types === * ... == Templates == * [[WF:type proposals/(unnamed – new Type)|unnamed – new Type]] * [[WF:type proposals/(unnamed – new lightweight Wikidata enumeration)|unnamed – new lightweight Wikidata enumeration]] * [[WF:type proposals/(unnamed – modification of an existing Type)|unnamed – modification of an existing Type]] [[category:project concept]] hwl3m104fhiy236z9kp3fp7cuxvymwy Z14046 0 25858 261226 212570 2026-03-27T14:34:28Z YoshiRulz 10156 Added Z32804 to the approved list of test cases 261226 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z14046" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z1", "Z17K2": "Z14046K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "element" }, { "Z1K1": "Z11", "Z11K1": "Z1014", "Z11K2": "Ihe" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Element" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "élément" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z8K3": [ "Z20", "Z14048", "Z27673", "Z32804" ], "Z8K4": [ "Z14", "Z14047" ], "Z8K5": "Z14046" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "element to list" }, { "Z1K1": "Z11", "Z11K1": "Z1014", "Z11K2": "Ihe iji depụta " }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Element zu Liste" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "élément vers liste" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "listify", "make list from element", "create list from element", "list from element", "object to list", "unary cons", "unary prepend", "singleton list" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "makes a single-element list from the given element" }, { "Z1K1": "Z11", "Z11K1": "Z1014", "Z11K2": "na-eme ndepụta otu ihe site na mmewere enyere" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "erstellt anhand des angegebenen Elements eine Liste" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "crée une liste d'un seul élément à partir de l'élément donné" } ] } } 3kepxkdm6y7kwjxkp5tywnj7cc6h8se 261229 261226 2026-03-27T14:51:36Z YoshiRulz 10156 Removed Z32804 from the approved list of test cases 261229 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z14046" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z1", "Z17K2": "Z14046K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "element" }, { "Z1K1": "Z11", "Z11K1": "Z1014", "Z11K2": "Ihe" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Element" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "élément" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z8K3": [ "Z20", "Z14048", "Z27673" ], "Z8K4": [ "Z14", "Z14047" ], "Z8K5": "Z14046" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "element to list" }, { "Z1K1": "Z11", "Z11K1": "Z1014", "Z11K2": "Ihe iji depụta " }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Element zu Liste" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "élément vers liste" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "listify", "make list from element", "create list from element", "list from element", "object to list", "unary cons", "unary prepend", "singleton list" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "makes a single-element list from the given element" }, { "Z1K1": "Z11", "Z11K1": "Z1014", "Z11K2": "na-eme ndepụta otu ihe site na mmewere enyere" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "erstellt anhand des angegebenen Elements eine Liste" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "crée une liste d'un seul élément à partir de l'élément donné" } ] } } ef35t5n319abgb73dhpghq0fghx0w3y Wikifunctions:Cardinal numbers 4 30177 261269 259484 2026-03-27T17:42:28Z Mormegil 150 +cs, Hindi seems approved 261269 wikitext text/x-wiki <languages/> {{Move|Wikifunctions:Catalogue/Natural language operations/Cardinal numbers|reason=This page is a list of functions, but is outside the catalogue}} <translate> <!--T:1--> We are looking to have functions to create the names of numbers in many different languages. The [[<tvar name="1">Special:MyLanguage/Wikifunctions:Status updates/2024-05-15</tvar>|newsletter from 15 May 2024]] made a Call for Functions! <!--T:2--> On this page, we collect and list the existing functions and related objects in order to coordinate the work. <!--T:3--> The functions take as input a [[<tvar name="1">Z13518</tvar>|natural number]] and return a [[<tvar name="2">Z6</tvar>|string]]. There can be more than one function per language. == Languages covered == <!--T:4--> <!--T:5--> There are <tvar name=num>{{FORMATNUM:27}}</tvar> so far. </translate> {| class="wikitable sortable" |+ <translate><!--T:6--> functions by [[<tvar name="1">Special:ListObjectsByType/Z60</tvar>|language]]</translate> |- ! <translate><!--T:7--> Language</translate> !! <translate><!--T:8--> Function</translate> !! <translate><!--T:9--> Tested</translate> !! <translate><!--T:10--> Implemented</translate> !! <translate><!--T:11--> Planning</translate> |- | {{z|Z1002}} || {{z|Z13587}} || ✅ || ✅ || [[WF:human languages/Z1002#natural number|WF:HL]] |- | {{z|Z1004}} || {{z|Z16093}} || ✅ || ✅ || [[WF:human languages/Z1004#natural number|WF:HL]] |- | {{z|Z1011}} || {{z|Z16150}} || ✅ || ✅ || [[WF:human languages/Z1011#natural number|WF:HL]] |- | {{z|Z1014}} || {{z|Z16053}} || ✅ || ✅ || [[WF:human languages/Z1014#natural number|WF:HL]] |- | {{z|Z1025}} || {{z|Z15965}} || ✅ || ✅ || [[WF:human languages/Z1025#natural number|WF:HL]] |- | {{z|Z1045}} || {{z|Z16172}} || ✅ || ✅ || [[WF:human languages/Z1045#natural number|WF:HL]] |- | {{z|Z1062}} || {{z|Z32780}} || ✅ || ⛓️‍💥 || [[WF:human languages/Z1062#natural number|WF:HL]] |- | {{z|Z1146}} || {{z|Z16163}} || ✅ || ✅ || [[WF:human languages/Z1146#natural number|WF:HL]] |- | {{z|Z1272}} || {{z|Z16085}} || ✅ || ✅ || [[WF:human languages/Z1272#natural number|WF:HL]] |- | {{z|Z1332}} || {{z|Z15953}} || ✅ || ✅ || [[WF:human languages/Z1332#natural number|WF:HL]] |- | {{z|Z1430}} || {{z|Z15963}} || ✅ || ✅ || [[WF:human languages/Z1430#natural number|WF:HL]] |- | {{z|Z1531}} || {{z|Z15567}} || ✅ || ✅ || [[WF:human languages/Z1531#natural number|WF:HL]] |- | {{z|Z1534}} || {{z|Z16185}} || ✅ || ✅ || [[WF:human languages/Z1534#natural number|WF:HL]] |- | {{z|Z1592}} || {{z|Z16008}} || ❌ || ✅ || [[WF:human languages/Z1592#natural number|WF:HL]] |- | {{z|Z1624}} || {{z|Z16184}} || ✅ || ✅ || [[WF:human languages/Z1624#natural number|WF:HL]] |- | {{z|Z1882}} || {{z|Z16313}} || ✅ || ❌ || [[WF:human languages/Z1882#natural number|WF:HL]] |- | {{z|Z1381}} || {{z|Z16398}} || ❌ || ❌ || [[WF:human languages/Z1381#natural number|WF:HL]] |- | {{z|Z1003}} || {{z|Z16431}} || ✅ || ✅ || [[WF:human languages/Z1003#natural number|WF:HL]] |- | {{z|Z1472}} || {{z|Z16443}} || ✅ || ✅ || [[WF:human languages/Z1003#natural number|WF:HL]] |- | {{z|Z1099}} || {{z|Z16409}} || ✅ || ✅ || [[WF:human languages/Z1099#natural number|WF:HL]] |- | {{z|Z1282}} || {{z|Z16608}} || ✅ || ✅ || [[WF:human languages/Z1381#natural number|WF:HL]] |- | {{Z|Z1820}} || {{Z|Z19334}} || ✅ || ✅ || [[WF:human languages/Z1820#natural number|WF:HL]] |- | {{z|Z1012}} || {{z|Z19484}} || ✅ || ✅ || [[WF:human languages/Z1012#natural number|WF:HL]] |- | {{Z|Z1787}} || {{Z|Z23003}} || ✅ || ✅ || [[WF:human languages/Z1787#natural number|WF:HL]] |- | {{Z|Z1158}} || {{Z|Z24618}} || ✅ || ✅ || [[WF:human languages/Z1158#natural number|WF:HL]] |- | {{Z|Z1078}} || {{Z|Z18546}} || ✅ || ✅ || [[WF:human languages/Z1078#natural number|WF:HL]] |- | {{Z|Z1762}} || {{Z|Z22455}} || ✅ || ✅ || [[WF:human languages/Z1762#natural number|WF:HL]] |} <translate> == See also == <!--T:12--> </translate> * {{Z|Z16435}} * {{Z+|Z16437}} * {{Z|Z14526}} anmcfxt19c0ajn0yflndjxuzrnujlzu Wikifunctions:Catalogue/String operations 4 41922 261483 259915 2026-03-28T11:26:56Z EJPPhilippines 9359 /* Other transformations */ 261483 wikitext text/x-wiki [[File:Wikifunctions-logo-string-operations.svg|200px|right]] {{see also|WF:Catalogue/Character operations}} == Strings == These are functions that deal with {{Z+|Z6}} === String evaluation operations === These functions perform simple tests on a text string to tell you if something else needs to be done, or they already are in an expected format. * {{Z+|Z11040}} * {{Z+|Z17036}} * {{Z+|Z17030}} * {{Z+|Z10008}} * {{Z+|Z24331}} * {{Z+|Z10083}} * {{Z+|Z10715}} ** {{Z+|Z28182}} * {{Z+|Z10336}} * {{Z+|Z11349}} * {{Z+|Z10346}} * {{Z+|Z11383}} * {{Z+|Z10375}} * {{Z+|Z10363}} * {{Z+|Z10897}} * {{Z+|Z10324}} * {{Z+|Z25592}} * {{Z+|Z11082}} ** {{Z+|Z32556}} * {{Z+|Z11678}} * {{Z+|Z11684}} * {{Z+|Z12626}} * {{Z+|Z10096}} * {{Z+|Z19170}} * {{Z+|Z19191}} * {{Z+|Z19217}} * {{Z+|Z25847}} === String comparison operations === * {{Z+|Z866}} * {{Z+|Z10539}} * {{Z+|Z10379}} * {{Z+|Z10070}} * {{Z+|Z14450}} * {{Z+|Z31826}} ** {{Z+|Z31268}} * {{Z+|Z10615}} * {{Z+|Z10618}} * {{Z+|Z11690}} * {{Z+|Z11519}} * {{Z+|Z11693}} * {{Z+|Z14483}} * {{Z+|Z13119}} * {{Z+|Z10973}} * {{Z+|Z11573}} *{{Z+|Z13482}} *{{Z+|Z14083}} * {{Z+|Z19177}} * {{Z+|Z11328}} * {{Z+|Z10393}} === String discard functions === * {{Z+|Z11410}} * {{Z+|Z11412}} * {{Z+|Z11418}} * {{Z+|Z11420}} * {{Z+|Z11414}} * {{Z+|Z11416}} * {{Z+|Z11422}} * {{Z+|Z11424}} * {{Z+|Z31955}} ** {{Z+|Z31880}} * {{Z+|Z11170}} ==== String character discard functions ==== These reduce a string by discarding certain characters. * {{Z+|Z10052}} * {{Z+|Z10079}} ** {{Z+|Z10084}} ** {{Z+|Z10095}} * {{Z+|Z11531}} * {{Z+|Z14119}} * {{Z+|Z11193}} * {{Z+|Z31145}} ** {{Z+|Z32065}} ** {{Z+|Z10901}} * {{Z+|Z31845}} ** {{Z+|Z11060}} * {{Z+|Z14456}} * {{Z+|Z11879}} * {{Z+|Z26414}} * {{Z+|Z15996}} * {{Z+|Z14460}} * {{Z+|Z14636}} * {{Z+|Z24472}} ** {{Z+|Z14244}} * {{Z+|Z28630}} ** {{Z+|Z14592}} * {{Z+|Z29506}} * {{Z+|Z22344}} * {{Z+|Z14463}} * {{Z+|Z14494}} * {{Z+|Z10171}} * {{Z+|Z14515}} * {{Z+|Z14520}} * {{Z+|Z11102}} ** {{Z+|Z19185}} * {{Z+|Z22507}} === Simple String transformations === These perform character replacements and other basic operations. ==== Add suffix ==== * {{Z+|Z27528}} * {{Z+|Z27529}} ==== Replace suffix ==== * {{Z+|Z27159}} * {{Z+|Z11178}} * {{Z+|Z18092}} * {{Z+|Z18026}} * {{Z+|Z17827}} * {{Z+|Z17915}} * {{Z+|Z17918}} * {{Z+|Z27517}} * {{Z+|Z27522}} * {{Z+|Z27525}} * {{Z+|Z27534}} * {{Z+|Z27535}} * {{Z+|Z27536}} * {{Z+|Z27537}} * {{Z+|Z27546}} ==== Add string suffix if not already present ==== * {{Z+|Z17973}} * {{Z+|Z18066}} * {{Z+|Z18050}} * {{Z+|Z18042}} * {{Z+|Z18039}} * {{Z+|Z18036}} * {{Z+|Z18020}} * {{Z+|Z18017}} * {{Z+|Z17952}} * {{Z+|Z17942}} * {{Z+|Z17939}} * {{Z+|Z17749}} * {{Z+|Z17904}} * {{Z+|Z17948}} * {{Z+|Z17791}} ==== Other transformations ==== * {{Z+|Z10000}} ** {{Z+|Z27182}} ** {{Z+|Z21394}} ** {{Z+|Z12899}} ** {{Z+|Z22504}} ** {{Z+|Z22514}} ** {{Z+|Z27385}} ** {{Z+|Z19654}} * {{Z+|Z22699}} * {{Z+|Z10012}} * {{Z+|Z10075}} * {{Z+|Z14613}} * {{Z+|Z11145}} * {{Z+|Z11151}} * {{Z+|Z10753}} ** {{Z+|Z12624}} ** {{Z+|Z10911}} * {{Z+|Z25829}} ** {{Z+|Z25833}} ** {{Z+|Z25853}} * {{Z+|Z12316}} * {{Z+|Z10193}} ** {{Z+|Z29153}} ** {{Z+|Z29890}} * {{Z+|Z18898}} * {{Z+|Z10251}} * {{Z+|Z10290}} * {{Z+|Z10816}} * {{Z+|Z10281}} * {{Z+|Z10366}} * {{Z+|Z10373}} * {{Z+|Z10761}} * {{Z+|Z10774}} * {{Z+|Z10944}} * {{Z+|Z10956}} * {{Z+|Z10309}} * {{Z+|Z10970}} * {{Z+|Z13060}} * {{Z+|Z22717}} * {{Z+|Z25614}} * {{Z+|Z27053}} * {{Z+|Z32085}} ==== Color operations ==== * {{Z+|Z12997}} * {{Z+|Z13017}} * {{Z+|Z17664}} * {{z+|Z17687}} * {{Z+|Z17713}} * {{Z+|Z13023}} * {{Z+|Z13028}} * {{Z+|Z18184}} * {{Z+|Z18189}} * {{Z+|Z18196}} * {{Z+|Z18204}} * {{Z+|Z18208}} * {{Z+|Z18212}} * {{Z+|Z18263}} * {{Z+|Z18268}} * {{Z+|Z18296}} * {{Z+|Z18300}} ====String presentation transformations==== * {{Z+|Z10018}} * {{Z+|Z10047}} * {{Z+|Z19612}} * {{Z+|Z11484}} * {{Z+|Z11490}} * {{Z+|Z13473}} * {{Z+|Z14770}} * {{Z+|Z10108}} * {{Z+|Z22511}} * {{Z+|Z31471}} === Uncommon String operations === These functions perform more advanced transformations, hold more states and showcase the more advanced capabilities of Wikifunctions. * {{Z+|Z11492}} * {{Z+|Z11501}} === Cryptography === ==== Caesar cipher ==== (alphabet needs to be specified when calling these functions) * {{Z+|Z12812}} * {{Z+|Z10846}} * {{Z+|Z10627}} [[:en:ROT13|ROT13 encrypt/decrypt]] * {{Z+|Z10851}} * {{Z+|Z17530}} * {{Z+|Z17526}} * {{Z+|Z20669}} * {{Z+|Z23869}} ==== Substitution ciphers ==== * {{Z+|Z22725}} * {{Z+|Z22728}} ==== Vigenère cipher ==== * {{Z+|Z23848}} * {{Z+|Z23851}} * {{Z+|Z23953}} * {{Z+|Z23956}} ==== Cryptographic hash functions ==== (would be better with types representing a stream of bytes) * {{Z+|Z10148}} [[wikidata:Q47476577|SHA-1]] * {{Z+|Z10124}} [[wikidata:Q47465971|SHA-256]] * {{Z+|Z10132}} [[wikidata:Q47465971|SHA-384]] * {{Z+|Z10067}} [[wikidata:Q47465971|SHA-512]] === Experimental String operations === TODO: Explain why these exist and when people might use them. * {{Z+|Z10022}} * {{Z+|Z11003}} * {{Z+|Z11007}} * {{Z+|Z14189}} * {{Z+|Z14195}} * {{Z+|Z10057}} * {{Z+|Z10062}} (needed to demonstrate base64 encode/decode examples) * {{Z+|Z12941}} === Wikitext and Mediawiki string operations === * {{Z+|Z11019}} * {{Z+|Z11139}} * {{Z+|Z10919}} * {{Z+|Z11156}} * {{Z+|Z17954}} * {{Z+|Z17956}} === Comma-separated operations === * {{Z+|Z11094}} == HTML fragments == See [[Wikifunctions:Catalogue/Programming functions#HTML fragments]] [[Category:Lists of functions]] 0lcgobcdasuyqkygmdnpi4ba4czlyr7 Wikifunctions:Catalogue/Natural language operations 4 41925 261477 261103 2026-03-28T11:08:15Z EJPPhilippines 9359 /* Individual languages */ Add Hebrew and Portuguese 261477 wikitext text/x-wiki [[File:Wikifunctions-logo-natural-language.svg|200px|right]] See context in [[m:Special:MyLanguage/Abstract_Wikipedia/Updates/2023-09-08|m:Abstract Wikipedia/Updates/2023-09-08]]. == Global == * [[Wikifunctions:Catalogue/Natural language operations/Global language functions|Global language functions]] * [[Wikifunctions:Catalogue/Lightweight_Wikidata_enumeration_operations#Natural_language_features|Enumerations of language features]] (gender/case, plurality, tense, etc.) == Function categories == * [[Wikifunctions:Cardinal numbers|Cardinal numbers]] == Individual languages == <div style="column-width: 244px;"> * [[Wikifunctions:Catalogue/Natural language operations/Arabic|Arabic]] * [[Wikifunctions:Catalogue/Natural language operations/Armenian|Armenian]] * [[Wikifunctions:Catalogue/Natural language operations/Bangla|Bangla]] * [[Wikifunctions:Catalogue/Natural language operations/Basque|Basque]] * [[Wikifunctions:Catalogue/Natural language operations/Brahui|Brahui]] * [[Wikifunctions:Catalogue/Natural language operations/Breton|Breton]] * [[Wikifunctions:Catalogue/Natural language operations/Cantonese - Simplified Han script|Cantonese - Simplified Han script]] * [[Wikifunctions:Catalogue/Natural language operations/Cantonese - Traditional Han script|Cantonese - Traditional Han script]] * [[Wikifunctions:Catalogue/Natural language operations/Church Slavonic|Church Slavonic]] * [[Wikifunctions:Catalogue/Natural language operations/Croatian|Croatian]] * [[Wikifunctions:Catalogue/Natural language operations/Czech|Czech]] * [[Wikifunctions:Catalogue/Natural language operations/Dagbani|Dagbani]] * [[Wikifunctions:Catalogue/Natural language operations/Dutch|Dutch]] * [[Wikifunctions:Catalogue/Natural language operations/English|English]] * [[Wikifunctions:Catalogue/Natural language operations/Esperanto|Esperanto]] * [[Wikifunctions:Catalogue/Natural language operations/Finnish|Finnish]] * [[Wikifunctions:Catalogue/Natural language operations/French|French]] * [[Wikifunctions:Catalogue/Natural language operations/German|German]] * [[Wikifunctions:Catalogue/Natural language operations/Hebrew|Hebrew]] * [[Wikifunctions:Catalogue/Natural language operations/Hindi|Hindi]] * [[Wikifunctions:Catalogue/Natural language operations/Hindustani|Hindustani]] * [[Wikifunctions:Catalogue/Natural language operations/Hungarian|Hungarian]] * [[Wikifunctions:Catalogue/Natural language operations/Igbo|Igbo]] * [[Wikifunctions:Catalogue/Natural language operations/Indonesian|Indonesian]] * [[Wikifunctions:Catalogue/Natural language operations/Italian|Italian]] * [[Wikifunctions:Catalogue/Natural language operations/Japanese|Japanese]] * [[Wikifunctions:Catalogue/Natural language operations/Korean|Korean]] * [[Wikifunctions:Catalogue/Natural language operations/Klingon|Klingon]] * [[Wikifunctions:Catalogue/Natural language operations/Kurdish|Kurdish]] * [[Wikifunctions:Catalogue/Natural language operations/Latin|Latin]] * [[Wikifunctions:Catalogue/Natural language operations/Low German|Low German]] * [[Wikifunctions:Catalogue/Natural language operations/Luxembourgish|Luxembourgish]] * [[Wikifunctions:Catalogue/Natural language operations/Malay|Malay]] * [[Wikifunctions:Catalogue/Natural language operations/Malayalam|Malayalam]] * [[Wikifunctions:Catalogue/Natural language operations/Mandarin - Simplified Han script|Mandarin - Simplified Han script]] * [[Wikifunctions:Catalogue/Natural language operations/Moroccan Arabic|Moroccan Arabic]] * [[Wikifunctions:Catalogue/Natural language operations/New Persian|New Persian]] * [[Wikifunctions:Catalogue/Natural language operations/Old Church Slavonic|Old Church Slavonic]] * [[Wikifunctions:Catalogue/Natural language operations/Polish|Polish]] * [[Wikifunctions:Catalogue/Natural language operations/Portuguese|Portuguese]] * [[Wikifunctions:Catalogue/Natural language operations/Punjabi|Punjabi]] * [[Wikifunctions:Catalogue/Natural language operations/Quechua|Quechua]] * [[Wikifunctions:Catalogue/Natural language operations/Rohingya|Rohingya]] * [[Wikifunctions:Catalogue/Natural language operations/Russian|Russian]] * [[Wikifunctions:Catalogue/Natural language operations/Scottish Gaelic|Scottish Gaelic]] * [[Wikifunctions:Catalogue/Natural language operations/Serbian|Serbian]] * [[Wikifunctions:Catalogue/Natural language operations/Sindhi|Sindhi]] * [[Wikifunctions:Catalogue/Natural language operations/Spanish|Spanish]] * [[Wikifunctions:Catalogue/Natural language operations/Swedish|Swedish]] * [[Wikifunctions:Catalogue/Natural language operations/Tagalog|Tagalog]] * [[Wikifunctions:Catalogue/Natural language operations/Toki Pona|Toki Pona]] * [[Wikifunctions:Catalogue/Natural language operations/Turkish|Turkish]] * [[Wikifunctions:Catalogue/Natural language operations/Ukrainian|Ukrainian]] * [[Wikifunctions:Catalogue/Natural language operations/Uzbek|Uzbek]] </div> == Dos and don'ts == ;Do * Create wrappers and helper functions to reduce the complexity of individual compositions * Do cooperate with other members of the community * Do use Wikidata item references as input on the top NLG functions to enable Abstract Wikipedia content to use them. ;Don't * Use {{z|Z6095}} as input or output for NLG functions (use {{z|Z6005}} instead) == See also == *[[Wikifunctions:Human languages]], for a list of languages sorted by language families and classification [[Category:Lists of functions]] [[Category:Natural languages]] niip8nlf31tow6vqst5h4x2ra1snnze Wikifunctions:Catalogue/Natural language operations/Global language functions 4 41926 261458 259300 2026-03-28T10:47:43Z EJPPhilippines 9359 261458 wikitext text/x-wiki See also the [[Wikifunctions:Catalogue/Wikidata operations|Wikidata operations]], particularly for Lexemes, Senses, and Forms. == Sentence and fragment generation == {{main|WF:NLG functions}} {{see also|WF:Abstract Wikipedia/2025 fragment experiments}} * {{Z+|Z26039}} * {{Z+|Z26095}} * {{Z+|Z26627}} * {{Z+|Z28797}} * {{Z+|Z28803}} * {{Z+|Z29743}} * {{Z+|Z31405}} * {{Z+|Z32321}} * {{Z+|Z32208}} ** {{Z+|Z32204}} * {{Z+|Z32229}} * {{Z+|Z32283}} ** {{Z+|Z32308}} * {{Z+|Z32276}} * {{Z+|Z32297}} * {{Z+|Z32326}} === Cross-lingual sentence creation === * {{Z+|Z22664}} * {{Z+|Z26955}} * {{Z+|Z27137}} * {{Z+|Z27885}} ** {{Z+|Z30159}} * {{Z+|Z28254}} === Helpers === ;Genders * {{z+|Z26676}} * {{z+|Z30539}} * {{z+|Z28089}} * {{z+|Z26745}} * {{z+|Z23067}} * {{z+|Z26364}} * {{z+|Z25754}} * {{z+|Z20616}} == Numbers == * {{Z+|Z16437}} * {{Z+|Z26829}} == Natural language == * {{Z+|Z860}} * {{Z+|Z29958}} ** {{Z+|Z29649}} * {{Z+|Z14326}} * {{Z+|Z14321}} ** {{Z+|Z29750}} * {{Z+|Z24097}} * {{Z+|Z28282}} * {{Z+|Z29654}} * {{Z+|Z30043}} == Monolingual text and stringset == * {{Z+|Z14392}} * {{Z+|Z12877}} * {{Z+|Z14396}} ** {{Z+|Z21583}} ** {{Z+|Z29749}} * {{Z+|Z19254}} * {{Z+|Z19279}} * {{Z+|Z23236}} * {{Z+|Z26107}} ** {{Z+|Z861}} == Multilingual text and stringset == * {{Z+|Z19312}} * {{Z+|Z19254}} * {{Z+|Z19272}} * {{Z+|Z19279}} * {{Z+|Z23236}} * {{Z+|Z27893}} ** {{Z+|Z27905}} == Select a language and language configurator == * {{Z+|Z14310}} * {{Z+|Z14311}} * {{Z+|Z14548}} * {{Z+|Z23156}} * {{Z+|Z23159}} * {{Z+|Z23143}} [[Category:Lists of functions]] te3wl4xgr5tcj9gejq18akowu7oznwh Wikifunctions:Catalogue/Natural language operations/English 4 41934 261460 231707 2026-03-28T10:48:55Z EJPPhilippines 9359 /* Sentence and fragment generation */ 261460 wikitext text/x-wiki == Sentence and fragment generation == * {{Z+|Z26088}} * {{Z+|Z23410}} * {{Z+|Z21765}} * {{Z+|Z26570}} * {{Z+|Z20597}} * {{Z+|Z28784}} * {{Z+|Z32199}} * {{Z+|Z32230}} * {{Z+|Z32244}} * {{Z+|Z32249}} == Verbs == * {{Z+|Z24676}} * {{Z+|Z24687}} == Morphology == === Possessives === * {{Z+|Z11302}} * {{Z+|Z19125}} === Grammatical Number === * {{Z+|Z11089}} * {{Z+|Z11218}} * {{Z+|Z13177}} * {{Z+|Z22490}} === Other === * {{Z+|Z21739}} * {{Z+|Z11390}} * {{Z+|Z11646}} * {{Z+|Z11795}} * {{Z+|Z12203}} ** {{Z+|Z29851}} *** {{Z+|Z29852}} * {{Z+|Z13087}} * {{Z+|Z13280}} * {{Z+|Z13262}} * {{Z+|Z13254}} == Numbers == * {{Z+|Z13587}} * {{Z+|Z14526}} * {{Z+|Z13596}} * {{Z+|Z14726}} * {{Z+|Z14531}} * {{Z+|Z14523}} == Other == * {{Z+|Z23827}} * {{Z+|Z18852}} * {{Z+|Z18859}} [[Category:Lists of functions]] [[Category:English]] phc7mkl6x7vo50496ds7srte2dqgw1b Wikifunctions:Catalogue/Natural language operations/French 4 41937 261464 258414 2026-03-28T11:00:00Z EJPPhilippines 9359 Reorganize sections and add Z32371 261464 wikitext text/x-wiki ==Sentence and fragment generation== * {{Z+|Z26562}} * {{Z+|Z32166}} * {{Z+|Z32371}} ==Morphology== ===Nouns=== * {{Z+|Z11548}} * {{Z+|Z22281}} [WIP, the output is currently a boolean and don't deal with complex case, like nouns with multiple genders) ===Verbs=== ====Verb groups==== * {{Z+|Z12436}} * {{Z+|Z12439}} * {{Z+|Z12440}} ====Verb conjugation==== * {{Z+|Z21599}} * {{Z+|Z21617}} * {{Z+|Z21624}} * {{Z+|Z21632}} ===Adjectives and adverbs=== * {{Z+|Z11590}} * {{Z+|Z11589}} ===Articles and determiners=== * {{Z+|Z32169}} ==Numbers== * {{Z+|Z16093}} [[Category:Lists of functions]] [[Category:French]] hlmiik7qt3kj1xu5ontya5zvnnv60zb Wikifunctions:Catalogue/Natural language operations/Japanese 4 41942 261468 256830 2026-03-28T11:03:42Z EJPPhilippines 9359 261468 wikitext text/x-wiki * {{Z+|Z10878}} * {{Z+|Z10883}} * {{Z+|Z10927}} * {{Z+|Z32355}} [[Category:Lists of functions]] [[Category:Japanese]] 3oxym7i1ui8gsjlhks7644qpzzg79cl Wikifunctions:Catalogue/List operations 4 41955 261457 256265 2026-03-28T10:44:57Z EJPPhilippines 9359 /* Basic list/iterable functions */ 261457 wikitext text/x-wiki * {{Z+|Z881}} == Basic list/iterable functions == * {{Z+|Z18636}} * {{Z+|Z12681}} ** {{Z+|Z31612}} ** {{Z+|Z31605}} * {{Z+|Z31592}} * {{Z+|Z889}} ** {{Z+|Z18646}} ** {{Z+|Z30692}} * {{Z+|Z811}} ** {{Z+|Z22839}} * {{Z+|Z29446}} * {{Z+|Z16360}} * {{Z+|Z12964}} * {{Z+|Z813}} * {{Z+|Z23120}} ** {{Z+|Z30075}} * {{Z+|Z12696}} * {{Z+|Z31294}} ** {{Z+|Z21613}} ** {{Z+|Z28715}} * {{Z+|Z31763}} ** {{Z+|Z31758}} * {{Z+|Z31600}} * {{Z+|Z12684}} * {{Z+|Z12735}} * {{Z+|Z12698}} * {{Z+|Z12738}} * {{Z+|Z27685}} * {{Z+|Z30164}} ** {{Z+|Z12755}} ** {{Z+|Z32302}} ** {{Z+|Z12759}} ** {{Z+|Z21212}} ** {{Z+|Z12851}} *** {{Z+|Z12864}} *** {{Z+|Z13310}} * {{Z+|Z13708}} * {{Z+|Z13397}} * {{Z+|Z26904}} * {{Z+|Z29413}} * {{Z+|Z29429}} * {{Z+|Z31818}} == Complex list/iterable functions == * {{Z+|Z12741}} * {{Z+|Z12846}} * {{Z+|Z13752}} * {{Z+|Z22874}} * {{Z+|Z31575}} ** {{Z+|Z31583}} * {{Z+|Z30975}} ** {{Z+|Z30977}} ** {{Z+|Z31002}} * {{Z+|Z30976}} ** {{Z+|Z30978}} ** {{Z+|Z31003}} * {{Z+|Z31013}} ** {{Z+|Z31019}} ** {{Z+|Z10393}} ** {{Z+|Z31026}} * {{Z+|Z19536}} * {{Z+|Z29286}} * {{Z+|Z29324}} * {{Z+|Z29409}} == Linear Algebra == Since we don't have specific types for vectors or matrices, vectors are represented as a list and matrices as a list of lists (to be interpreted as a list of rows). * {{Z+|Z31587}} ** {{Z+|Z31585}} * {{Z+|Z17670}} * {{Z+|Z17675}} * {{Z+|Z20659}} * {{Z+|Z21903}} === Rational vector operations === * {{Z+|Z24166}} * {{Z+|Z24055}} * {{Z+|Z24060}} * {{Z+|Z24185}} * {{Z+|Z24285}} * {{Z+|Z24342}} * {{Z+|Z24346}} === Rational matrix operations === Lists of lists don't work, so expect most of these functions to be unusable. * {{Z+|Z24291}} (useful for creating 1x1 matrixes) * {{Z+|Z24251}} * {{Z+|Z24290}} * {{Z+|Z30282}} * {{Z+|Z24171}} * {{Z+|Z24176}} * {{Z+|Z24162}} * {{Z+|Z24436}} * {{Z+|Z24239}} * {{Z+|Z24299}} * {{Z+|Z31747}} * {{Z+|Z31749}} * {{Z+|Z31752}} === Rational matrixes and vectors operations === * {{Z+|Z24177}} * {{Z+|Z24182}} * {{Z+|Z24191}} * {{Z+|Z24236}} * {{Z+|Z29308}} == Functions expecting a list argument == * {{Z+|Z15142}} * [[Special:Search/: "Z17K1 Z1K1 Z7 Z7K1 Z881 Z881K1"|Complete list of functions]] ** [[Special:Search/: "Z17K1 Z1K1 Z7 Z7K1 Z881 Z881K1" !"Z17K1 Z1K1 Z7 Z7K1 Z881 Z881K1 Z1"| Functions specifying a “properly typed” list argument]] ** [[Special:Search/: "Z17K1 Z1K1 Z7 Z7K1 Z881 Z881K1 Z1"|Functions not specifying the type for their list argument (Z1-typed or “untyped”)]] == Functions with list outputs == *[[Special:Search/: "Z8K2 Z1K1 Z7 Z7K1 Z881 Z881K1"|Complete list of functions]] **[[Special:Search/: "Z8K2 Z1K1 Z7 Z7K1 Z881 Z881K1" !"Z8K2 Z1K1 Z7 Z7K1 Z881 Z881K1 Z1|Functions specifying a “properly typed” output list]] **[[Special:Search/: "Z8K2 Z1K1 Z7 Z7K1 Z881 Z881K1 Z1"|Functions not specifying the type for the output list (Z1-typed or “untyped”)]] # If a function specifies an output list with a type other than [[Z1]] (that is, it specifies a "properly typed" list), mismatched elements cause an error if the implementation is in code. # If all objects in an output list have the same type, the list takes that type instead of being Z1-typed. This only happens if the implementation is in code. For compositions, you can use {{Z|Z18475}} to get the same result. #If a code implementation needs custom-converted objects (provided by a {{Z|Z46}}), any list input must be properly typed (objects in a Z1-typed list are not converted). Similarly, any list output must be properly typed (not [[Z1]] in the function specification) or else conversion into a Wikifunctions object will fail. #If a code implementation does not need converted objects, you can use {{Z|Z28691}} to convert a properly typed list to Z1-typed (but this is [[Wikifunctions:Project_chat/Archive/2024/07#Typed_lists_now_open_beyond_Booleans_and_Strings|not officially supported]]). (The list will remain properly typed if there are no custom converters to code. Use {{Z|Z17895}} to make the list Z1-typed unconditionally.) * {{Z+|Z18475}} ** {{Z+|Z24855}} ** {{Z+|Z24849}} * {{Z+|Z28691}} * {{Z+|Z17895}} * {{Z+|Z18729}} * {{Z+|Z18759}} ** {{Z|Z18479}} ** {{Z|Z12668}} ** {{Z|Z17770}} ** {{Z|Z17774}} ** {{Z|Z17778}} * {{Z+|Z21821}} ** {{Z+|Z24387}} ** {{Z+|Z23921}} * {{Z+|Z24382}} * {{Z+|Z21389}} ** {{Z+|Z14046}} * {{Z+|Z12961}} ** {{Z|Z18597}} ** {{Z|Z18276}} ** {{Z|Z24150}} *** {{Z|Z24655}} * {{Z+|Z31345}} ** {{Z+|Z31340}} * {{Z+|Z31369}} * {{Z+|Z31364}} * {{Z+|Z12967}} ** {{Z|Z18284}} * {{Z+|Z13366}} * {{Z+|Z13369}} ** {{Z+|Z31874}} * {{Z+|Z13373}} * {{Z+|Z13429}} * {{Z+|Z13362}} * {{Z+|Z26556}} * {{Z+|Z24203}} * {{Z+|Z31355}} ** {{Z+|Z25526}} ** {{Z+|Z22179}} * {{Z+|Z12767}} ** {{Z|Z27665}} ** {{Z|Z18755}} ** {{Z|Z18288}} ** {{Z+|Z31721}} * {{Z+|Z12676}} ** {{Z|Z23606}} * {{Z+|Z29795}} * {{Z+|Z13155}} * {{Z+|Z13224}} * {{Z+|Z13247}} * {{Z+|Z12856}} * {{Z+|Z13081}} ** {{Z|Z18291}} * {{Z+|Z13078}} **{{Z|Z19202}} **{{Z|Z19205}} * {{Z+|Z22865}} * {{Z+|Z29725}} * Sort ascending ** {{Z+|Z27612}} ** {{Z+|Z19510}} ** {{Z|Z17869}} ** {{Z|Z17873}} ** {{Z|Z12671}} ** {{Z|Z18281}} * {{Z+|Z17670}} * {{Z+|Z17675}} * {{Z+|Z27413}} * {{Z+|Z28316}} * {{Z+|Z29400}} ** {{Z+|Z31809}} ** {{Z+|Z28735}} * {{Z+|Z18194}} * {{Z+|Z21809}} == In-built functions with list outputs == These operate on object-typed lists, so may not need a different version for each type. However, code implementations cannot currently generate lists of objects (other than string/boolean). So code implementations will not work on these functions. * {{Z+|Z873}} **{{Z+|Z24846}} * {{Z+|Z872}} ** {{Z+|Z24849}} * {{Z|Z876}} (actually left-associative ''fold'') ** {{Z|Z12781}} (actually left-associative ''reduce'') *** {{Z|Z20089}} w/ initial empty check ** {{Z|Z12753}} (actually right-associative ''reduce'') * {{Z+|Z810}} * {{Z+|Z812}} [[Category:Lists of functions]] qo9841wysfhm37ecsx52pl1n91ce1c9 Z19654 0 42367 261275 183554 2026-03-27T18:28:19Z YoshiRulz 10156 Fix typo in en desc 261275 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z19654" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z19654K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "String" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "Un chaine" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z13518", "Z17K2": "Z19654K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Every N chars" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "L’intervalle n" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z19654K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "String to add" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "La chaine à insérer" } ] } } ], "Z8K2": "Z6", "Z8K3": [ "Z20", "Z19656", "Z20583" ], "Z8K4": [ "Z14", "Z19655", "Z24314" ], "Z8K5": "Z19654" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Add chars every n chars" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "insérer un caractère tous les n caractères" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Broader version of Z19645" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "Version plus générique de Z19643." } ] } } m7q4tswijev4gg054e3jzv9gltt3yne 261276 261275 2026-03-27T18:28:26Z WikiLambda system 3 Updated the implementation list (see [[Help:Wikifunctions/Implementation_ordering_and_choosing|About implementation selection]]) 261276 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z19654" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z19654K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "String" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "Un chaine" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z13518", "Z17K2": "Z19654K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Every N chars" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "L’intervalle n" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z19654K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "String to add" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "La chaine à insérer" } ] } } ], "Z8K2": "Z6", "Z8K3": [ "Z20", "Z19656", "Z20583" ], "Z8K4": [ "Z14", "Z24314", "Z19655" ], "Z8K5": "Z19654" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Add chars every n chars" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "insérer un caractère tous les n caractères" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Broader version of Z19645" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "Version plus générique de Z19643." } ] } } 49yst4k5j2qv3q1s2qo0253vfae6ihv Z19711 0 42463 261256 253800 2026-03-27T17:09:08Z YoshiRulz 10156 Clarify en label and aliases 261256 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z19711" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z19677", "Z17K2": "Z19711K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "rational number to invert" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "nombre rationnel à inverser" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "numero" } ] } } ], "Z8K2": "Z19677", "Z8K3": [ "Z20", "Z19712", "Z19713", "Z19746", "Z19776" ], "Z8K4": [ "Z14", "Z19745", "Z19714", "Z19743" ], "Z8K5": "Z19711" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "multiplicative inverse of Rational number" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "inverser un nombre rationnel" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "inverso di numero razionale" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "q^(-1)", "reciprocal of Rational number" ] }, { "Z1K1": "Z31", "Z31K1": "Z1787", "Z31K2": [ "Z6", "inverti numero razionale" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "a/b donne b/a" } ] } } n36wgeilx1jun7iosacaa7d9ne5jfln Talk:Z21760 1 48237 261298 159507 2026-03-27T19:29:53Z Arlo Barnes 1231 /* duplicate of */ new section 261298 wikitext text/x-wiki [[Category:Multiple language NLG functions]] == duplicate of == {{z|22664}}? [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 19:29, 27 March 2026 (UTC) n0lcfui8znzw0ofq7h5j1gm2jcd44aj 261307 261298 2026-03-27T19:42:21Z GrounderUK 50 /* duplicate of */ Reply …no 261307 wikitext text/x-wiki [[Category:Multiple language NLG functions]] == duplicate of == {{z|22664}}? [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 19:29, 27 March 2026 (UTC) :The functions have different signatures (lexemes vs item references) and the adjectival usage is different (attributive vs predicative). More systematic naming is certainly called for! [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 19:42, 27 March 2026 (UTC) 59ok6hqms2e27qpr23jzze5hzqr5hob Z22399 0 49540 261220 180825 2026-03-27T14:04:34Z YoshiRulz 10156 Added Z22400 to the approved list of implementations 261220 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z22399" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6004", "Z17K2": "Z22399K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "lexeme form" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "forma di lessema" } ] } } ], "Z8K2": "Z12", "Z8K3": [ "Z20", "Z22401", "Z22429", "Z22436", "Z22443" ], "Z8K4": [ "Z14", "Z22415", "Z22400" ], "Z8K5": "Z22399" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "representations of lexeme form" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "rappresentazioni di forma di lessema" }, { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "語形の表現" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "lexeme form representations", "multilingual representations of lexeme form", "strings in multilingual text of lexeme form" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "returns the multilingual text that contains the representations (key Z6004K3) of the specified lexeme form" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "Restituisce il testo multilingue che contiene la rappresentazione (chiave Z6004K3) della forma del lessema specificata" } ] } } 45cmh3dl8qwf4y4rznenoerl3ertzn1 261221 261220 2026-03-27T14:05:52Z WikiLambda system 3 Updated the implementation list (see [[Help:Wikifunctions/Implementation_ordering_and_choosing|About implementation selection]]) 261221 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z22399" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6004", "Z17K2": "Z22399K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "lexeme form" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "forma di lessema" } ] } } ], "Z8K2": "Z12", "Z8K3": [ "Z20", "Z22401", "Z22429", "Z22436", "Z22443" ], "Z8K4": [ "Z14", "Z22400", "Z22415" ], "Z8K5": "Z22399" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "representations of lexeme form" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "rappresentazioni di forma di lessema" }, { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "語形の表現" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "lexeme form representations", "multilingual representations of lexeme form", "strings in multilingual text of lexeme form" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "returns the multilingual text that contains the representations (key Z6004K3) of the specified lexeme form" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "Restituisce il testo multilingue che contiene la rappresentazione (chiave Z6004K3) della forma del lessema specificata" } ] } } p7sz3ql114dxs16dki0y8zx01h1bni3 Wikifunctions:Type proposals/Syntactic type 4 50854 261419 194096 2026-03-28T08:17:49Z Denny 81 /* Discussion and comments */ Reply 261419 wikitext text/x-wiki The [[Wikifunctions:Status updates/2024-12-12|sketch towards Abstract Wikipedia]] discusses our path to natural language generation. But it works directly on Wikidata Lexemes. Wikidata Lexemes can be very versatile: they can be French verbs, Hausa nouns, or Malayalam adjectives. At the same time, Lexemes in Wikidata are not particularly constrained and can differ vastly in how complete their forms are. This has a number of disadvantages. Three important disadvantages for our use case are: # a function can say it takes or returns a Lexeme, and while its description or name can make it clear that this is supposed to take an English noun, the system cannot guide the user in actually ensuring that. Instead it would be open to taking any Lexeme, and a function may need to do some checks to ensure the language, part of speech, and available forms are correct. # it is difficult to write tests that don’t implicitly depend on the completeness of Wikidata. Lexemes are always Wikidata Lexemes, and therefore we cannot create test Lexemes in Wikifunctions. # we lose the advantages of a more strictly typed system, e.g. as guidance in composition, in being more tightly restricted in selecting a function, etc. It also has advantages, foremost a significant reduction in the number of types. == From Lexemes to Syntactic Types == We suggest introducing types for language and part of speech pairs (not for all of them, but for [[:en:Part of speech#Open and closed classes|open classes]]). To give a simple example, we could have a type for "English noun", which then can be used with only the appropriate functions: we can ask for the singular or plural, maybe the possessive,  but we cannot ask for the past tense or for the superlative or the accusative form of an English noun. This would also allow combining, for example, explicitly stated forms with morphological functions. An English noun now can have several constructors: most notably, it would take a Lexeme that is an English noun, and use that to create the English noun object. But it could also use a string and treat it as the lemma of the noun (for example, in order to represent neologisms), or take two strings (one for the singular and one for the plural), or take the label of an item on Wikidata, or it may take a Lexeme with a noun from another language (in order to form a loan word), or it could take an English verb and ''noun'' it (for example to go from "verb" to "verbing"). An English noun or adjective could be created from a place name, or from a person's name. This allows us to be much more flexible and cover the tail-end of the lexicon with alternative approaches. Such a type would allow us to create functions that build sentences from more specific parts of speech, reducing ambiguity and making it easier to compose sentences. This makes it easier to write the sentence generating functions, and it makes it easier and more predictable to use such functions. Note that besides actual parts of speech, in many languages we would also have types for relevant phrases (e.g. noun phrases, verb phrases, etc.). This has the disadvantage that we would need to create a lot of types. That would benefit from allowing the community to create types, in order to scale better. (Note: the name "syntactic type" isn't very good. These types are language-specific types for representing grammatically typed building blocks of natural language. If you can come up with a better name, please do!) == A common building block for creating linguistic types == We introduce a type that is helpful in representing many syntactic types in many languages, together with one particular function operating on this type. We introduce the "table" type and the "merge" function. Note that the following proposal is heavily inspired by the book and software [[:en:Grammatical Framework (programming language)|Grammatical Framework]]. === Table type === A table type consists of two parts: a list of inherent features, and a list of options. Features are grammatical features, represented by either Wikidata item references or Wikifunction enumerations representing the same. Options are a map of a list of features to a list of word forms. The inherent features, the keys in the options map, and the structure of the dictionary of forms are all constrained by the syntactical type. For example, a typical German noun has one inherent feature (its grammatical gender: masculine, feminine or neuter), and usually eight options: two for the grammatical number (singular or plural), and four for the case (nominative, accusative, dative, genitive), leading to two times four = eight options. Since German nouns are usually continuous (i.e. they are not separated by other words, in contrast to some German verbs), the dictionary of forms for each option has a single entry. Here is an example of a table for the German noun "Stadt" (meaning city): {| class="wikitable" | '''''inherent''''' | colspan="4" | feminine |- | '''''options'''''|| '''nominative''' |'''genitive''' |'''dative''' |'''accusative''' |- |'''singular''' |Stadt |Stadt |Stadt |Stadt |- |'''plural''' |Städte |Städte |Städten |Städte |} German adjectives on the other hand have no inherent grammatical features, but many options: for the grammatical gender, the grammatical number, the definiteness, the level of comparison (positive, comparative, superlative), etc. Here is an example of a table for the German noun "süddeutsch" (meaning southern German). Note that the Adjective "süddeutsch" does not necessarily have its own Lexeme, but may have been constructed by a cardinal direction ("Süden", meaning south) and a Demonym ("deutsch", meaning German). See the table on [[wikt:süddeutsch|English Wiktionary for süddeutsch]]. This is why they are called tables, because these words are usually represented as tables in dictionaries and grammar books, with the different grammatical dimensions representing the grammatical values. The grammatical features do not need to always be combinatorial. (For example, an English verb may have different forms for the different grammatical person and number, but only in the present tense, not in the past tense). === Merge function === The merge function takes two tables and returns a table. The inherent features of each of the tables is used to filter the options in each other tables. In addition, the dictionaries of forms are combined together to create a new map of forms. For example, if we wanted to create the noun phrase ''"eine süddeutsche Stadt"'' (meaning "a city in the south of Germany"), we build a function that takes the noun and the adjective from the previous section and merges them, creating a German noun phrase. Since German noun phrases are continuous, it can immediately concatenate the different forms and other words (in this example the indefinite article "ein" or "eine", again based on the inherent feature of the noun). The result of the merge is still open with regards to the case, but would have an inherent gender (feminine) and number (singular). A function that takes the noun phrase as an input for a specific sentence can then select the right case depending on the phrase's function in the sentence (e.g. if we wanted to make a sentence such as ''“Anton kommt aus einer süddeutschen Stadt.”'' (meaning “Anton comes from a city in the south of Germany”), we would select the dative case. For a different sentence such as ''“Anton zieht in eine süddeutsche Stadt.”'' (meaning “Anton moves to a city in the south of Germany”), we would need the accusative case. The predicate and the proposition together would determine which case is needed. Most concrete natural language generation functions can be built by using the merge function, thus reducing the implementation work in many languages. == Summary == The table type and the merge function would become the backbone for natural language generation, enabling the support of agreement which is crucial in many languages. Just to give an example how this could look like, still using German as the example: * We would create a type for German nouns, which consists of a table type that has ** one inherent feature, the grammatical gender with the three values feminine, masculine and neuter ([[Wikifunctions:Type proposals/Grammatical gender (m/f/n)|proposed here]]) ** And options based on a two-valued grammatical number and a specific four-valued grammatical case * We would create a type for German adjectives, which consists of a table type that has ** No inherent features ** And options based on the three-valued grammatical gender mentioned above, the two-valued grammatical number, the definiteness (two-valued), and the four German cases * We would create types for German noun phrases, verb phrases, and for sentences We furthermore would create a number of functions. Relevant for our example are the following functions: * Create a sentence from a noun phrase and a verb phrase * Create a verb phrase from a German verb, proposition, and a noun phrase for the object in the given case * Create a noun phrase from an adjective and a noun Now we can create a noun phrase from the adjective and noun given in the example above. Internally, that would use the merge function we have described above. That one can be used as the argument for a verb phrase which takes the verb ''“kommen”'', the German proposition “aus”, the noun phrase we just constructed, and it states that the latter has to be dative. We would select the dative for the verb phrase and concatenate the parts of the sentence. Finally, we can build the whole sentence from a noun phrase (which we may just create on Wikifunctions from the string ''“Anton”'', since there is currently no such German proper noun) and we would get the sentence ''“Anton kommt aus einer süddeutschen Stadt”''. Without introducing syntactic type, we miss a crucial abstraction level here, which makes it much more fragile to implement the generation of such sentences. This proposal [[Wikifunctions:Status updates/2024-12-12#Stage 2: Lexeme-based generation|lives within Stage 2 of the path towards Abstract Wikipedia]]. Note that this does not yet presuppose nor determine how abstract content will be structured. But no matter what the answer to that question will be, it makes it easier to scale up writing functions that can generate sentences in many languages. == Discussion and comments == Please use the reply link to add your comments --[[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 19:02, 18 February 2025 (UTC) :'''Why have language-specific types?''' [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 19:08, 18 February 2025 (UTC) ::It makes more sense to me to extend the Z11 pattern, so that we have, for example, monolingual noun (phrase) variant and monolingual verb (phrase) variant. It may be considered a disadvantage that such an approach does not prevent a German noun pattern from being used in a French noun phrase. However, when considering phrases rather than lexeme forms, it is not clear that focusing on syntax rather than semantics is the better approach. A noun phrase representing an indirect object, for example, may have a different form or position from a direct object whether or not any word is marked by a specific inflection. Whether we describe this as “indirect object”, “dative” or something else hardly matters, but since we intend to generate natural language from language-neutral semantic representations, I think it makes more sense to refine by semantic function first, language second and syntactic considerations last. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 19:59, 18 February 2025 (UTC) :::Oh, I am not saying that syntactic types should be done ''instead'' of semantic or abstract types. I think that both are necessary. The suggestion here is firmly on the syntactic side. I totally agree that we also need something to express the semantic side as well. :::If I understand your suggestion, it is that we should figure out the semantic step first, before we get to the syntactic layer. Hmm, I see your point. I was thinking we could build up from the concrete towards the abstract. But maybe the other approach has benefits that I missed, and we should leave this rest for now and see if we need it once the abstract content questions are a bit more settled. --[[User:Denny|Denny]] ([[User talk:Denny|talk]]) 13:20, 19 February 2025 (UTC) ::::''It’s hard to say exactly what I mean and harder still to mean exactly what I say.'' I’m not saying that we should figure out the semantic step first, I’m saying that the syntactic step is downstream of the semantic in the NLG pipeline. We need to think ourselves a little upstream of the Great Lexemification Rapids to provide sufficient context to evaluate options, I think. I believe that there is sufficient overlap between the semantic and syntactic challenges that it is at least plausible that the solutions can evolve along similar lines. But I see the end-to-end pipeline as a sequence of successive refinements, where the availability of Wikidata content and Wikifunctions capabilities together determine the available refinements in any particular case. It is conceptually convenient to consider that at each stage a function converts content objects from one type to the next, the advantage of which is that the functions available for the next refinement are readily apparent, but it will be convenient, in practice (I’m sure), to avoid multiplying up these types by the available languages. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 15:04, 19 February 2025 (UTC) * Strongly {{o}}, this adds debt of creating new enums and pollutes the wiki. I would be fine with this if there were software changes to make the footprint of an enum smaller. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 19:35, 18 February 2025 (UTC) *:That's not a bad idea, to make enums more light weight. You mentioned it before. @[[User:Jdforrester (WMF)|Jdforrester (WMF)]] was already suggesting something -- let's see what'll come out of that. --[[User:Denny|Denny]] ([[User talk:Denny|talk]]) 13:15, 19 February 2025 (UTC) * {{o}}, even if there wasn't so much 'debt'/'pollution', since the extra complexity appears unnecessarily limiting and is unlikely to handle morphological exceptions (whether due to syntactic or semantic constraints) in a given language. Languages that are more analytic (and thus with closer to one form per lexeme), and those that are more agglutinative/polysynthetic (and thus with separate inflectional morpheme lexemes), are also unlikely to benefit from such types. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 23:25, 18 February 2025 (UTC) *:That's actually a great point -- there is no need to do it for all languages, and for all parts of speech, but only for the ones where it makes sense! --[[User:Denny|Denny]] ([[User talk:Denny|talk]]) 13:16, 19 February 2025 (UTC) :'''Wikifunctions lexemes?''' I’ve always assumed that we would need a type for representing lexemes that are absent from Wikidata or incomplete. We sort of agreed in our discussion on [[Wikifunctions:Type proposals/Wikidata based types]]. How does the current proposal align with or shape our approach to this? [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 09:39, 20 February 2025 (UTC) ::Yes, I think so too. And one of the constructors for that type should be a Wikidata Lexeme. So that we can then use the resulting type in constructing phrases. ::So, basically, we could have that new type Wf lexeme, and it can be created either from a Wikidata Lexeme, or from a Wikidata Item, or from a string (or set of strings), and these then would be usable for building a phrase. It seems we agree on that part. ::What I am saying additionally is that we shouldn't have a single type for Wikifunctions lexeme, but several, based on their part of speech. But I am happy to find already agreement on the first step. I think that eventually we'll get to the whole way anyway :) --[[User:Denny|Denny]] ([[User talk:Denny|talk]]) 10:19, 26 February 2025 (UTC) :::Yes, I agree with a Lexeme type for different parts of speech; I’m just not convinced that we need separate sets of Lexeme types for each language. So we have Noun but not English noun. Clearly, a function that operates only on Nouns for the English language could usefully distinguish by type from one that operates on Nouns for the German language. One way of doing this is to pair the Noun type with the relevant language, as a “generic” type. To be clear, though, I don’t object to there being multiple Noun (and other part-of-speech) types to cater for the different patterns that languages follow with regard to number, gender, case etc., so long as the types correspond to the patterns followed rather than the languages that follow those patterns. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:14, 26 February 2025 (UTC) :'''comment''' I'm not sure what to think. On one hand, sure an English noun and a German noun is not the same thing and should be handled differently ; but on the other noun, even English nouns are not all the same ("dog"@en has singular and plural while "clothes"@en has only a plural as it's a plurale tantum) and English and German adverbs are the same. So a type "lexical category + language" seems both too wide and too narrow. Also, why not go more "atomic" and having two types : one for category and one for language? Cheers, [[User:VIGNERON|VIGNERON]] ([[User talk:VIGNERON|talk]]) 08:16, 24 February 2025 (UTC) :'''Comment''': I don't think that I understood how exactly is the table with Stadt, Städte, Städten, etc. is generated. Is the "Städten" string, for example, supposed to be generated by code stored on Wikifunctions? Or is this proposed type supposed to be a representation for Wikifunctions of the data that is already within Wikidata? --[[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 14:17, 3 March 2025 (UTC) :{{oppose}}, since (as already pointed in previous comments) the bottom-up strategy implied by this proposal to language generation creates a lot of useless computation and memory (with a complexity that could grow exponentially), other than failing to account the exceptions that all natural languages are filled with. I think that generally to generate human language text we should instead use a top-down approach (starting from an abstract representation of an entire sentence and from there generate the single components), since I think it's also closer on how our brain actually generates sentences. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 13:37, 16 June 2025 (UTC) ::After one more year of experience with more complex types, I agree with your point. The proposal does require a lot of unnecessary computation, in particular, it requires to compute many strings that are in the end just frown away. That's a consequence of the rather eager evaluation strategy of the system. ::How can we avoid that? We could quote the parts that are not used until they are. This kind of simulates a lazy evaluation. (I am just thinking out loud here, I don't know what the solutions is). --[[User:Denny|Denny]] ([[User talk:Denny|talk]]) 08:17, 28 March 2026 (UTC) f7eok4zbmf38l5ggbvx60edtzt0s9q9 261422 261419 2026-03-28T08:21:42Z Denny 81 /* Discussion and comments */ Reply 261422 wikitext text/x-wiki The [[Wikifunctions:Status updates/2024-12-12|sketch towards Abstract Wikipedia]] discusses our path to natural language generation. But it works directly on Wikidata Lexemes. Wikidata Lexemes can be very versatile: they can be French verbs, Hausa nouns, or Malayalam adjectives. At the same time, Lexemes in Wikidata are not particularly constrained and can differ vastly in how complete their forms are. This has a number of disadvantages. Three important disadvantages for our use case are: # a function can say it takes or returns a Lexeme, and while its description or name can make it clear that this is supposed to take an English noun, the system cannot guide the user in actually ensuring that. Instead it would be open to taking any Lexeme, and a function may need to do some checks to ensure the language, part of speech, and available forms are correct. # it is difficult to write tests that don’t implicitly depend on the completeness of Wikidata. Lexemes are always Wikidata Lexemes, and therefore we cannot create test Lexemes in Wikifunctions. # we lose the advantages of a more strictly typed system, e.g. as guidance in composition, in being more tightly restricted in selecting a function, etc. It also has advantages, foremost a significant reduction in the number of types. == From Lexemes to Syntactic Types == We suggest introducing types for language and part of speech pairs (not for all of them, but for [[:en:Part of speech#Open and closed classes|open classes]]). To give a simple example, we could have a type for "English noun", which then can be used with only the appropriate functions: we can ask for the singular or plural, maybe the possessive,  but we cannot ask for the past tense or for the superlative or the accusative form of an English noun. This would also allow combining, for example, explicitly stated forms with morphological functions. An English noun now can have several constructors: most notably, it would take a Lexeme that is an English noun, and use that to create the English noun object. But it could also use a string and treat it as the lemma of the noun (for example, in order to represent neologisms), or take two strings (one for the singular and one for the plural), or take the label of an item on Wikidata, or it may take a Lexeme with a noun from another language (in order to form a loan word), or it could take an English verb and ''noun'' it (for example to go from "verb" to "verbing"). An English noun or adjective could be created from a place name, or from a person's name. This allows us to be much more flexible and cover the tail-end of the lexicon with alternative approaches. Such a type would allow us to create functions that build sentences from more specific parts of speech, reducing ambiguity and making it easier to compose sentences. This makes it easier to write the sentence generating functions, and it makes it easier and more predictable to use such functions. Note that besides actual parts of speech, in many languages we would also have types for relevant phrases (e.g. noun phrases, verb phrases, etc.). This has the disadvantage that we would need to create a lot of types. That would benefit from allowing the community to create types, in order to scale better. (Note: the name "syntactic type" isn't very good. These types are language-specific types for representing grammatically typed building blocks of natural language. If you can come up with a better name, please do!) == A common building block for creating linguistic types == We introduce a type that is helpful in representing many syntactic types in many languages, together with one particular function operating on this type. We introduce the "table" type and the "merge" function. Note that the following proposal is heavily inspired by the book and software [[:en:Grammatical Framework (programming language)|Grammatical Framework]]. === Table type === A table type consists of two parts: a list of inherent features, and a list of options. Features are grammatical features, represented by either Wikidata item references or Wikifunction enumerations representing the same. Options are a map of a list of features to a list of word forms. The inherent features, the keys in the options map, and the structure of the dictionary of forms are all constrained by the syntactical type. For example, a typical German noun has one inherent feature (its grammatical gender: masculine, feminine or neuter), and usually eight options: two for the grammatical number (singular or plural), and four for the case (nominative, accusative, dative, genitive), leading to two times four = eight options. Since German nouns are usually continuous (i.e. they are not separated by other words, in contrast to some German verbs), the dictionary of forms for each option has a single entry. Here is an example of a table for the German noun "Stadt" (meaning city): {| class="wikitable" | '''''inherent''''' | colspan="4" | feminine |- | '''''options'''''|| '''nominative''' |'''genitive''' |'''dative''' |'''accusative''' |- |'''singular''' |Stadt |Stadt |Stadt |Stadt |- |'''plural''' |Städte |Städte |Städten |Städte |} German adjectives on the other hand have no inherent grammatical features, but many options: for the grammatical gender, the grammatical number, the definiteness, the level of comparison (positive, comparative, superlative), etc. Here is an example of a table for the German noun "süddeutsch" (meaning southern German). Note that the Adjective "süddeutsch" does not necessarily have its own Lexeme, but may have been constructed by a cardinal direction ("Süden", meaning south) and a Demonym ("deutsch", meaning German). See the table on [[wikt:süddeutsch|English Wiktionary for süddeutsch]]. This is why they are called tables, because these words are usually represented as tables in dictionaries and grammar books, with the different grammatical dimensions representing the grammatical values. The grammatical features do not need to always be combinatorial. (For example, an English verb may have different forms for the different grammatical person and number, but only in the present tense, not in the past tense). === Merge function === The merge function takes two tables and returns a table. The inherent features of each of the tables is used to filter the options in each other tables. In addition, the dictionaries of forms are combined together to create a new map of forms. For example, if we wanted to create the noun phrase ''"eine süddeutsche Stadt"'' (meaning "a city in the south of Germany"), we build a function that takes the noun and the adjective from the previous section and merges them, creating a German noun phrase. Since German noun phrases are continuous, it can immediately concatenate the different forms and other words (in this example the indefinite article "ein" or "eine", again based on the inherent feature of the noun). The result of the merge is still open with regards to the case, but would have an inherent gender (feminine) and number (singular). A function that takes the noun phrase as an input for a specific sentence can then select the right case depending on the phrase's function in the sentence (e.g. if we wanted to make a sentence such as ''“Anton kommt aus einer süddeutschen Stadt.”'' (meaning “Anton comes from a city in the south of Germany”), we would select the dative case. For a different sentence such as ''“Anton zieht in eine süddeutsche Stadt.”'' (meaning “Anton moves to a city in the south of Germany”), we would need the accusative case. The predicate and the proposition together would determine which case is needed. Most concrete natural language generation functions can be built by using the merge function, thus reducing the implementation work in many languages. == Summary == The table type and the merge function would become the backbone for natural language generation, enabling the support of agreement which is crucial in many languages. Just to give an example how this could look like, still using German as the example: * We would create a type for German nouns, which consists of a table type that has ** one inherent feature, the grammatical gender with the three values feminine, masculine and neuter ([[Wikifunctions:Type proposals/Grammatical gender (m/f/n)|proposed here]]) ** And options based on a two-valued grammatical number and a specific four-valued grammatical case * We would create a type for German adjectives, which consists of a table type that has ** No inherent features ** And options based on the three-valued grammatical gender mentioned above, the two-valued grammatical number, the definiteness (two-valued), and the four German cases * We would create types for German noun phrases, verb phrases, and for sentences We furthermore would create a number of functions. Relevant for our example are the following functions: * Create a sentence from a noun phrase and a verb phrase * Create a verb phrase from a German verb, proposition, and a noun phrase for the object in the given case * Create a noun phrase from an adjective and a noun Now we can create a noun phrase from the adjective and noun given in the example above. Internally, that would use the merge function we have described above. That one can be used as the argument for a verb phrase which takes the verb ''“kommen”'', the German proposition “aus”, the noun phrase we just constructed, and it states that the latter has to be dative. We would select the dative for the verb phrase and concatenate the parts of the sentence. Finally, we can build the whole sentence from a noun phrase (which we may just create on Wikifunctions from the string ''“Anton”'', since there is currently no such German proper noun) and we would get the sentence ''“Anton kommt aus einer süddeutschen Stadt”''. Without introducing syntactic type, we miss a crucial abstraction level here, which makes it much more fragile to implement the generation of such sentences. This proposal [[Wikifunctions:Status updates/2024-12-12#Stage 2: Lexeme-based generation|lives within Stage 2 of the path towards Abstract Wikipedia]]. Note that this does not yet presuppose nor determine how abstract content will be structured. But no matter what the answer to that question will be, it makes it easier to scale up writing functions that can generate sentences in many languages. == Discussion and comments == Please use the reply link to add your comments --[[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 19:02, 18 February 2025 (UTC) :'''Why have language-specific types?''' [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 19:08, 18 February 2025 (UTC) ::It makes more sense to me to extend the Z11 pattern, so that we have, for example, monolingual noun (phrase) variant and monolingual verb (phrase) variant. It may be considered a disadvantage that such an approach does not prevent a German noun pattern from being used in a French noun phrase. However, when considering phrases rather than lexeme forms, it is not clear that focusing on syntax rather than semantics is the better approach. A noun phrase representing an indirect object, for example, may have a different form or position from a direct object whether or not any word is marked by a specific inflection. Whether we describe this as “indirect object”, “dative” or something else hardly matters, but since we intend to generate natural language from language-neutral semantic representations, I think it makes more sense to refine by semantic function first, language second and syntactic considerations last. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 19:59, 18 February 2025 (UTC) :::Oh, I am not saying that syntactic types should be done ''instead'' of semantic or abstract types. I think that both are necessary. The suggestion here is firmly on the syntactic side. I totally agree that we also need something to express the semantic side as well. :::If I understand your suggestion, it is that we should figure out the semantic step first, before we get to the syntactic layer. Hmm, I see your point. I was thinking we could build up from the concrete towards the abstract. But maybe the other approach has benefits that I missed, and we should leave this rest for now and see if we need it once the abstract content questions are a bit more settled. --[[User:Denny|Denny]] ([[User talk:Denny|talk]]) 13:20, 19 February 2025 (UTC) ::::''It’s hard to say exactly what I mean and harder still to mean exactly what I say.'' I’m not saying that we should figure out the semantic step first, I’m saying that the syntactic step is downstream of the semantic in the NLG pipeline. We need to think ourselves a little upstream of the Great Lexemification Rapids to provide sufficient context to evaluate options, I think. I believe that there is sufficient overlap between the semantic and syntactic challenges that it is at least plausible that the solutions can evolve along similar lines. But I see the end-to-end pipeline as a sequence of successive refinements, where the availability of Wikidata content and Wikifunctions capabilities together determine the available refinements in any particular case. It is conceptually convenient to consider that at each stage a function converts content objects from one type to the next, the advantage of which is that the functions available for the next refinement are readily apparent, but it will be convenient, in practice (I’m sure), to avoid multiplying up these types by the available languages. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 15:04, 19 February 2025 (UTC) * Strongly {{o}}, this adds debt of creating new enums and pollutes the wiki. I would be fine with this if there were software changes to make the footprint of an enum smaller. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 19:35, 18 February 2025 (UTC) *:That's not a bad idea, to make enums more light weight. You mentioned it before. @[[User:Jdforrester (WMF)|Jdforrester (WMF)]] was already suggesting something -- let's see what'll come out of that. --[[User:Denny|Denny]] ([[User talk:Denny|talk]]) 13:15, 19 February 2025 (UTC) * {{o}}, even if there wasn't so much 'debt'/'pollution', since the extra complexity appears unnecessarily limiting and is unlikely to handle morphological exceptions (whether due to syntactic or semantic constraints) in a given language. Languages that are more analytic (and thus with closer to one form per lexeme), and those that are more agglutinative/polysynthetic (and thus with separate inflectional morpheme lexemes), are also unlikely to benefit from such types. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 23:25, 18 February 2025 (UTC) *:That's actually a great point -- there is no need to do it for all languages, and for all parts of speech, but only for the ones where it makes sense! --[[User:Denny|Denny]] ([[User talk:Denny|talk]]) 13:16, 19 February 2025 (UTC) :'''Wikifunctions lexemes?''' I’ve always assumed that we would need a type for representing lexemes that are absent from Wikidata or incomplete. We sort of agreed in our discussion on [[Wikifunctions:Type proposals/Wikidata based types]]. How does the current proposal align with or shape our approach to this? [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 09:39, 20 February 2025 (UTC) ::Yes, I think so too. And one of the constructors for that type should be a Wikidata Lexeme. So that we can then use the resulting type in constructing phrases. ::So, basically, we could have that new type Wf lexeme, and it can be created either from a Wikidata Lexeme, or from a Wikidata Item, or from a string (or set of strings), and these then would be usable for building a phrase. It seems we agree on that part. ::What I am saying additionally is that we shouldn't have a single type for Wikifunctions lexeme, but several, based on their part of speech. But I am happy to find already agreement on the first step. I think that eventually we'll get to the whole way anyway :) --[[User:Denny|Denny]] ([[User talk:Denny|talk]]) 10:19, 26 February 2025 (UTC) :::Yes, I agree with a Lexeme type for different parts of speech; I’m just not convinced that we need separate sets of Lexeme types for each language. So we have Noun but not English noun. Clearly, a function that operates only on Nouns for the English language could usefully distinguish by type from one that operates on Nouns for the German language. One way of doing this is to pair the Noun type with the relevant language, as a “generic” type. To be clear, though, I don’t object to there being multiple Noun (and other part-of-speech) types to cater for the different patterns that languages follow with regard to number, gender, case etc., so long as the types correspond to the patterns followed rather than the languages that follow those patterns. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:14, 26 February 2025 (UTC) :'''comment''' I'm not sure what to think. On one hand, sure an English noun and a German noun is not the same thing and should be handled differently ; but on the other noun, even English nouns are not all the same ("dog"@en has singular and plural while "clothes"@en has only a plural as it's a plurale tantum) and English and German adverbs are the same. So a type "lexical category + language" seems both too wide and too narrow. Also, why not go more "atomic" and having two types : one for category and one for language? Cheers, [[User:VIGNERON|VIGNERON]] ([[User talk:VIGNERON|talk]]) 08:16, 24 February 2025 (UTC) :'''Comment''': I don't think that I understood how exactly is the table with Stadt, Städte, Städten, etc. is generated. Is the "Städten" string, for example, supposed to be generated by code stored on Wikifunctions? Or is this proposed type supposed to be a representation for Wikifunctions of the data that is already within Wikidata? --[[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 14:17, 3 March 2025 (UTC) ::I think the best way to do so is to pick up any forms from Wikidata if they exist and use functions for those forms that are missing. It is proposed to be a kind of normalized and standardized form of the data that is mostly already available in Wikidata, but can be used with certain assurances about the structure so that functions can be written in an easier way. --[[User:Denny|Denny]] ([[User talk:Denny|talk]]) 08:21, 28 March 2026 (UTC) :{{oppose}}, since (as already pointed in previous comments) the bottom-up strategy implied by this proposal to language generation creates a lot of useless computation and memory (with a complexity that could grow exponentially), other than failing to account the exceptions that all natural languages are filled with. I think that generally to generate human language text we should instead use a top-down approach (starting from an abstract representation of an entire sentence and from there generate the single components), since I think it's also closer on how our brain actually generates sentences. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 13:37, 16 June 2025 (UTC) ::After one more year of experience with more complex types, I agree with your point. The proposal does require a lot of unnecessary computation, in particular, it requires to compute many strings that are in the end just frown away. That's a consequence of the rather eager evaluation strategy of the system. ::How can we avoid that? We could quote the parts that are not used until they are. This kind of simulates a lazy evaluation. (I am just thinking out loud here, I don't know what the solutions is). --[[User:Denny|Denny]] ([[User talk:Denny|talk]]) 08:17, 28 March 2026 (UTC) eyjgsi2x534zs0vil9o711b24lsf115 Z23753 0 53961 261451 259793 2026-03-28T10:39:11Z ChaoticVermillion 31127 Added Z32859 to the approved list of implementations 261451 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z23753" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z23753K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "QID" }, { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "QID" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "QID" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "QID" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "QID" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "QID" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z23753K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "language" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Sprache" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "bahasa" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "lingua" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "jazyk" } ] } } ], "Z8K2": "Z6", "Z8K3": [ "Z20", "Z23755", "Z27279", "Z27585" ], "Z8K4": [ "Z14", "Z30161", "Z30118", "Z23754", "Z32859" ], "Z8K5": "Z23753" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "label of item reference in language" }, { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "参照項目の指定言語のラベル" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Bezeichnung von Datenobjekt-Referenz in Sprache" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "label butir referensi di bahasa" }, { "Z1K1": "Z11", "Z11K1": "Z1272", "Z11K2": "ime iz Wikidata za jezik" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "etichetta di riferimento a elemento in lingua" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "štítek reference na položku v jazyce" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "QID label", "label of QID", "label from QID", "label from Wikidata item reference", "Wikidata item reference to label", "label in language" ] }, { "Z1K1": "Z31", "Z31K1": "Z1830", "Z31K2": [ "Z6", "QIDのラベル" ] }, { "Z1K1": "Z31", "Z31K1": "Z1078", "Z31K2": [ "Z6", "label QID" ] }, { "Z1K1": "Z31", "Z31K1": "Z1062", "Z31K2": [ "Z6", "štítek Wikidat", "QID štítek", "štítek v jazyce" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "returns the label string of the Wikidata item corresponding to the reference (QID) in the specified language" }, { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "指定された言語で参照(QID)に対応するウィキデータ項目のラベル文字列を返します" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "gibt die Bezeichnung des Wikidata-Datenobjekts in der angegebenen Sprache aus" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "mengembalikan untaian label dari butir Wikidata dari referensi (QID) pada bahasa yang diberikan" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "Restituisce la stringa dell'etichetta dell'elemento Wikidata corrispondente al riferimento (QID) nella lingua specificata" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "vrátí text štítku položky Wikidat odpovídající uvedené referenci (QID) v zadaném jazyce" } ] } } be7rgg338243dv7u89t4w930t3piiet 261452 261451 2026-03-28T10:39:18Z ChaoticVermillion 31127 Added Z32860 to the approved list of test cases 261452 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z23753" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z23753K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "QID" }, { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "QID" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "QID" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "QID" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "QID" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "QID" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z23753K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "language" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Sprache" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "bahasa" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "lingua" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "jazyk" } ] } } ], "Z8K2": "Z6", "Z8K3": [ "Z20", "Z23755", "Z27279", "Z27585", "Z32860" ], "Z8K4": [ "Z14", "Z30161", "Z30118", "Z23754", "Z32859" ], "Z8K5": "Z23753" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "label of item reference in language" }, { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "参照項目の指定言語のラベル" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Bezeichnung von Datenobjekt-Referenz in Sprache" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "label butir referensi di bahasa" }, { "Z1K1": "Z11", "Z11K1": "Z1272", "Z11K2": "ime iz Wikidata za jezik" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "etichetta di riferimento a elemento in lingua" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "štítek reference na položku v jazyce" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "QID label", "label of QID", "label from QID", "label from Wikidata item reference", "Wikidata item reference to label", "label in language" ] }, { "Z1K1": "Z31", "Z31K1": "Z1830", "Z31K2": [ "Z6", "QIDのラベル" ] }, { "Z1K1": "Z31", "Z31K1": "Z1078", "Z31K2": [ "Z6", "label QID" ] }, { "Z1K1": "Z31", "Z31K1": "Z1062", "Z31K2": [ "Z6", "štítek Wikidat", "QID štítek", "štítek v jazyce" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "returns the label string of the Wikidata item corresponding to the reference (QID) in the specified language" }, { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "指定された言語で参照(QID)に対応するウィキデータ項目のラベル文字列を返します" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "gibt die Bezeichnung des Wikidata-Datenobjekts in der angegebenen Sprache aus" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "mengembalikan untaian label dari butir Wikidata dari referensi (QID) pada bahasa yang diberikan" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "Restituisce la stringa dell'etichetta dell'elemento Wikidata corrispondente al riferimento (QID) nella lingua specificata" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "vrátí text štítku položky Wikidat odpovídající uvedené referenci (QID) v zadaném jazyce" } ] } } phoxe9tcmhrtjqc6pk9dbe1g71gvwfe User:Geno (WMF)/Sandbox 2 57698 261439 257794 2026-03-28T10:06:57Z Geno (WMF) 107 261439 wikitext text/x-wiki {{#function:Z28904|A new link to main page working!!}} {{#function:Z28904|is our cache broken?}} {{#function:Z13539|6|5000}} r0c0ovzhlayiaft4rjour7ferprusy6 Z26043 0 60722 261360 258211 2026-03-28T00:19:12Z Higa4 889 +ja 261360 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z26043" }, "Z2K2": { "Z1K1": "Z14294", "Z14294K1": [ "Z14293", { "Z1K1": "Z14293", "Z14293K1": "Z26088", "Z14293K2": [ "Z60", "Z1002", "Z1113", "Z1689", "Z1199", "Z1437", "Z1966", "Z1124" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z26337", "Z14293K2": [ "Z60", "Z1003", "Z1423", "Z1127", "Z1547", "Z1133" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z26340", "Z14293K2": [ "Z60", "Z1237" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z26572", "Z14293K2": [ "Z60", "Z1011" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z26562", "Z14293K2": [ "Z60", "Z1004", "Z1640", "Z1757" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z26617", "Z14293K2": [ "Z60", "Z1272" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z26704", "Z14293K2": [ "Z60", "Z1078" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z26712", "Z14293K2": [ "Z60", "Z1430", "Z1231", "Z1508", "Z1843", "Z1463", "Z1859", "Z1515" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z26717", "Z14293K2": [ "Z60", "Z1146" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z26723", "Z14293K2": [ "Z60", "Z1403" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z26513", "Z14293K2": [ "Z60", "Z1787" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z26671", "Z14293K2": [ "Z60", "Z1592" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z27244", "Z14293K2": [ "Z60", "Z1006" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z27259", "Z14293K2": [ "Z60", "Z1576" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z27283", "Z14293K2": [ "Z60", "Z1643", "Z1506" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z27324", "Z14293K2": [ "Z60", "Z1001", "Z1114" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z27490", "Z14293K2": [ "Z60", "Z1099" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z27924", "Z14293K2": [ "Z60", "Z1037", "Z1381", "Z1294" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z29256", "Z14293K2": [ "Z60", "Z1907" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z30598", "Z14293K2": [ "Z60", "Z1531" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z32671", "Z14293K2": [ "Z60", "Z1830" ] } ], "Z14294K2": "Z26088" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "config for article-less instantiating sentences" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "contoh kalimat tanpa artikel per bahasa" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "instanciation de phrases sans article par langue" }, { "Z1K1": "Z11", "Z11K1": "Z1003", "Z11K2": "instanciación de frases sin artículo por lengua" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } k199chfmf3ffaoxad5d5bn30g6fy92b 261400 261360 2026-03-28T06:56:08Z Sun8908 9804 change whenever we get a function for conversion between traditional and simplified 261400 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z26043" }, "Z2K2": { "Z1K1": "Z14294", "Z14294K1": [ "Z14293", { "Z1K1": "Z14293", "Z14293K1": "Z26088", "Z14293K2": [ "Z60", "Z1002", "Z1113", "Z1689", "Z1199", "Z1437", "Z1966", "Z1124" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z26337", "Z14293K2": [ "Z60", "Z1003", "Z1423", "Z1127", "Z1547", "Z1133" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z26340", "Z14293K2": [ "Z60", "Z1237" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z26572", "Z14293K2": [ "Z60", "Z1011" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z26562", "Z14293K2": [ "Z60", "Z1004", "Z1640", "Z1757" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z26617", "Z14293K2": [ "Z60", "Z1272" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z26704", "Z14293K2": [ "Z60", "Z1078" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z26712", "Z14293K2": [ "Z60", "Z1430", "Z1231", "Z1508", "Z1843", "Z1463", "Z1859", "Z1515" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z26717", "Z14293K2": [ "Z60", "Z1146" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z26723", "Z14293K2": [ "Z60", "Z1403" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z26513", "Z14293K2": [ "Z60", "Z1787" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z26671", "Z14293K2": [ "Z60", "Z1592" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z27244", "Z14293K2": [ "Z60", "Z1006", "Z1645", "Z1411", "Z1591", "Z1504", "Z1672", "Z1107", "Z1589", "Z1406" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z27259", "Z14293K2": [ "Z60", "Z1576" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z27283", "Z14293K2": [ "Z60", "Z1643", "Z1506" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z27324", "Z14293K2": [ "Z60", "Z1001", "Z1114" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z27490", "Z14293K2": [ "Z60", "Z1099" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z27924", "Z14293K2": [ "Z60", "Z1037", "Z1381", "Z1294" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z29256", "Z14293K2": [ "Z60", "Z1907" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z30598", "Z14293K2": [ "Z60", "Z1531" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z32671", "Z14293K2": [ "Z60", "Z1830" ] } ], "Z14294K2": "Z26088" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "config for article-less instantiating sentences" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "contoh kalimat tanpa artikel per bahasa" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "instanciation de phrases sans article par langue" }, { "Z1K1": "Z11", "Z11K1": "Z1003", "Z11K2": "instanciación de frases sin artículo por lengua" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } sg5nbrhov4k8rhgritppq9j9m1zijqh Z26096 0 60847 261374 258212 2026-03-28T01:42:37Z Higa4 889 + ja (same as article-less in Japanese) 261374 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z26096" }, "Z2K2": { "Z1K1": "Z14294", "Z14294K1": [ "Z14293", { "Z1K1": "Z14293", "Z14293K1": "Z23410", "Z14293K2": [ "Z60", "Z1002" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z27102", "Z14293K2": [ "Z60", "Z1787" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z27258", "Z14293K2": [ "Z60", "Z1015" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z27249", "Z14293K2": [ "Z60", "Z1430" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z27396", "Z14293K2": [ "Z60", "Z1004" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z29356", "Z14293K2": [ "Z60", "Z1146" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z30654", "Z14293K2": [ "Z60", "Z1531" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z32671", "Z14293K2": [ "Z60", "Z1830" ] } ], "Z14294K2": "Z23410" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "config for article-ful instantiating sentences" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "frammento di instanziazione indefinito per lingua" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Instanziierungssatz mit Artikel nach Sprache" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 3vwybxm0z2lorbgf7rhyqgp0mfb5ct3 261375 261374 2026-03-28T02:21:50Z Higa4 889 del ja 261375 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z26096" }, "Z2K2": { "Z1K1": "Z14294", "Z14294K1": [ "Z14293", { "Z1K1": "Z14293", "Z14293K1": "Z23410", "Z14293K2": [ "Z60", "Z1002" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z27102", "Z14293K2": [ "Z60", "Z1787" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z27258", "Z14293K2": [ "Z60", "Z1015" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z27249", "Z14293K2": [ "Z60", "Z1430" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z27396", "Z14293K2": [ "Z60", "Z1004" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z29356", "Z14293K2": [ "Z60", "Z1146" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z30654", "Z14293K2": [ "Z60", "Z1531" ] } ], "Z14294K2": "Z23410" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "config for article-ful instantiating sentences" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "frammento di instanziazione indefinito per lingua" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Instanziierungssatz mit Artikel nach Sprache" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } nk6wlnwz4ltf1g0un04xtnbr5v04txw Z26570 0 61686 261425 260450 2026-03-28T08:31:50Z Ainali 17 +sv 261425 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z26570" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z26570K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "entity" }, { "Z1K1": "Z11", "Z11K1": "Z1643", "Z11K2": "클래스" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "entité" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "entitas" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "entita" }, { "Z1K1": "Z11", "Z11K1": "Z1645", "Z11K2": "实体" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "entitet" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z26570K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "class" }, { "Z1K1": "Z11", "Z11K1": "Z1643", "Z11K2": "엔터티" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "classe" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "kelas" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "třída" }, { "Z1K1": "Z11", "Z11K1": "Z1645", "Z11K2": "类别" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "typ" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z26570K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "location" }, { "Z1K1": "Z11", "Z11K1": "Z1643", "Z11K2": "위치" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "location" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "lokasi" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "umístění" }, { "Z1K1": "Z11", "Z11K1": "Z1645", "Z11K2": "位置" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "plats" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z26570K4", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1643", "Z11K2": "언어" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "language" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "langue" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "bahasa" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "jazyk" }, { "Z1K1": "Z11", "Z11K1": "Z1645", "Z11K2": "语言" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "språk" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z26609", "Z26623", "Z26625", "Z26626", "Z26932", "Z27175", "Z27176", "Z32289", "Z32377" ], "Z8K4": [ "Z14", "Z29840" ], "Z8K5": "Z26570" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "State location using entity and class" }, { "Z1K1": "Z11", "Z11K1": "Z1643", "Z11K2": "엔터티와 클래스를 사용하여 위치 지정" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "Localiser en utilisant l'entité et la classe" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "Berikan lokasi menggunakan entitas dan kelas" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "vyjádřit umístění pomocí entity a třídy" }, { "Z1K1": "Z11", "Z11K1": "Z1645", "Z11K2": "使用实体和类别说明位置" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "Ange plats med entitet och typ" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "something is a something in somewhere", "is a ? in ?", "location is a class in entity", "X is a Y in Z" ] }, { "Z1K1": "Z31", "Z31K1": "Z1078", "Z31K2": [ "Z6", "sesuatu adalah sesuatu di suatu tempat" ] }, { "Z1K1": "Z31", "Z31K1": "Z1645", "Z31K2": [ "Z6", "某物是某地的某类事物" ] }, { "Z1K1": "Z31", "Z31K1": "Z1592", "Z31K2": [ "Z6", "Ange plats med entitet och klass" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Forms a sentence stating the location and class of a given entity. E.g. \"Seoul is a city in South Korea.\"" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "Membuat kalimat yang memberikan lokasi dan kelas dari entitas yang diberikan. Misalnya \"Seoul adalah kota di Korea Selatan.\"" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "Vytvoří větu popisující polohu a třídu dané entity. Např. „Soul je město v Jižní Koreji.“" }, { "Z1K1": "Z11", "Z11K1": "Z1645", "Z11K2": "生成一句话,说明某个给定实体的类别及其所在位置。如:“首尔是韩国的一座城市。”" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "Skapar en mening med plats och typ av en angiven entitet. Ex. \"Seoul är en stad i Sydkorea.\"" } ] } } bsvp4nkt93u05ohr5mghpys5z56gv1x Z26572 0 61688 261469 205118 2026-03-28T11:05:23Z ChaoticVermillion 31127 Removed Z26574 from the approved list of implementations 261469 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z26572" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z26572K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Entity" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z26572K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Class" } ] } } ], "Z8K2": "Z6", "Z8K3": [ "Z20", "Z26573", "Z26606", "Z26607" ], "Z8K4": [ "Z14" ], "Z8K5": "Z26572" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Bangla article-less instantiating sentence" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } b3a13a9blder2xf9m15p0d9ar0s6810 Z26573 0 61689 261479 205081 2026-03-28T11:12:30Z ChaoticVermillion 31127 adding । 261479 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z26573" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z26572", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z26572", "Z26572K1": { "Z1K1": "Z6091", "Z6091K1": "Q1348" }, "Z26572K2": { "Z1K1": "Z6091", "Z6091K1": "Q200250" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z866", "Z866K2": "কলকাতা একটি মহানগরী।" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "কলকাতা একটি মহানগরী" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Q1348 হল Q200250" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } p9q0qmmlmm380qsxt8o4jnaekouq48g 261492 261479 2026-03-28T11:55:29Z Redmin 52094 Update label 261492 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z26573" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z26572", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z26572", "Z26572K1": { "Z1K1": "Z6091", "Z6091K1": "Q1348" }, "Z26572K2": { "Z1K1": "Z6091", "Z6091K1": "Q200250" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z866", "Z866K2": "কলকাতা একটি মহানগরী।" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "কলকাতা একটি মহানগরী" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Q1348 একটি Q200250" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } l2oif9d50imu9pu6u3415yv3cf40sa5 Z26574 0 61690 261486 205114 2026-03-28T11:33:50Z Redmin 52094 Add '।' to the end of the sentence and conditionally add 'ছিলেন' if the entity is a dead person 261486 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z26574" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z26572", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z10000", "Z10000K1": { "Z1K1": "Z7", "Z7K1": "Z22504", "Z22504K1": [ "Z6", { "Z1K1": "Z7", "Z7K1": "Z23753", "Z23753K1": { "Z1K1": "Z18", "Z18K1": "Z26572K1" }, "Z23753K2": "Z1011" }, { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z26602", "Z26602K1": { "Z1K1": "Z18", "Z18K1": "Z26572K1" } }, "Z802K2": "একজন", "Z802K3": "একটি" }, { "Z1K1": "Z7", "Z7K1": "Z23753", "Z23753K1": { "Z1K1": "Z18", "Z18K1": "Z26572K2" }, "Z23753K2": "Z1011" }, { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z26696", "Z26696K1": { "Z1K1": "Z18", "Z18K1": "Z26572K1" } }, "Z802K2": "ছিলেন", "Z802K3": "" } ] }, "Z10000K2": "।" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Basic Composition for Z26572" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 5mj5aiiz2ld6drzj7pjk8umv2430h1z 261487 261486 2026-03-28T11:34:49Z Redmin 52094 Fix condition 261487 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z26574" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z26572", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z10000", "Z10000K1": { "Z1K1": "Z7", "Z7K1": "Z22504", "Z22504K1": [ "Z6", { "Z1K1": "Z7", "Z7K1": "Z23753", "Z23753K1": { "Z1K1": "Z18", "Z18K1": "Z26572K1" }, "Z23753K2": "Z1011" }, { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z26602", "Z26602K1": { "Z1K1": "Z18", "Z18K1": "Z26572K1" } }, "Z802K2": "একজন", "Z802K3": "একটি" }, { "Z1K1": "Z7", "Z7K1": "Z23753", "Z23753K1": { "Z1K1": "Z18", "Z18K1": "Z26572K2" }, "Z23753K2": "Z1011" }, { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z26696", "Z26696K1": { "Z1K1": "Z18", "Z18K1": "Z26572K1" } }, "Z802K2": "", "Z802K3": "ছিলেন" } ] }, "Z10000K2": "।" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Basic Composition for Z26572" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 9teishe700cyyf1z2iks2uprm1uyc60 261488 261487 2026-03-28T11:47:04Z Redmin 52094 Fix output for cases where the person is alive or the item is not a human 261488 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z26574" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z26572", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z10000", "Z10000K1": { "Z1K1": "Z7", "Z7K1": "Z22504", "Z22504K1": [ "Z6", { "Z1K1": "Z7", "Z7K1": "Z23753", "Z23753K1": { "Z1K1": "Z18", "Z18K1": "Z26572K1" }, "Z23753K2": "Z1011" }, { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z26602", "Z26602K1": { "Z1K1": "Z18", "Z18K1": "Z26572K1" } }, "Z802K2": "একজন", "Z802K3": "একটি" }, { "Z1K1": "Z7", "Z7K1": "Z23753", "Z23753K1": { "Z1K1": "Z18", "Z18K1": "Z26572K2" }, "Z23753K2": "Z1011" } ] }, "Z10000K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z26696", "Z26696K1": { "Z1K1": "Z18", "Z18K1": "Z26572K1" } }, "Z802K2": "।", "Z802K3": "ছিলেন।" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Basic Composition for Z26572" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } mbhsk6hzqh8rwkp0ewjkiay6bs93v05 261489 261488 2026-03-28T11:48:52Z Redmin 52094 Improve en label 261489 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z26574" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z26572", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z10000", "Z10000K1": { "Z1K1": "Z7", "Z7K1": "Z22504", "Z22504K1": [ "Z6", { "Z1K1": "Z7", "Z7K1": "Z23753", "Z23753K1": { "Z1K1": "Z18", "Z18K1": "Z26572K1" }, "Z23753K2": "Z1011" }, { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z26602", "Z26602K1": { "Z1K1": "Z18", "Z18K1": "Z26572K1" } }, "Z802K2": "একজন", "Z802K3": "একটি" }, { "Z1K1": "Z7", "Z7K1": "Z23753", "Z23753K1": { "Z1K1": "Z18", "Z18K1": "Z26572K2" }, "Z23753K2": "Z1011" } ] }, "Z10000K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z26696", "Z26696K1": { "Z1K1": "Z18", "Z18K1": "Z26572K1" } }, "Z802K2": "।", "Z802K3": "ছিলেন।" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Bangla article-less instantiating sentence. comp" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 2ob33xs1ryress2oqv4mk33duzyw0h4 261490 261489 2026-03-28T11:50:19Z Redmin 52094 Add space before 'ছিলেন' 261490 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z26574" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z26572", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z10000", "Z10000K1": { "Z1K1": "Z7", "Z7K1": "Z22504", "Z22504K1": [ "Z6", { "Z1K1": "Z7", "Z7K1": "Z23753", "Z23753K1": { "Z1K1": "Z18", "Z18K1": "Z26572K1" }, "Z23753K2": "Z1011" }, { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z26602", "Z26602K1": { "Z1K1": "Z18", "Z18K1": "Z26572K1" } }, "Z802K2": "একজন", "Z802K3": "একটি" }, { "Z1K1": "Z7", "Z7K1": "Z23753", "Z23753K1": { "Z1K1": "Z18", "Z18K1": "Z26572K2" }, "Z23753K2": "Z1011" } ] }, "Z10000K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z26696", "Z26696K1": { "Z1K1": "Z18", "Z18K1": "Z26572K1" } }, "Z802K2": "।", "Z802K3": " ছিলেন।" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Bangla article-less instantiating sentence. comp" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } jrbdknc8rwhyo4wk2pdm2vt9bti88pc Z26606 0 61723 261481 205116 2026-03-28T11:13:38Z ChaoticVermillion 31127 adding । 261481 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z26606" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z26572", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z26572", "Z26572K1": { "Z1K1": "Z6091", "Z6091K1": "Q334818" }, "Z26572K2": { "Z1K1": "Z6091", "Z6091K1": "Q49757" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z866", "Z866K2": "কাজী নজরুল ইসলাম একজন কবি।" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "কাজী নজরুল ইসলাম একজন কবি" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } qv4mt0gfeh4fybesz149bryqji9fs1s Z26607 0 61724 261480 205117 2026-03-28T11:13:05Z ChaoticVermillion 31127 adding । 261480 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z26607" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z26572", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z26572", "Z26572K1": { "Z1K1": "Z6091", "Z6091K1": "Q1363" }, "Z26572K2": { "Z1K1": "Z6091", "Z6091K1": "Q12443800" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z866", "Z866K2": "ত্রিপুরা একটি ভারতের রাজ্য।" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "ত্রিপুরা একটি ভারতের রাজ্য" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } o3n6ifwz6a7x29ayhs9az7j1bj93pk3 Z26676 0 61842 261450 221156 2026-03-28T10:38:52Z Ainali 17 261450 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z26676" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6005", "Z17K2": "Z26676K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "lexeme" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "lessema" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Lexem" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "lexem" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z26676K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "grammatical gender" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "genere grammaticale" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Grammatikalisches Geschlecht" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "grammatiskt kön" } ] } } ], "Z8K2": "Z40", "Z8K3": [ "Z20", "Z26677", "Z26678", "Z26679", "Z26680" ], "Z8K4": [ "Z14", "Z26683" ], "Z8K5": "Z26676" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "grammatical gender of lexeme is exactly" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "lessema ha genere grammaticale?" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Grammatikalisches Geschlecht vom Lexem ist gleich" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1787", "Z31K2": [ "Z6", "è genere grammaticale di lessema?", "genere grammaticale di lessema è quello dato?" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "checks if a Wikidata lexeme is a specific grammatical gender" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "Controlla se il lessema Wikidata ha il genere grammaticale dato." }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Prüft ob das grammatikalische Geschlecht vom Lexem dem eingegebenen grammatikalischen Geschlecht entspricht." } ] } } qs4uhcbzpq06cp6ydfp4h9ig3h6a3gt Wikifunctions:Catalogue/Natural language operations/Latin 4 62102 261470 206730 2026-03-28T11:05:34Z EJPPhilippines 9359 /* Declension */ 261470 wikitext text/x-wiki == Sentence and fragment generation == * {{Z+|Z26723}} == Declension == * {{Z+|Z32330}} * {{Z+|Z32340}} ** {{Z+|Z26333}} * {{Z+|Z32343}} * {{Z+|Z32347}} [[Category:Lists of functions]] [[Category:Latin]] lkp2311zivjaawh84ertrv33mjapi5q Z27176 0 63077 261473 234526 2026-03-28T11:07:29Z So9q 3791 adapt to current label 261473 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z27176" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z26570", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z26570", "Z26570K1": { "Z1K1": "Z6091", "Z6091K1": "Q60" }, "Z26570K2": { "Z1K1": "Z6091", "Z6091K1": "Q515" }, "Z26570K3": { "Z1K1": "Z6091", "Z6091K1": "Q30" }, "Z26570K4": "Z1002" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "New York City is a city in the United States." } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "[en] New York is a city in the United States." } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 0tknajjdybznv9jn5l5d6gn8kxa749j 261475 261473 2026-03-28T11:07:49Z So9q 3791 adapt 261475 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z27176" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z26570", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z26570", "Z26570K1": { "Z1K1": "Z6091", "Z6091K1": "Q60" }, "Z26570K2": { "Z1K1": "Z6091", "Z6091K1": "Q515" }, "Z26570K3": { "Z1K1": "Z6091", "Z6091K1": "Q30" }, "Z26570K4": "Z1002" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "New York City is a city in the United States." } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "[en] New York City is a city in the United States." } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } husi2wob7anmwz3hin8gsw9llgreb7p Talk:Z16313 1 64197 261301 216909 2026-03-27T19:34:40Z Arlo Barnes 1231 subcat 261301 wikitext text/x-wiki == duplicate of Z16312? == @[[User:Arlo Barnes|Arlo Barnes]] is this a duplicate of [[Z16312]]? [[User:99of9|99of9]] ([[User talk:99of9|talk]]) 23:03, 23 August 2025 (UTC) : Yes, I think it was. [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 21:42, 9 September 2025 (UTC) [[category:Láadan natural language generation functions]] b3kf4kgsnrkv3dpgidddfeodmkikty3 Z27868 0 64498 261249 258337 2026-03-27T17:01:23Z NikolasKHF 7673 261249 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z27868" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z27868K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "stringa" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "string" }, { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "文字列" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "Untaian" } ] } } ], "Z8K2": "Z89", "Z8K3": [ "Z20", "Z27869", "Z27870" ], "Z8K4": [ "Z14", "Z27871", "Z31950" ], "Z8K5": "Z27868" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "stringa in frammento HTML" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "string to HTML fragment" }, { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "文字列からHTMLフラグメントへ" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "chaîne en fragment HTML" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "Untaian ke fragmen HTML" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "string as HTML fragment", "escape HTML" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "Converte una stringa in un frammento HTML, convertendo i caratteri riservati" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Converts a string in an HTML fragment, escaping reserved characters" }, { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "予約文字をエスケープしながら、文字列をHTMLフラグメントに変換" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "convertit une chaîne de caractère en fragment HTML" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "Mengonversi untaian dalam fragment HTML, mengatasi karakter yang dicadangkan" } ] } } 9dpil8kuog1hpbba4ryk0lh1upr0lq4 Z28020 0 65095 261447 259398 2026-03-28T10:31:54Z Escargot bleu 1060 adding French 261447 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z28020" }, "Z2K2": { "Z1K1": "Z14294", "Z14294K1": [ "Z14293", { "Z1K1": "Z14293", "Z14293K1": "Z28018", "Z14293K2": [ "Z60", "Z1430" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z28026", "Z14293K2": [ "Z60", "Z1002", "Z1199", "Z1689", "Z1113", "Z1124", "Z1437", "Z1966" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z28049", "Z14293K2": [ "Z60", "Z1011" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z28052", "Z14293K2": [ "Z60", "Z1787" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z30671", "Z14293K2": [ "Z60", "Z1146" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z30609", "Z14293K2": [ "Z60", "Z1531" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z32160", "Z14293K2": [ "Z60", "Z1186" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z32212", "Z14293K2": [ "Z60", "Z1006", "Z1645", "Z1672", "Z1411", "Z1589", "Z1406", "Z1591", "Z1504", "Z1107" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z32355", "Z14293K2": [ "Z60", "Z1830", "Z1326", "Z1171", "Z1736" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z32166", "Z14293K2": [ "Z60", "Z1004", "Z1757", "Z1640" ] } ], "Z14294K2": "Z28019" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "config for defining role sentence" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } dr30zsahh2iydwd24qn1ljvk5b1nzo2 Z29370 0 68475 261261 260675 2026-03-27T17:24:26Z YoshiRulz 10156 Removed Z31101 from the approved list of implementations 261261 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z29370" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z8", "Z17K2": "Z29370K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "function to apply" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "aplikovaná funkce" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z1", "Z17K2": "Z29370K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "common first argument" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "společný první argument" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z1", "Z17K2": "Z29370K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "common second argument" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "společný druhý argument" } ] } }, { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z29370K4", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "list of third arguments" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "seznam třetích argumentů" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z8K3": [ "Z20", "Z29371" ], "Z8K4": [ "Z14", "Z29372" ], "Z8K5": "Z29370" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "apply3 to a common 1st and 2nd arg and list of 3rd" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "aplikovat 3-funkci na společný 1. a 2. a seznam 3." } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "apply a three-parameter function to a common first and second arguments and a list of third arguments" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "Aplikuje funkci se třemi argumenty, přičemž pro první a druhý argument bere fixní dodané hodnoty, pro třetí bere hodnoty dodaného seznamu. Vrátí seznam výsledků těchto volání." } ] } } td40bt82assfwhwrczhsapb0dtpq0b0 261262 261261 2026-03-27T17:25:40Z YoshiRulz 10156 Added Z31101 to the approved list of implementations 261262 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z29370" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z8", "Z17K2": "Z29370K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "function to apply" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "aplikovaná funkce" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z1", "Z17K2": "Z29370K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "common first argument" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "společný první argument" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z1", "Z17K2": "Z29370K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "common second argument" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "společný druhý argument" } ] } }, { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z29370K4", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "list of third arguments" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "seznam třetích argumentů" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z8K3": [ "Z20", "Z29371" ], "Z8K4": [ "Z14", "Z29372", "Z31101" ], "Z8K5": "Z29370" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "apply3 to a common 1st and 2nd arg and list of 3rd" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "aplikovat 3-funkci na společný 1. a 2. a seznam 3." } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "apply a three-parameter function to a common first and second arguments and a list of third arguments" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "Aplikuje funkci se třemi argumenty, přičemž pro první a druhý argument bere fixní dodané hodnoty, pro třetí bere hodnoty dodaného seznamu. Vrátí seznam výsledků těchto volání." } ] } } n8y4p58kz8gzlh6i8z9nn9f9ed6qoam 261264 261262 2026-03-27T17:31:19Z YoshiRulz 10156 Added Z32813 to the approved list of test cases 261264 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z29370" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z8", "Z17K2": "Z29370K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "function to apply" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "aplikovaná funkce" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z1", "Z17K2": "Z29370K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "common first argument" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "společný první argument" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z1", "Z17K2": "Z29370K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "common second argument" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "společný druhý argument" } ] } }, { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z29370K4", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "list of third arguments" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "seznam třetích argumentů" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z8K3": [ "Z20", "Z29371", "Z32813" ], "Z8K4": [ "Z14", "Z29372", "Z31101" ], "Z8K5": "Z29370" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "apply3 to a common 1st and 2nd arg and list of 3rd" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "aplikovat 3-funkci na společný 1. a 2. a seznam 3." } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "apply a three-parameter function to a common first and second arguments and a list of third arguments" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "Aplikuje funkci se třemi argumenty, přičemž pro první a druhý argument bere fixní dodané hodnoty, pro třetí bere hodnoty dodaného seznamu. Vrátí seznam výsledků těchto volání." } ] } } brepv2w6vpkf06hxla8htua6g1h81pw Template:Main page/News 10 68963 261393 259416 2026-03-28T06:42:30Z ChaoticVermillion 31127 updated news (did i do this right?) 261393 wikitext text/x-wiki <noinclude><languages /></noinclude> ; <translate><!--T:1--> Volunteer's Corners</translate> * <translate><!--T:2--> The next Volunteers' Corner will be at <tvar name="date-and-time"><bdi lang="en" dir="ltr">[https://zonestamp.toolforge.org/1776101400 17:30 UTC on 2026-04-13]</bdi></tvar> on <tvar name="platform"><bdi lang="en" dir="ltr">Google Meet</bdi></tvar> at <tvar name="link"><bdi lang="en" dir="ltr">[https://meet.google.com/xuy-njxh-rkw meet.google.com/xuy-njxh-rkw]</bdi></tvar>.</translate> * <translate><!--T:3--> The [[<tvar name="1">:c:File:Abstract Wikipedia Volunteer Corner 2026-03.webm</tvar>|most recent Volunteer's Corner]] is available on Commons</translate> ; <translate><!--T:4--> Recent status updates about Wikifunctions</translate> <!--Keep this to the most recent 5 entries--> * <translate><!--T:24--> <tvar name="1">{{Status updates|2026-03-26}}</tvar>: First few days of Abstract Wikipedia Beta; Status of Composition Language v2</translate> * <translate><!--T:23--> <tvar name="1">{{Status updates|2026-03-19}}</tvar>: Abstract Wikipedia in Beta</translate> * <translate><!--T:22--> <tvar name="1">{{Status updates|2026-03-11}}</tvar>: A new composition language</translate> * <translate><!--T:21--> <tvar name="1">{{Status updates|2026-03-06}}</tvar>: Citations and Copy and Paste</translate> * <translate><!--T:20--> <tvar name="1">{{Status updates|2026-02-26}}</tvar>: Graceful overrides and fallbacks</translate> [[Special:MyLanguage/Wikifunctions:Status updates|<span class="mw-ui-button mw-ui-constructive mw-ui-small"><translate><!--T:10--> More news</translate></span>]] qafh2o6pn25edhkg012qlijyrp6n1dw Z29843 0 69318 261190 260939 2026-03-27T12:07:35Z Sun8908 9804 do this first, change when there is a separate function for simplified/traditional chinese, i guess. 261190 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z29843" }, "Z2K2": { "Z1K1": "Z14294", "Z14294K1": [ "Z14293", { "Z1K1": "Z14293", "Z14293K1": "Z26707", "Z14293K2": [ "Z60", "Z1011" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z27219", "Z14293K2": [ "Z60", "Z1787" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z30397", "Z14293K2": [ "Z60", "Z1002" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z30484", "Z14293K2": [ "Z60", "Z1430" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z30514", "Z14293K2": [ "Z60", "Z1541" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z30534", "Z14293K2": [ "Z60", "Z1146" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z32152", "Z14293K2": [ "Z60", "Z1531" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z32193", "Z14293K2": [ "Z60", "Z1844", "Z1226" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z32219", "Z14293K2": [ "Z60", "Z1037", "Z1294", "Z1381" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z32287", "Z14293K2": [ "Z60", "Z1005" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z32371", "Z14293K2": [ "Z60", "Z1004", "Z1640" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z32442", "Z14293K2": [ "Z60", "Z1830" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z32739", "Z14293K2": [ "Z60", "Z1157", "Z1517" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z32788", "Z14293K2": [ "Z60", "Z1006", "Z1411", "Z1406", "Z1107", "Z1591", "Z1589", "Z1504", "Z1645", "Z1672" ] } ], "Z14294K2": "Z30397" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "config for state location using entity and class" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "konfigurace pro vyjádřit umístění Z26570" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "konfigurace pro funkci „vyjádřit umístění pomocí entity a třídy“" } ] } } idabkpf1px2des5trlt9045scbzyyxw 261394 261190 2026-03-28T06:45:26Z Sun8908 9804 re-add after connecting the implementation? 261394 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z29843" }, "Z2K2": { "Z1K1": "Z14294", "Z14294K1": [ "Z14293", { "Z1K1": "Z14293", "Z14293K1": "Z26707", "Z14293K2": [ "Z60", "Z1011" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z27219", "Z14293K2": [ "Z60", "Z1787" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z30397", "Z14293K2": [ "Z60", "Z1002" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z30484", "Z14293K2": [ "Z60", "Z1430" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z30514", "Z14293K2": [ "Z60", "Z1541" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z30534", "Z14293K2": [ "Z60", "Z1146" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z32152", "Z14293K2": [ "Z60", "Z1531" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z32193", "Z14293K2": [ "Z60", "Z1844", "Z1226" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z32219", "Z14293K2": [ "Z60", "Z1037", "Z1294", "Z1381" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z32287", "Z14293K2": [ "Z60", "Z1005" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z32371", "Z14293K2": [ "Z60", "Z1004", "Z1640" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z32442", "Z14293K2": [ "Z60", "Z1830" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z32739", "Z14293K2": [ "Z60", "Z1157", "Z1517" ] } ], "Z14294K2": "Z30397" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "config for state location using entity and class" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "konfigurace pro vyjádřit umístění Z26570" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "konfigurace pro funkci „vyjádřit umístění pomocí entity a třídy“" } ] } } mcte8birv70ijywor7yq0zn57zdp4uy 261426 261394 2026-03-28T08:32:23Z ChaoticVermillion 31127 added latin 261426 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z29843" }, "Z2K2": { "Z1K1": "Z14294", "Z14294K1": [ "Z14293", { "Z1K1": "Z14293", "Z14293K1": "Z26707", "Z14293K2": [ "Z60", "Z1011" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z27219", "Z14293K2": [ "Z60", "Z1787" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z30397", "Z14293K2": [ "Z60", "Z1002" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z30484", "Z14293K2": [ "Z60", "Z1430" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z30514", "Z14293K2": [ "Z60", "Z1541" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z30534", "Z14293K2": [ "Z60", "Z1146" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z32152", "Z14293K2": [ "Z60", "Z1531" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z32193", "Z14293K2": [ "Z60", "Z1844", "Z1226" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z32219", "Z14293K2": [ "Z60", "Z1037", "Z1294", "Z1381" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z32287", "Z14293K2": [ "Z60", "Z1005" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z32371", "Z14293K2": [ "Z60", "Z1004", "Z1640" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z32442", "Z14293K2": [ "Z60", "Z1830" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z32739", "Z14293K2": [ "Z60", "Z1157", "Z1517" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z32848", "Z14293K2": [ "Z60", "Z1403" ] } ], "Z14294K2": "Z30397" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "config for state location using entity and class" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "konfigurace pro vyjádřit umístění Z26570" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "konfigurace pro funkci „vyjádřit umístění pomocí entity a třídy“" } ] } } dcwbqtld231ko0g2vs81dx6a373a8c6 Z29957 0 69477 261219 238678 2026-03-27T14:03:39Z YoshiRulz 10156 Clarify en label 261219 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z29957" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6004", "Z17K2": "Z29957K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "lexeme form" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z11" }, "Z8K3": [ "Z20", "Z29960", "Z30330", "Z30331", "Z30340" ], "Z8K4": [ "Z14", "Z29959" ], "Z8K5": "Z29957" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "get IPA transcriptions of Lexeme Form" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 0m93uo1pjcli59u1iwn198nuucudzal Wikifunctions:Catalogue/HTML operations 4 69531 261455 259711 2026-03-28T10:43:25Z EJPPhilippines 9359 261455 wikitext text/x-wiki Functions that are directly related to [[Help:HTML_fragments|HTML fragments]]. ==Comparison and evaluation== * {{Z+|Z877}} * {{Z+|Z29045}} * {{Z+|Z29572}} ** {{Z+|Z29576}} ==Conversion== * {{Z+|Z27854}} * {{Z+|Z27861}} * {{Z+|Z27868}} * {{Z+|Z19384}} ==Transformation== * {{Z+|Z27849}} ** {{Z+|Z27926}} ** {{Z+|Z32149}} * {{Z+|Z27873}} * {{Z+|Z30058}} * {{Z+|Z31465}} ** {{Z+|Z32145}} * {{Z+|Z27878}} * {{Z+|Z27932}} * {{Z+|Z29052}} * {{Z+|Z28914}} * {{Z+|Z23293}} * {{Z+|Z29580}} * {{Z+|Z29582}} * {{Z+|Z31729}} * {{Z+|Z30954}} * {{Z+|Z32123}} ** {{Z+|Z32163}} * {{Z+|Z32179}} * {{Z+|Z32180}} ** {{Z+|Z32215}} * {{Z+|Z32234}} ==Creating and managing links== * {{Z+|Z30016}} * {{Z+|Z31697}} ** {{Z+|Z29588}} * {{Z+|Z28904}} ==Linguistic applications== * {{Z+|Z26333}} * {{Z+|Z29055}} * {{Z+|Z28602}} ** {{Z+|Z28928}} * {{Z+|Z29488}} **{{Z+|Z29557}} * {{Z+|Z29186}} ==References and citations== * {{Z+|Z31906}} * {{Z+|Z31917}} * {{Z+|Z31921}} * {{Z+|Z32053}} [[Category:Lists of functions]] h5fbmq9t2h44yklltafspbz71k0wmt2 Z30349 0 70137 261437 235210 2026-03-28T10:01:29Z Ainali 17 Added Z30356 to the approved list of implementations 261437 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z30349" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6005", "Z17K2": "Z30349K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "lexeme" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "leksem" } ] } } ], "Z8K2": "Z6", "Z8K3": [ "Z20", "Z30351", "Z30358", "Z30359", "Z30468" ], "Z8K4": [ "Z14", "Z30356" ], "Z8K5": "Z30349" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "correct Swedish indefinite article" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "en eller ett?" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "en or ett?" ] }, { "Z1K1": "Z31", "Z31K1": "Z1592", "Z31K2": [ "Z6", "ett eller en?" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Based on a word, returns whether \"en\" or \"ett\" should be the indefinite article." }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "Returnerar korrekt artikel baserat på leksemets kön." } ] } } mwefjnqdwc89lr1dhydest0b7ujt0m7 261461 261437 2026-03-28T10:53:47Z Ainali 17 261461 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z30349" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6005", "Z17K2": "Z30349K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "lexeme" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "lexem" } ] } } ], "Z8K2": "Z6", "Z8K3": [ "Z20", "Z30351", "Z30358", "Z30359", "Z30468" ], "Z8K4": [ "Z14", "Z30356" ], "Z8K5": "Z30349" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "correct Swedish indefinite article" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "en eller ett?" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "en or ett?" ] }, { "Z1K1": "Z31", "Z31K1": "Z1592", "Z31K2": [ "Z6", "ett eller en?" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Based on a word, returns whether \"en\" or \"ett\" should be the indefinite article." }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "Returnerar korrekt artikel baserat på lexemets kön." } ] } } egyg8vz4ay1byy3dw3vs37pk0d44tab Z30351 0 70140 261456 234336 2026-03-28T10:43:33Z Ainali 17 261456 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z30351" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z30349", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z30349", "Z30349K1": { "Z1K1": "Z7", "Z7K1": "Z6825", "Z6825K1": { "Z1K1": "Z6095", "Z6095K1": "L32379" } } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z866", "Z866K2": "en" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "hund -\u003E en" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 3ks9jyuiyv2g3xlbdmo61tq4zwfm4hk 261462 261456 2026-03-28T10:56:42Z Ainali 17 rv 261462 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z30351" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z30349", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z30349", "Z30349K1": { "Z1K1": "Z6095", "Z6095K1": "L32379" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z866", "Z866K2": "en" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "hund -\u003E en" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } sf2bc01p6c80uelft4z8niyz274cisd Z30353 0 70142 261438 235201 2026-03-28T10:05:16Z Ainali 17 261438 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z30353" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6005", "Z17K2": "Z30353K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "lexeme" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "leksem" } ] } } ], "Z8K2": "Z40", "Z8K3": [ "Z20", "Z30354", "Z30357" ], "Z8K4": [ "Z14", "Z30355" ], "Z8K5": "Z30353" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "is common gender lexeme?" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "är lexemet utrum?" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "is common?", "is common grammatical gendered lexeme?" ] }, { "Z1K1": "Z31", "Z31K1": "Z1592", "Z31K2": [ "Z6", "är utrum lexem?", "är lexem med utrum?" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } t6gcre7g6d56y18mil0yn7b1nf74gh5 261454 261438 2026-03-28T10:41:15Z Ainali 17 261454 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z30353" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6005", "Z17K2": "Z30353K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "lexeme" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "lexem" } ] } } ], "Z8K2": "Z40", "Z8K3": [ "Z20", "Z30354", "Z30357" ], "Z8K4": [ "Z14", "Z30355" ], "Z8K5": "Z30353" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "is common gender lexeme?" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "är lexemet utrum?" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "is common?", "is common grammatical gendered lexeme?" ] }, { "Z1K1": "Z31", "Z31K1": "Z1592", "Z31K2": [ "Z6", "är utrum lexem?", "är lexem med utrum?" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } guf2y559gewnn08rk562g7ldwzwf5av Z30355 0 70144 261441 235229 2026-03-28T10:15:55Z Ainali 17 261441 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z30355" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z30353", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z26676", "Z26676K1": { "Z1K1": "Z18", "Z18K1": "Z30353K1" }, "Z26676K2": { "Z1K1": "Z6091", "Z6091K1": "Q1305037" } }, "Z802K2": { "Z1K1": "Z40", "Z40K1": "Z41" }, "Z802K3": { "Z1K1": "Z40", "Z40K1": "Z42" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "is common lexeme, comp" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } t1pt18bztd24c4k0q7ln0ravchtwtpw 261445 261441 2026-03-28T10:29:10Z Ainali 17 revert, unnecessary 261445 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z30355" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z30353", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z26676", "Z26676K1": { "Z1K1": "Z18", "Z18K1": "Z30353K1" }, "Z26676K2": { "Z1K1": "Z6091", "Z6091K1": "" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "is common lexeme, comp" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } dhyknky8x0zgqtzmrobif57o0z4u76p 261446 261445 2026-03-28T10:29:54Z Ainali 17 got lost 261446 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z30355" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z30353", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z26676", "Z26676K1": { "Z1K1": "Z18", "Z18K1": "Z30353K1" }, "Z26676K2": { "Z1K1": "Z6091", "Z6091K1": "Q1305037" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "is common lexeme, comp" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 10swao8dhi5xube8mw9tck7s2na0iqx Z30356 0 70145 261459 235234 2026-03-28T10:48:22Z Ainali 17 261459 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z30356" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z30349", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z11542", "Z11542K1": { "Z1K1": "Z7", "Z7K1": "Z30353", "Z30353K1": { "Z1K1": "Z7", "Z7K1": "Z6825", "Z6825K1": { "Z1K1": "Z18", "Z18K1": "Z30349K1" } } }, "Z11542K2": "en", "Z11542K3": "ett" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": " correct Swedish indefinite article, comp" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } o10tqws6fpkev7augzbpcgmtc682u0f Z30357 0 70146 261453 235189 2026-03-28T10:40:29Z Ainali 17 261453 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z30357" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z30353", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z30353", "Z30353K1": { "Z1K1": "Z7", "Z7K1": "Z6825", "Z6825K1": { "Z1K1": "Z6095", "Z6095K1": "L32882" } } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z844", "Z844K2": { "Z1K1": "Z40", "Z40K1": "Z42" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "land,sv -\u003E Falskt" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "land, sv = false" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } cblggf0go2yqeutnl4dtksccpvmfys7 Wikifunctions:Catalogue/Wikidata operations/Item 4 70154 261484 234375 2026-03-28T11:29:59Z EJPPhilippines 9359 /* Wikidata item operations */ 261484 wikitext text/x-wiki == Wikidata item operations == * {{Z+|Z6801}} * {{Z+|Z19316}} * {{Z+|Z20041}} * {{Z+|Z23756}} ** {{Z+|Z22246}} * {{Z+|Z6821}} **{{Z+|Z6820}} **{{Z+|Z30120}} * {{Z+|Z30025}} ** {{Z+|Z29728}} ** {{Z+|Z29724}} * {{Z+|Z22220}} * {{Z+|Z29691}} ** {{Z+|Z29694}} * {{Z+|Z22853}} ** {{Z+|Z23753}} ** {{Z+|Z24102}} ** {{Z+|Z24139}} ** {{Z+|Z24114}} ** {{Z+|Z27899}} * {{Z+|Z23080}} * {{Z+|Z21580}} * {{Z+|Z6830}} ** {{Z+|Z23471}} ** {{Z+|Z27327}} * {{Z+|Z22696}} * {{Z+|Z23468}} * {{Z+|Z22978}} ** {{Z+|Z32290}} * {{Z+|Z23543}} ** {{Z+|Z29623}} ** {{Z+|Z29620}} * {{Z+|Z23136}} ** {{Z+|Z25792}} * {{Z+|Z23610}} ** {{Z+|Z23604}} ** {{Z+|Z23082}} * {{Z+|Z23737}} * {{Z+|Z28787}} * {{Z+|Z25601}} * {{Z+|Z28777}} * {{Z+|Z27506}} === Search for === * [[Special:Search/: "Z8K2 Z6001" OR "Z8K2 Z6091"|Functions returning an explicit Wikidata item object or reference]] ** [[Special:Search/: "Z8K2 Z1K1 Z7 Z7K1 Z881 Z881K1 Z6001" OR "Z8K2 Z1K1 Z7 Z7K1 Z881 Z881K1 Z6091"| or a list of them]] ** [[Special:Search/: "Z8K2 Z6001"OR "Z8K2 Z1K1 Z7 Z7K1 Z881 Z881K1 Z6001|or just a Wikidata item object or a list of them]] ** [[Special:Search/: "Z8K2 Z6091"|or just a Wikidata item reference]] *** [[Special:Search/: "Z8K2 Z1K1 Z7 Z7K1 Z881 Z881K1 Z6091|or a list of them]] * [[Special:Search/: "Z17K1 Z6001" OR "Z17K1 Z1K1 Z7 Z7K1 Z881 Z881K1 Z6001|Functions expecting an explicit Wikidata item object or a list of them]] * [[Special:Search/: "Z17K1 Z6091"|Functions expecting an explicit Wikidata item reference]] ** [[Special:Search/: "Z17K1 Z1K1 Z7 Z7K1 Z881 Z881K1 Z6091|or a list of them]] [[Category:Lists of functions]] [[Category:Wikidata]] 2rkkrzhvtk69dd9o3p59no5rgsivi18 Wikifunctions:Catalogue/Wikidata operations/Lexeme 4 70155 261485 234939 2026-03-28T11:32:39Z EJPPhilippines 9359 /* Lexeme reference operations */ 261485 wikitext text/x-wiki == Lexeme sense operations == *{{Z+|Z6826}} *{{Z+|Z6806}} *{{Z+|Z23112}} *{{Z+|Z23114}} *{{Z+|Z23116}} *{{Z+|Z23433}} **{{Z+|Z23489}} *{{Z+|Z21577}} *{{Z+|Z20673}} * {{Z+|Z27292}} * {{Z+|Z27340}} === Search for === * [[Special:Search/: "Z8K2 Z6006" OR "Z8K2 Z1K1 Z7 Z7K1 Z881 Z881K1 Z6006" OR "Z8K2 Z6096" OR "Z8K2 Z1K1 Z7 Z7K1 Z881 Z881K1 Z6096" OR "Z17K1 Z6006" OR "Z17K1 Z1K1 Z7 Z7K1 Z881 Z881K1 Z6006" OR "Z17K1 Z6096" OR "Z17K1 Z1K1 Z7 Z7K1 Z881 Z881K1 Z6096"|Functions expecting or returning an explicit Wikidata lexeme sense or reference, singly or in a list]] == Lexeme sense reference operations == *{{Z+|Z23127}} *{{Z+|Z23130}} == Lexeme form operations == * {{Z+|Z6824}} * {{Z+|Z6804}} * {{Z+|Z19271}} * {{Z+|Z22399}} * {{Z+|Z22396}} * {{Z+|Z22478}} * {{Z+|Z22483}} * {{Z+|Z23118}} * {{Z+|Z22638}} ** {{Z+|Z22487}} ** {{Z+|Z22556}} ** {{Z+|Z27499}} * {{Z+|Z22490}} === Search for === [[Special:Search/: "Z8K2 Z6004" OR "Z8K2 Z1K1 Z7 Z7K1 Z881 Z881K1 Z6004" OR "Z8K2 Z6094" OR "Z8K2 Z1K1 Z7 Z7K1 Z881 Z881K1 Z6094" OR "Z17K1 Z6004" OR "Z17K1 Z1K1 Z7 Z7K1 Z881 Z881K1 Z6004" OR "Z17K1 Z6094" OR "Z17K1 Z1K1 Z7 Z7K1 Z881 Z881K1 Z6094"|Functions expecting or returning an explicit Wikidata lexeme form object or reference, singly or in a list]] == Lexeme reference operations == *{{Z+|Z19285}} *{{Z+|Z6825}} **{{Z+|Z32373}} *{{Z+|Z19287}} *{{Z+|Z22249}} == Lexeme operations == === Lemma operations === *{{Z+|Z19293}} === Language operations === *{{Z+|Z19295}} *{{Z+|Z19276}} === Lexical category operations === *{{Z+|Z19298}} ==== Grammatical gender operations ==== *{{Z+|Z26676}} *{{Z+|Z21739}} *{{Z+|Z30349}} === Form operations === *{{Z+|Z19302}} *{{Z+|Z19232}} *{{Z+|Z19234}} *{{Z+|Z19241}} ** {{Z+|Z27410}} *{{Z+|Z19243}} *{{Z+|Z19252}} *{{Z+|Z19260}} *{{Z+|Z22559}} *{{Z+|Z19340}} === Sense operations === *{{Z+|Z19282}} *{{Z+|Z23486}} === Other operations === *{{Z+|Z19300}} *{{Z+|Z22696}} *{{Z+|Z19285}} === Search for === [[Special:Search/: "Z8K2 Z6005" OR "Z8K2 Z1K1 Z7 Z7K1 Z881 Z881K1 Z6005" OR "Z8K2 Z6095" OR "Z8K2 Z1K1 Z7 Z7K1 Z881 Z881K1 Z6095" OR "Z17K1 Z6005" OR "Z17K1 Z1K1 Z7 Z7K1 Z881 Z881K1 Z6005" OR "Z17K1 Z6095" OR "Z17K1 Z1K1 Z7 Z7K1 Z881 Z881K1 Z6095"|Functions expecting or returning an explicit Wikidata lexeme object or reference, singly or in a list]] * [[Special:Search/: "Z8K2 Z6005"|Functions returning an explicit Wikidata lexeme object]] ** [[Special:Search/: "Z8K2 Z1K1 Z7 Z7K1 Z881 Z881K1 Z6005|or a list of them]] * [[Special:Search/: "Z8K2 Z6095"|Functions returning an explicit Wikidata lexeme reference]] ** [[Special:Search/: "Z8K2 Z1K1 Z7 Z7K1 Z881 Z881K1 Z6095|or a list of them]] * [[Special:Search/: "Z17K1 Z6005"|Functions expecting an explicit Wikidata lexeme object]] ** [[Special:Search/: "Z17K1 Z1K1 Z7 Z7K1 Z881 Z881K1 Z6005|or a list of them]] * [[Special:Search/: "Z17K1 Z6095"|Functions expecting an explicit Wikidata lexeme reference]] ** [[Special:Search/: "Z17K1 Z1K1 Z7 Z7K1 Z881 Z881K1 Z6095|or a list of them]] [[Category:Lists of functions]] [[Category:Wikidata]] 89nh76t2dliznv9c83tx09y0cq5dxuj Talk:Z14326 1 71044 261227 236777 2026-03-27T14:38:51Z GrounderUK 50 /* Case-sensitivity */ 261227 wikitext text/x-wiki == Case-sensitivity == See [[Z30680]]/[[Z30681]]/[[Z30682]]. Wikimedia subdomains are necessarily all-lowercase, which I'm guessing is why Wikidata uses all-lowercase, and that was then copied for persistent [[Z60]]s here on Wikifunctions. But per that third test the canonical form is e.g. <code>sux-Latn</code>, <code>en-US</code>, and these should be considered equivalent to their all-lowercase counterparts. <br>From [https://www.rfc-editor.org/rfc/rfc5646#section-2.1.1 the spec]: <q>At all times, language tags and their subtags, including private use and extensions, are to be treated as case insensitive: there exist conventions for the capitalization of some of the subtags, but these MUST NOT be taken to carry meaning. [...] The format of subtags in the registry [which follows ISO standards 639-1, 3166-1, and 15924] is RECOMMENDED as the form to use in language tags.<q> <br>So my question is: Are the elements of [[Z60]]s semantically IETF language tags or Wikimedia/Wikidata language identifiers? {{Z|160}} doesn't seem to inspect <code>Z60K1</code> at all. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 02:16, 19 December 2025 (UTC) :All Validator functions currently fail and mostly never did anything anyway.--[[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 14:38, 27 March 2026 (UTC) at76vtfqo2lgfqsranfa4a1j8q5gezt 261235 261227 2026-03-27T15:17:41Z GrounderUK 50 /* Case-sensitivity */ Reply 261235 wikitext text/x-wiki == Case-sensitivity == See [[Z30680]]/[[Z30681]]/[[Z30682]]. Wikimedia subdomains are necessarily all-lowercase, which I'm guessing is why Wikidata uses all-lowercase, and that was then copied for persistent [[Z60]]s here on Wikifunctions. But per that third test the canonical form is e.g. <code>sux-Latn</code>, <code>en-US</code>, and these should be considered equivalent to their all-lowercase counterparts. <br>From [https://www.rfc-editor.org/rfc/rfc5646#section-2.1.1 the spec]: <q>At all times, language tags and their subtags, including private use and extensions, are to be treated as case insensitive: there exist conventions for the capitalization of some of the subtags, but these MUST NOT be taken to carry meaning. [...] The format of subtags in the registry [which follows ISO standards 639-1, 3166-1, and 15924] is RECOMMENDED as the form to use in language tags.<q> <br>So my question is: Are the elements of [[Z60]]s semantically IETF language tags or Wikimedia/Wikidata language identifiers? {{Z|160}} doesn't seem to inspect <code>Z60K1</code> at all. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 02:16, 19 December 2025 (UTC) :All Validator functions currently fail and mostly never did anything anyway.--[[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 14:38, 27 March 2026 (UTC) :The structure of language tags in persistent Z60s [[Special:Search/:"Z2K2 Z1K1 Z60 Z60K1"|appears to be strictly lowercase]]. For practical purposes, it is simpler to treat any string purporting to represent a language tag as lowercase since, outside of code, case-insensitive comparison and normalisation are relatively expensive compared to a simple call to {{Z|Z866}}, which is case sensitive. :This function stipulates “identical” tags, so implementations inherit that behaviour unless they explicitly normalise both tags before calling it. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 15:17, 27 March 2026 (UTC) ko6loew0mxxs4r5vj8s6sq1kfmiqwv3 261236 261235 2026-03-27T15:19:35Z GrounderUK 50 /* Case-sensitivity */ merge replies 261236 wikitext text/x-wiki == Case-sensitivity == See [[Z30680]]/[[Z30681]]/[[Z30682]]. Wikimedia subdomains are necessarily all-lowercase, which I'm guessing is why Wikidata uses all-lowercase, and that was then copied for persistent [[Z60]]s here on Wikifunctions. But per that third test the canonical form is e.g. <code>sux-Latn</code>, <code>en-US</code>, and these should be considered equivalent to their all-lowercase counterparts. <br>From [https://www.rfc-editor.org/rfc/rfc5646#section-2.1.1 the spec]: <q>At all times, language tags and their subtags, including private use and extensions, are to be treated as case insensitive: there exist conventions for the capitalization of some of the subtags, but these MUST NOT be taken to carry meaning. [...] The format of subtags in the registry [which follows ISO standards 639-1, 3166-1, and 15924] is RECOMMENDED as the form to use in language tags.<q> <br>So my question is: Are the elements of [[Z60]]s semantically IETF language tags or Wikimedia/Wikidata language identifiers? {{Z|160}} doesn't seem to inspect <code>Z60K1</code> at all. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 02:16, 19 December 2025 (UTC) :All Validator functions currently fail and mostly never did anything anyway. :The structure of language tags in persistent Z60s [[Special:Search/:"Z2K2 Z1K1 Z60 Z60K1"|appears to be strictly lowercase]]. For practical purposes, it is simpler to treat any string purporting to represent a language tag as lowercase since, outside of code, case-insensitive comparison and normalisation are relatively expensive compared to a simple call to {{Z|Z866}}, which is case sensitive. :This function stipulates “identical” tags, so implementations inherit that behaviour unless they explicitly normalise both tags before calling it. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 15:17, 27 March 2026 (UTC) m30acu26sqsaktbn9gbpkemj16idr58 261274 261236 2026-03-27T18:21:24Z Jdforrester (WMF) 4 /* Case-sensitivity */ Reply 261274 wikitext text/x-wiki == Case-sensitivity == See [[Z30680]]/[[Z30681]]/[[Z30682]]. Wikimedia subdomains are necessarily all-lowercase, which I'm guessing is why Wikidata uses all-lowercase, and that was then copied for persistent [[Z60]]s here on Wikifunctions. But per that third test the canonical form is e.g. <code>sux-Latn</code>, <code>en-US</code>, and these should be considered equivalent to their all-lowercase counterparts. <br>From [https://www.rfc-editor.org/rfc/rfc5646#section-2.1.1 the spec]: <q>At all times, language tags and their subtags, including private use and extensions, are to be treated as case insensitive: there exist conventions for the capitalization of some of the subtags, but these MUST NOT be taken to carry meaning. [...] The format of subtags in the registry [which follows ISO standards 639-1, 3166-1, and 15924] is RECOMMENDED as the form to use in language tags.<q> <br>So my question is: Are the elements of [[Z60]]s semantically IETF language tags or Wikimedia/Wikidata language identifiers? {{Z|160}} doesn't seem to inspect <code>Z60K1</code> at all. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 02:16, 19 December 2025 (UTC) :All Validator functions currently fail and mostly never did anything anyway. :The structure of language tags in persistent Z60s [[Special:Search/:"Z2K2 Z1K1 Z60 Z60K1"|appears to be strictly lowercase]]. For practical purposes, it is simpler to treat any string purporting to represent a language tag as lowercase since, outside of code, case-insensitive comparison and normalisation are relatively expensive compared to a simple call to {{Z|Z866}}, which is case sensitive. :This function stipulates “identical” tags, so implementations inherit that behaviour unless they explicitly normalise both tags before calling it. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 15:17, 27 March 2026 (UTC) :<blockquote>Are the elements of [[Z60|Z60s]] semantically IETF language tags or Wikimedia/Wikidata language identifiers?</blockquote> :Neither, but closer to the former than the latter. They exist distinctly from Wikimedia/Wikidata language identifiers almost entirely so that the Abstract Wikipedia / Wikifunctions communities can choose to support languages, dialects, and variants to an arbitrary level without needing the rest of the Wikimedia movement to agree that this is a language they wish to support (''e.g.'' en-IN, or de-AT, or as has been suggested something like en-US-x-Grade5). :Note that we don't actively normalise Z60K1 values (or Z60K2 ones, for that matter) on the back-end when evaluating requests. We could do so, but every additional line of code in hot paths like that would need consideration. It is indeed safest to assume that we should always use lowercase. [[User:Jdforrester (WMF)|Jdforrester (WMF)]] ([[User talk:Jdforrester (WMF)|talk]]) 18:21, 27 March 2026 (UTC) p56rhu7ztf2dwus2t39sxonx21lyegn Z31098 0 72680 261260 242213 2026-03-27T17:22:40Z YoshiRulz 10156 Added Z32812 to the approved list of test cases 261260 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z31098" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z8", "Z17K2": "Z31098K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "function" } ] } }, { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z31098K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "list of 1st arguments" } ] } }, { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z31098K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "list of 2nd arguments" } ] } }, { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z31098K4", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "list of 3rd arguments" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z8K3": [ "Z20", "Z31099", "Z32812" ], "Z8K4": [ "Z14", "Z31100" ], "Z8K5": "Z31098" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "apply three-parameter function pairwise to 3 lists" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } pbh99hpelh9je5onwc27ad0l4j6dihp Z31738 0 77141 261440 260137 2026-03-28T10:13:19Z Redmin 52094 261440 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z31738" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z31729", "Z14K3": { "Z1K1": "Z16", "Z16K1": "Z610", "Z16K2": "def Z31729(Z31729K1):\n from re import search, sub, finditer, IGNORECASE\n from html.parser import HTMLParser\n content = Z31729K1.Z89K1.strip()\n \n def _has_root_centering(attrs_dict):\n \t# Check root element's attributes for centering indicators using dict\n if not attrs_dict:\n return False\n # Check align attribute\n align = attrs_dict.get('align', '')\n if align and align.lower() == 'center':\n return True\n class_attr = attrs_dict.get('class', '')\n # Check if the 'center' class is present, which is used on many Wikimedia wikis\n if class_attr and 'center' in class_attr.lower().split():\n return True\n style = attrs_dict.get('style', '')\n if style:\n style_clean = sub(r'\\s*:\\s*', ':', style)\n style_clean = sub(r'\\s*;\\s*', ';', style_clean)\n if search(r'text-align:center[;\\s]|text-align:center$', style_clean.lower()):\n return True\n return False\n \n def _has_margin_auto_centering(attrs_dict):\n \t# For tags that need margin:auto, check if they already have centering\n if not attrs_dict:\n return False\n align = attrs_dict.get('align', '')\n if align and align.lower() == 'center':\n return True\n class_attr = attrs_dict.get('class', '')\n if class_attr and 'center' in class_attr.lower().split():\n return True\n style = attrs_dict.get('style', '')\n if style:\n style_lower = style.lower()\n # Check for margin:auto\n if 'margin:auto' in style_lower or 'margin: 0 auto' in style_lower:\n return True\n return False\n \n def _parse_style(style_text):\n styles = {}\n for decl in style_text.split(';'):\n if ':' in decl:\n prop, val = decl.split(':', 1)\n prop = prop.strip()\n val = val.strip()\n if prop and val:\n styles[prop] = val\n return styles\n \n def _build_style_string(styles_dict):\n if not styles_dict:\n return ''\n return '; '.join(f\"{k}: {v}\" for k, v in styles_dict.items()) + ';'\n \n def _ensure_center_in_style(style_text):\n if not style_text:\n return 'text-align: center;'\n # Remove any existing text-align rule\n style_text = sub(r'text-align\\s*:\\s*[^;]+;?', '', style_text, flags=IGNORECASE)\n out = f'{style_text}; text-align: center;'\n if out.startswith('; '):\n out = out.replace('; ', '', 1)\n return out\n \n def _parse_attributes(attrs_text):\n attrs = {}\n if not attrs_text:\n return attrs\n pattern = r'([a-zA-Z][a-zA-Z0-9_-]*)\\s*=\\s*([\\'\"])(.*?)\\2'\n for m in finditer(pattern, attrs_text, IGNORECASE):\n name, _, value = m.groups()\n attrs[name] = value.strip()\n remaining = attrs_text\n for m in finditer(pattern, attrs_text, IGNORECASE):\n remaining = remaining.replace(m.group(0), '')\n # Look for standalone attributes\n bool_pattern = r'\\b([a-zA-Z][a-zA-Z0-9_-]*)\\b'\n for m in finditer(bool_pattern, remaining):\n name = m.group(1)\n if name not in attrs:\n attrs[name] = None\n return attrs\n \n def _build_attributes_string(attrs_dict):\n parts = []\n for name, value in attrs_dict.items():\n if value is None:\n parts.append(name)\n else:\n \t# Use double quotes, escape any existing double quotes\n escaped = value.replace('\"', '\u0026quot;')\n parts.append(f'{name}=\"{escaped}\"')\n return ' '.join(parts)\n \n def _needs_margin_auto(tag):\n \t# These elements are not centered by text-align rules.\n return tag.lower() in ('table', 'hr', 'img', 'object', 'canvas', 'iframe')\n \n def _center_element(tag, attrs_dict):\n if _needs_margin_auto(tag):\n styles = _parse_style(attrs_dict.get('style', ''))\n styles['margin'] = 'auto'\n attrs_dict['style'] = _build_style_string(styles)\n else:\n style_text = attrs_dict.get('style', '')\n attrs_dict['style'] = _ensure_center_in_style(style_text)\n return attrs_dict\n \n class MarginAutoAdder(HTMLParser):\n def __init__(self):\n super().__init__()\n self.output = []\n \n def handle_starttag(self, tag, attrs):\n attrs_dict = dict(attrs)\n if _needs_margin_auto(tag) and not _has_margin_auto_centering(attrs_dict):\n styles = _parse_style(attrs_dict.get('style', ''))\n styles['margin'] = 'auto'\n attrs_dict['style'] = _build_style_string(styles)\n attr_str = _build_attributes_string(attrs_dict)\n self.output.append(f'\u003C{tag}{\" \" + attr_str if attr_str else \"\"}\u003E')\n \n def handle_endtag(self, tag):\n self.output.append(f'\u003C/{tag}\u003E')\n \n def handle_data(self, data):\n self.output.append(data)\n \n def handle_startendtag(self, tag, attrs):\n attrs_dict = dict(attrs)\n if _needs_margin_auto(tag) and not _has_margin_auto_centering(attrs_dict):\n styles = _parse_style(attrs_dict.get('style', ''))\n styles['margin'] = 'auto'\n attrs_dict['style'] = _build_style_string(styles)\n attr_str = _build_attributes_string(attrs_dict)\n self.output.append(f'\u003C{tag}{\" \" + attr_str if attr_str else \"\"} /\u003E')\n \n class RootFinder(HTMLParser):\n def __init__(self):\n super().__init__()\n self.root_tag = None\n self.root_attrs = {}\n self.inner_html = None\n self.depth = 0\n self.collect = False\n self.collected_parts = []\n self.is_single_root = True\n self.seen_tags = set()\n self.self_closed = False\n def handle_starttag(self, tag, attrs):\n self.depth += 1\n if self.depth == 1:\n self.root_tag = tag\n self.root_attrs = dict(attrs)\n self.collect = True\n self.seen_tags.add(tag)\n elif self.collect:\n attr_dict = dict(attrs)\n attr_str = _build_attributes_string(attr_dict)\n self.collected_parts.append(f'\u003C{tag}{\" \" + attr_str if attr_str else \"\"}\u003E')\n \n def handle_endtag(self, tag):\n self.depth -= 1\n if self.depth == 0 and tag == self.root_tag:\n self.inner_html = ''.join(self.collected_parts)\n self.collect = False\n elif self.collect:\n self.collected_parts.append(f'\u003C/{tag}\u003E')\n \n def handle_data(self, data):\n if self.collect:\n self.collected_parts.append(data)\n \n def handle_startendtag(self, tag, attrs):\n if self.depth == 0 and self.root_tag is None:\n self.root_tag = tag\n self.root_attrs = dict(attrs)\n self.inner_html = ''\n self.seen_tags.add(tag)\n self.self_closed = True\n elif self.collect:\n attr_dict = dict(attrs)\n attr_str = _build_attributes_string(attr_dict)\n self.collected_parts.append(f'\u003C{tag}{\" \" + attr_str if attr_str else \"\"} /\u003E')\n \n hr_pattern = r'^\u003Chr(\\s+[^\u003E]*?)?/?\u003E$'\n if match(hr_pattern, content, IGNORECASE):\n hr_match = match(r'^\u003Chr(\\s+[^\u003E]*?)?/?\u003E$', content, IGNORECASE)\n attrs_text = hr_match.group(1) or ''\n attrs = _parse_attributes(attrs_text)\n styles = _parse_style(attrs.get('style', ''))\n styles['margin'] = 'auto'\n attrs['style'] = _build_style_string(styles)\n attr_str = _build_attributes_string(attrs)\n out = f'\u003Chr{(\" \" + attr_str) if attr_str else \"\"} /\u003E'\n return ZObject({\"Z1K1\": \"Z9\", \"Z9K1\": \"Z89\"}, Z89K1=out)\n \n finder = RootFinder()\n finder.feed(content)\n finder.close()\n\n if finder.is_single_root and finder.root_tag and finder.inner_html is not None:\n \t# First, process the inner HTML to add margin:auto to special tags\n inner_processed = finder.inner_html\n if inner_processed.strip():\n parser = MarginAutoAdder()\n parser.feed(inner_processed)\n parser.close()\n inner_processed = ''.join(parser.output)\n\n # Then, handle the root element\n root_attrs = finder.root_attrs.copy()\n if not _has_root_centering(root_attrs):\n root_attrs = _center_element(finder.root_tag, root_attrs)\n attr_str = _build_attributes_string(root_attrs)\n \n if finder.self_closed:\n result = f'\u003C{finder.root_tag}{\" \" + attr_str if attr_str else \"\"} /\u003E'\n else:\n result = f'\u003C{finder.root_tag}{\" \" + attr_str if attr_str else \"\"}\u003E{inner_processed}\u003C/{finder.root_tag}\u003E'\n \n return ZObject({\"Z1K1\": \"Z9\", \"Z9K1\": \"Z89\"}, Z89K1=result)\n \n return ZObject({\"Z1K1\": \"Z9\", \"Z9K1\": \"Z89\"}, Z89K1=content)" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "center HTML fragment, Python" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 6ofrjvvo001t3m9svcdkdcuo0utsui3 261442 261440 2026-03-28T10:18:08Z Redmin 52094 261442 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z31738" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z31729", "Z14K3": { "Z1K1": "Z16", "Z16K1": "Z610", "Z16K2": "def Z31729(Z31729K1):\n from re import search, sub, finditer, IGNORECASE\n from html.parser import HTMLParser\n content = Z31729K1.Z89K1.strip()\n \n def _has_root_centering(attrs_dict):\n # Check root element's attributes for centering indicators using dict\n if not attrs_dict:\n return False\n # Check align attribute\n align = attrs_dict.get('align', '')\n if align and align.lower() == 'center':\n return True\n class_attr = attrs_dict.get('class', '')\n # Check if the 'center' class is present, which is used on many Wikimedia wikis\n if class_attr and 'center' in class_attr.lower().split():\n return True\n style = attrs_dict.get('style', '')\n if style:\n style_clean = sub(r'\\s*:\\s*', ':', style)\n style_clean = sub(r'\\s*;\\s*', ';', style_clean)\n if search(r'text-align:center[;\\s]|text-align:center$', style_clean.lower()):\n return True\n return False\n \n def _has_margin_auto_centering(attrs_dict):\n # For tags that need margin:auto, check if they already have centering\n if not attrs_dict:\n return False\n align = attrs_dict.get('align', '')\n if align and align.lower() == 'center':\n return True\n class_attr = attrs_dict.get('class', '')\n if class_attr and 'center' in class_attr.lower().split():\n return True\n style = attrs_dict.get('style', '')\n if style:\n style_lower = style.lower()\n # Check for margin:auto\n if 'margin:auto' in style_lower or 'margin: 0 auto' in style_lower:\n return True\n return False\n \n def _parse_style(style_text):\n styles = {}\n for decl in style_text.split(';'):\n if ':' in decl:\n prop, val = decl.split(':', 1)\n prop = prop.strip()\n val = val.strip()\n if prop and val:\n styles[prop] = val\n return styles\n \n def _build_style_string(styles_dict):\n if not styles_dict:\n return ''\n return '; '.join(f\"{k}: {v}\" for k, v in styles_dict.items()) + ';'\n \n def _ensure_center_in_style(style_text):\n if not style_text:\n return 'text-align: center;'\n # Remove any existing text-align rule\n style_text = sub(r'text-align\\s*:\\s*[^;]+;?', '', style_text, flags=IGNORECASE)\n out = f'{style_text}; text-align: center;'\n if out.startswith('; '):\n out = out.replace('; ', '', 1)\n return out\n \n def _parse_attributes(attrs_text):\n attrs = {}\n if not attrs_text:\n return attrs\n pattern = r'([a-zA-Z][a-zA-Z0-9_-]*)\\s*=\\s*([\\'\"])(.*?)\\2'\n for m in finditer(pattern, attrs_text, IGNORECASE):\n name, _, value = m.groups()\n attrs[name] = value.strip()\n remaining = attrs_text\n for m in finditer(pattern, attrs_text, IGNORECASE):\n remaining = remaining.replace(m.group(0), '')\n # Look for standalone attributes\n bool_pattern = r'\\b([a-zA-Z][a-zA-Z0-9_-]*)\\b'\n for m in finditer(bool_pattern, remaining):\n name = m.group(1)\n if name not in attrs:\n attrs[name] = None\n return attrs\n \n def _build_attributes_string(attrs_dict):\n parts = []\n for name, value in attrs_dict.items():\n if value is None:\n parts.append(name)\n else:\n # Use double quotes, escape any existing double quotes\n escaped = value.replace('\"', '\u0026quot;')\n parts.append(f'{name}=\"{escaped}\"')\n return ' '.join(parts)\n \n def _needs_margin_auto(tag):\n # These elements are not centered by text-align rules.\n return tag.lower() in ('table', 'hr', 'img', 'object', 'canvas', 'iframe')\n \n def _center_element(tag, attrs_dict):\n if _needs_margin_auto(tag):\n styles = _parse_style(attrs_dict.get('style', ''))\n styles['margin'] = 'auto'\n attrs_dict['style'] = _build_style_string(styles)\n else:\n style_text = attrs_dict.get('style', '')\n attrs_dict['style'] = _ensure_center_in_style(style_text)\n return attrs_dict\n \n class MarginAutoAdder(HTMLParser):\n def __init__(self):\n super().__init__()\n self.output = []\n \n def handle_starttag(self, tag, attrs):\n attrs_dict = dict(attrs)\n if _needs_margin_auto(tag) and not _has_margin_auto_centering(attrs_dict):\n styles = _parse_style(attrs_dict.get('style', ''))\n styles['margin'] = 'auto'\n attrs_dict['style'] = _build_style_string(styles)\n attr_str = _build_attributes_string(attrs_dict)\n self.output.append(f'\u003C{tag}{\" \" + attr_str if attr_str else \"\"}\u003E')\n \n def handle_endtag(self, tag):\n self.output.append(f'\u003C/{tag}\u003E')\n \n def handle_data(self, data):\n self.output.append(data)\n \n def handle_startendtag(self, tag, attrs):\n attrs_dict = dict(attrs)\n if _needs_margin_auto(tag) and not _has_margin_auto_centering(attrs_dict):\n styles = _parse_style(attrs_dict.get('style', ''))\n styles['margin'] = 'auto'\n attrs_dict['style'] = _build_style_string(styles)\n attr_str = _build_attributes_string(attrs_dict)\n self.output.append(f'\u003C{tag}{\" \" + attr_str if attr_str else \"\"} /\u003E')\n \n class RootFinder(HTMLParser):\n def __init__(self):\n super().__init__()\n self.root_tag = None\n self.root_attrs = {}\n self.inner_html = None\n self.depth = 0\n self.collect = False\n self.collected_parts = []\n self.is_single_root = True\n self.seen_tags = set()\n self.self_closed = False\n def handle_starttag(self, tag, attrs):\n self.depth += 1\n if self.depth == 1:\n self.root_tag = tag\n self.root_attrs = dict(attrs)\n self.collect = True\n self.seen_tags.add(tag)\n elif self.collect:\n attr_dict = dict(attrs)\n attr_str = _build_attributes_string(attr_dict)\n self.collected_parts.append(f'\u003C{tag}{\" \" + attr_str if attr_str else \"\"}\u003E')\n \n def handle_endtag(self, tag):\n self.depth -= 1\n if self.depth == 0 and tag == self.root_tag:\n self.inner_html = ''.join(self.collected_parts)\n self.collect = False\n elif self.collect:\n self.collected_parts.append(f'\u003C/{tag}\u003E')\n \n def handle_data(self, data):\n if self.collect:\n self.collected_parts.append(data)\n \n def handle_startendtag(self, tag, attrs):\n if self.depth == 0 and self.root_tag is None:\n self.root_tag = tag\n self.root_attrs = dict(attrs)\n self.inner_html = ''\n self.seen_tags.add(tag)\n self.self_closed = True\n elif self.collect:\n attr_dict = dict(attrs)\n attr_str = _build_attributes_string(attr_dict)\n self.collected_parts.append(f'\u003C{tag}{\" \" + attr_str if attr_str else \"\"} /\u003E')\n \n hr_pattern = r'^\u003Chr(\\s+[^\u003E]*?)?/?\u003E$'\n if match(hr_pattern, content, IGNORECASE):\n hr_match = match(r'^\u003Chr(\\s+[^\u003E]*?)?/?\u003E$', content, IGNORECASE)\n attrs_text = hr_match.group(1) or ''\n attrs = _parse_attributes(attrs_text)\n styles = _parse_style(attrs.get('style', ''))\n styles['margin'] = 'auto'\n attrs['style'] = _build_style_string(styles)\n attr_str = _build_attributes_string(attrs)\n out = f'\u003Chr{(\" \" + attr_str) if attr_str else \"\"} /\u003E'\n return ZObject({\"Z1K1\": \"Z9\", \"Z9K1\": \"Z89\"}, Z89K1=out)\n \n finder = RootFinder()\n finder.feed(content)\n finder.close()\n\n if finder.is_single_root and finder.root_tag and finder.inner_html is not None:\n # First, process the inner HTML to add margin:auto to special tags\n inner_processed = finder.inner_html\n if inner_processed.strip():\n parser = MarginAutoAdder()\n parser.feed(inner_processed)\n parser.close()\n inner_processed = ''.join(parser.output)\n\n # Then, handle the root element\n root_attrs = finder.root_attrs.copy()\n if not _has_root_centering(root_attrs):\n root_attrs = _center_element(finder.root_tag, root_attrs)\n attr_str = _build_attributes_string(root_attrs)\n \n if finder.self_closed:\n result = f'\u003C{finder.root_tag}{\" \" + attr_str if attr_str else \"\"} /\u003E'\n else:\n result = f'\u003C{finder.root_tag}{\" \" + attr_str if attr_str else \"\"}\u003E{inner_processed}\u003C/{finder.root_tag}\u003E'\n \n return ZObject({\"Z1K1\": \"Z9\", \"Z9K1\": \"Z89\"}, Z89K1=result)\n \n return ZObject({\"Z1K1\": \"Z9\", \"Z9K1\": \"Z89\"}, Z89K1=content)" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "center HTML fragment, Python" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 5b04e76xiqcmurju537toygnfoh6jmq 261443 261442 2026-03-28T10:19:44Z Redmin 52094 261443 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z31738" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z31729", "Z14K3": { "Z1K1": "Z16", "Z16K1": "Z610", "Z16K2": "def Z31729(Z31729K1):\n from re import match, search, sub, finditer, IGNORECASE\n from html.parser import HTMLParser\n content = Z31729K1.Z89K1.strip()\n \n def _has_root_centering(attrs_dict):\n # Check root element's attributes for centering indicators using dict\n if not attrs_dict:\n return False\n # Check align attribute\n align = attrs_dict.get('align', '')\n if align and align.lower() == 'center':\n return True\n class_attr = attrs_dict.get('class', '')\n # Check if the 'center' class is present, which is used on many Wikimedia wikis\n if class_attr and 'center' in class_attr.lower().split():\n return True\n style = attrs_dict.get('style', '')\n if style:\n style_clean = sub(r'\\s*:\\s*', ':', style)\n style_clean = sub(r'\\s*;\\s*', ';', style_clean)\n if search(r'text-align:center[;\\s]|text-align:center$', style_clean.lower()):\n return True\n return False\n \n def _has_margin_auto_centering(attrs_dict):\n # For tags that need margin:auto, check if they already have centering\n if not attrs_dict:\n return False\n align = attrs_dict.get('align', '')\n if align and align.lower() == 'center':\n return True\n class_attr = attrs_dict.get('class', '')\n if class_attr and 'center' in class_attr.lower().split():\n return True\n style = attrs_dict.get('style', '')\n if style:\n style_lower = style.lower()\n # Check for margin:auto\n if 'margin:auto' in style_lower or 'margin: 0 auto' in style_lower:\n return True\n return False\n \n def _parse_style(style_text):\n styles = {}\n for decl in style_text.split(';'):\n if ':' in decl:\n prop, val = decl.split(':', 1)\n prop = prop.strip()\n val = val.strip()\n if prop and val:\n styles[prop] = val\n return styles\n \n def _build_style_string(styles_dict):\n if not styles_dict:\n return ''\n return '; '.join(f\"{k}: {v}\" for k, v in styles_dict.items()) + ';'\n \n def _ensure_center_in_style(style_text):\n if not style_text:\n return 'text-align: center;'\n # Remove any existing text-align rule\n style_text = sub(r'text-align\\s*:\\s*[^;]+;?', '', style_text, flags=IGNORECASE)\n out = f'{style_text}; text-align: center;'\n if out.startswith('; '):\n out = out.replace('; ', '', 1)\n return out\n \n def _parse_attributes(attrs_text):\n attrs = {}\n if not attrs_text:\n return attrs\n pattern = r'([a-zA-Z][a-zA-Z0-9_-]*)\\s*=\\s*([\\'\"])(.*?)\\2'\n for m in finditer(pattern, attrs_text, IGNORECASE):\n name, _, value = m.groups()\n attrs[name] = value.strip()\n remaining = attrs_text\n for m in finditer(pattern, attrs_text, IGNORECASE):\n remaining = remaining.replace(m.group(0), '')\n # Look for standalone attributes\n bool_pattern = r'\\b([a-zA-Z][a-zA-Z0-9_-]*)\\b'\n for m in finditer(bool_pattern, remaining):\n name = m.group(1)\n if name not in attrs:\n attrs[name] = None\n return attrs\n \n def _build_attributes_string(attrs_dict):\n parts = []\n for name, value in attrs_dict.items():\n if value is None:\n parts.append(name)\n else:\n # Use double quotes, escape any existing double quotes\n escaped = value.replace('\"', '\u0026quot;')\n parts.append(f'{name}=\"{escaped}\"')\n return ' '.join(parts)\n \n def _needs_margin_auto(tag):\n # These elements are not centered by text-align rules.\n return tag.lower() in ('table', 'hr', 'img', 'object', 'canvas', 'iframe')\n \n def _center_element(tag, attrs_dict):\n if _needs_margin_auto(tag):\n styles = _parse_style(attrs_dict.get('style', ''))\n styles['margin'] = 'auto'\n attrs_dict['style'] = _build_style_string(styles)\n else:\n style_text = attrs_dict.get('style', '')\n attrs_dict['style'] = _ensure_center_in_style(style_text)\n return attrs_dict\n \n class MarginAutoAdder(HTMLParser):\n def __init__(self):\n super().__init__()\n self.output = []\n \n def handle_starttag(self, tag, attrs):\n attrs_dict = dict(attrs)\n if _needs_margin_auto(tag) and not _has_margin_auto_centering(attrs_dict):\n styles = _parse_style(attrs_dict.get('style', ''))\n styles['margin'] = 'auto'\n attrs_dict['style'] = _build_style_string(styles)\n attr_str = _build_attributes_string(attrs_dict)\n self.output.append(f'\u003C{tag}{\" \" + attr_str if attr_str else \"\"}\u003E')\n \n def handle_endtag(self, tag):\n self.output.append(f'\u003C/{tag}\u003E')\n \n def handle_data(self, data):\n self.output.append(data)\n \n def handle_startendtag(self, tag, attrs):\n attrs_dict = dict(attrs)\n if _needs_margin_auto(tag) and not _has_margin_auto_centering(attrs_dict):\n styles = _parse_style(attrs_dict.get('style', ''))\n styles['margin'] = 'auto'\n attrs_dict['style'] = _build_style_string(styles)\n attr_str = _build_attributes_string(attrs_dict)\n self.output.append(f'\u003C{tag}{\" \" + attr_str if attr_str else \"\"} /\u003E')\n \n class RootFinder(HTMLParser):\n def __init__(self):\n super().__init__()\n self.root_tag = None\n self.root_attrs = {}\n self.inner_html = None\n self.depth = 0\n self.collect = False\n self.collected_parts = []\n self.is_single_root = True\n self.seen_tags = set()\n self.self_closed = False\n def handle_starttag(self, tag, attrs):\n self.depth += 1\n if self.depth == 1:\n self.root_tag = tag\n self.root_attrs = dict(attrs)\n self.collect = True\n self.seen_tags.add(tag)\n elif self.collect:\n attr_dict = dict(attrs)\n attr_str = _build_attributes_string(attr_dict)\n self.collected_parts.append(f'\u003C{tag}{\" \" + attr_str if attr_str else \"\"}\u003E')\n \n def handle_endtag(self, tag):\n self.depth -= 1\n if self.depth == 0 and tag == self.root_tag:\n self.inner_html = ''.join(self.collected_parts)\n self.collect = False\n elif self.collect:\n self.collected_parts.append(f'\u003C/{tag}\u003E')\n \n def handle_data(self, data):\n if self.collect:\n self.collected_parts.append(data)\n \n def handle_startendtag(self, tag, attrs):\n if self.depth == 0 and self.root_tag is None:\n self.root_tag = tag\n self.root_attrs = dict(attrs)\n self.inner_html = ''\n self.seen_tags.add(tag)\n self.self_closed = True\n elif self.collect:\n attr_dict = dict(attrs)\n attr_str = _build_attributes_string(attr_dict)\n self.collected_parts.append(f'\u003C{tag}{\" \" + attr_str if attr_str else \"\"} /\u003E')\n \n hr_pattern = r'^\u003Chr(\\s+[^\u003E]*?)?/?\u003E$'\n if match(hr_pattern, content, IGNORECASE):\n hr_match = match(r'^\u003Chr(\\s+[^\u003E]*?)?/?\u003E$', content, IGNORECASE)\n attrs_text = hr_match.group(1) or ''\n attrs = _parse_attributes(attrs_text)\n styles = _parse_style(attrs.get('style', ''))\n styles['margin'] = 'auto'\n attrs['style'] = _build_style_string(styles)\n attr_str = _build_attributes_string(attrs)\n out = f'\u003Chr{(\" \" + attr_str) if attr_str else \"\"} /\u003E'\n return ZObject({\"Z1K1\": \"Z9\", \"Z9K1\": \"Z89\"}, Z89K1=out)\n \n finder = RootFinder()\n finder.feed(content)\n finder.close()\n\n if finder.is_single_root and finder.root_tag and finder.inner_html is not None:\n # First, process the inner HTML to add margin:auto to special tags\n inner_processed = finder.inner_html\n if inner_processed.strip():\n parser = MarginAutoAdder()\n parser.feed(inner_processed)\n parser.close()\n inner_processed = ''.join(parser.output)\n\n # Then, handle the root element\n root_attrs = finder.root_attrs.copy()\n if not _has_root_centering(root_attrs):\n root_attrs = _center_element(finder.root_tag, root_attrs)\n attr_str = _build_attributes_string(root_attrs)\n \n if finder.self_closed:\n result = f'\u003C{finder.root_tag}{\" \" + attr_str if attr_str else \"\"} /\u003E'\n else:\n result = f'\u003C{finder.root_tag}{\" \" + attr_str if attr_str else \"\"}\u003E{inner_processed}\u003C/{finder.root_tag}\u003E'\n \n return ZObject({\"Z1K1\": \"Z9\", \"Z9K1\": \"Z89\"}, Z89K1=result)\n \n return ZObject({\"Z1K1\": \"Z9\", \"Z9K1\": \"Z89\"}, Z89K1=content)" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "center HTML fragment, Python" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } ihl445cs98gdec5ffnxzbi87497nssa Z32011 0 77946 261434 259948 2026-03-28T09:55:18Z Redmin 52094 Fix format 261434 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32011" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z31729", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z31729", "Z31729K1": { "Z1K1": "Z89", "Z89K1": "\u003Cdiv class=\"table blah\"\u003E\n \t\u003Ctable\u003E\n\t\t\u003Ctr\u003E\u003Ctd\u003EData\u003C/td\u003E\u003C/tr\u003E\n\t\u003C/table\u003E\n\u003C/div\u003E" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z877", "Z877K2": { "Z1K1": "Z89", "Z89K1": "\u003Cdiv class=\"table blah\" style=\"text-align: center;\"\u003E\n\t\u003Ctable style=\"margin: auto;\"\u003E\n\t\t\u003Ctr\u003E\u003Ctd\u003EData\u003C/td\u003E\u003C/tr\u003E\n\t\u003C/table\u003E\n\u003C/div\u003E" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "center table within div" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } hr06f1c1xex4j70q9nrjqd6zox9k5zo 261436 261434 2026-03-28T09:59:05Z Redmin 52094 Fix format 261436 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32011" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z31729", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z31729", "Z31729K1": { "Z1K1": "Z89", "Z89K1": "\u003Cdiv class=\"table blah\"\u003E\n\t\u003Ctable\u003E\n\t\t\u003Ctr\u003E\u003Ctd\u003EData\u003C/td\u003E\u003C/tr\u003E\n\t\u003C/table\u003E\n\u003C/div\u003E" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z877", "Z877K2": { "Z1K1": "Z89", "Z89K1": "\u003Cdiv class=\"table blah\" style=\"text-align: center;\"\u003E\n\t\u003Ctable style=\"margin: auto;\"\u003E\n\t\t\u003Ctr\u003E\u003Ctd\u003EData\u003C/td\u003E\u003C/tr\u003E\n\t\u003C/table\u003E\n\u003C/div\u003E" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "center table within div" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } lhrrokeo997xiyzhpurtnoahk4qelof User:Amire80/wikifunctionsanalytics 2 78200 261329 260944 2026-03-27T21:40:27Z Amire80 113 /* revision table */ + bug link 261329 wikitext text/x-wiki This is the documentation for the '''wikifunctionsanalytics''' tool. The tool currently doesn't have much of a frontend (and maybe never will). It's just a database that can be queried through [https://quarry.wmcloud.org/query/103095 Quarry]. It includes some (hopefully) useful statistics about Wikifunctions that (probably) cannot be conveniently obtained by other means, such as special pages. The source code for building the database is available in [[gitlab:toolforge-repos/wikifunctions-analytics|Gitlab]], which is also where you can read the detailed explanation about the motivation to build it. This page documents the database schema and gives links to some useful example queries. You can also find some example queries in [https://gitlab.wikimedia.org/toolforge-repos/wikifunctions-analytics/-/blob/main/queries.sql?ref_type=heads the queries.sql file in the code repository]. Comments, patches, bug reports, etc. are obviously welcome. At the moment, the tool is static and gets the information from a dump, so it doesn't have data for the last few days. Perpaps it will be updated to include more recent data. == Connection == As of this writing, the database name that can be used in Quarry is <code>s57441__wikifunctionsanalytics_p</code>. == Tables == === edit_type table === This table is used as a simple list of all the possible edit types. {| class="wikitable" !column name !type !comment |- |edit_type |VARCHAR(70) |Edit type name. |} === programming_language table === This table is used as a simple list of all the possible programming languages. {| class="wikitable" !column name !type !comment |- |programming_language |VARCHAR(70) |Programming language name. |} === revision table === This table has a row for each non-deleted revision in the main namespace of Wikifunctions. {| class="wikitable" |+ !column name !type !comment |- |rev_id |BIGINT |Revision id. Identical to the revision ID in the wiki. |- |rev_timestamp |VARCHAR(20) |Timestamp in the fromat that the dump uses (not identical to the one used in live MediaWiki databases). Example: 2023-07-26T16:29:23Z |- |rev_parent |BIGINT |Parent revision id. (At the moment, the earliest revisions have rev_parent of 0 or NULL, although it's probably supposed to be always 0. See [[phab:T420974|bug T420974]].) |- |rev_comment |VARCHAR(500) |Edit summary. |- |rev_page |VARCHAR(20) |Page title (ZID). |- |rev_username |VARCHAR(600) |The account name of the user who made the edit. |- |rev_page_type_zid |VARCHAR(20) |The ZID of the page's type. Note that this is associated with the ''revision'', not the page; a page's type may change. |- |rev_page_type_name |VARCHAR(70) |The English name of the page's type. (Note: some obscure types maybe unrecognized. In these cases, it will have a ZID identical to what appears in rev_page_type_zid.) |- |rev_programming_language |VARCHAR(70) |For revisions of implementation pages: The English name of the programming language in which the implementation is written. Current possible values: * JavaScript * Python * Lua * Composition * Built in implementation * Unidentifiable implementation language * Unidentifiable code language (All these values can be seen in the [[User:Amire80/wikifunctionsanalytics#programming language table|programming_language table]]; [[quarry:query/103370|Quarry]].) It's supposed to be filled on all revisions of implementation pages. On pages of other types, it's supposed to be NULL. |- |rev_function |VARCHAR(20) |For revisions of test and implementation pages: The function with which the test or the implementation is associated (whether connected or not). On pages of other types, it's supposed to be NULL. |- |rev_connected_tests |INTEGER |For revisions of function pages: The number of connected tests. Can be zero. NULL on non-functions pages. (Non-connected tests are not counted at the moment, but it's planned for the future.) |- |rev_connected_implementations |INTEGER |For revisions of implementation pages: The number of connected implementation. Can be zero. NULL on non-functions pages. (Non-connected implementations are not counted at the moment, but it's planned for the future.) |} === input table === This table links function revisions to input types. Every Function has zero or more inputs. {| class="wikitable" !column name !type !comment |- |input_rev_id |BIGINT |Revision id, as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |input_position |INTEGER |The input's position in the function's signature, starting from 0. |- |input_type_zid |VARCHAR(20) |The input type's ZID. |} === output table === This table links function revisions to output types. Every Function has one output. {| class="wikitable" !column name !type !comment |- |input_rev_id |BIGINT |Revision id, as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |input_position |INTEGER |The input's position in the function's signature. |- |input_type_zid |VARCHAR(20) |The input type's ZID. |} === revision_edit_type table === This table links revisions to edit types. Every revision can have several edit types, but a combination of a revision and an edit type is supposed to be unique. At the moment, only Function, Implementation, and Test case pages have an edit type; analysis for pages of other types may be added in the future if there's demand. {| class="wikitable" !column name !type !comment |- |revision_edit_type_rev_id |BIGINT |Revision id, as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |revision_edit_type_edit_type |VARCHAR(70) |The edit type. The full list of types appears in the [[User:Amire80/wikifunctionsanalytics#edit type table|edit_type table]] ([[quarry:query/103369|Quarry]]). |- |revision_edit_type_natural_language |VARCHAR(70) |On edits of string values (labels, aliases, and descriptions), the English name of the natural language of the string. NULL on other edits. (Note 1: This is a language's ''English name'', not ZID or ISO 639 code. If there's demand, it can be easily changed. Note 2: Because of a bug, a few old edits have a value of "Empty language n" in this field. They are't supposed to appear in current versions as of 2026, and can probably be mostly ignored.) |} == Views == Views provide some stored convenience queries for easy common selections. They can be queried like tables. === earliest_revision_id view === This view has only the page titles (ZIDs) and the revision ids of the earliest versions of each page. For full information about the earliest revision, use the [[User:Amire80/wikifunctionsanalytics#earliest revision view|earliest_revision view]]. {| class="wikitable" !column name !type !comment |- |rev_page |VARCHAR(20) |Page title (ZID), as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |rev_id |BIGINT |Revision id, as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |} === earliest_revision view === This view has all the columns from the revision table, but only for earliest versions of each page. This may be useful, for example, when you need information about the pages' creators. The earliest version is derived from the lowest rev_id. For full information about all the columns, see [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. === latest_revision_id view === This view has only the page titles (ZIDs) and the revision ids of the latest versions of each page. For full information about the latest revision, use the [[User:Amire80/wikifunctionsanalytics#latest revision view|latest_revision view]]. {| class="wikitable" !column name !type !comment |- |rev_page |VARCHAR(20) |Page title (ZID), as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |rev_id |BIGINT |Revision id, as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |} === latest_revision view === This view has all the columns from the revision table, but only for latest versions of each page. This may be useful, for example, when you only need information about the current versions of the pages (current to the time of the dump). The latest version is derived from the highest rev_id. For full information about all the columns, see [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. === multitype_page view === This view shows pages whose type changed during their history (in February 2026, there's only one such page). This is useful for quickly finding these pages and for excluding them in other queries. {| class="wikitable" !column name !type !comment |- |rev_page |VARCHAR(20) |Page title (ZID), as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |count_types |BIGINT |The number of types that the page had throughout its history. |} === test_and_implementation view === This view shows all the function pages (latest versions only), with the total number of tests and implementations associated with them, as well as the number of ''connected'' tests and implementations. {| class="wikitable" !column name !type !comment |- |rev_page |VARCHAR(20) |Page title (ZID), as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |all_tests |INTEGER |The total number of tests associated with the function, including non-connected ones. |- |rev_connected_tests |INTEGER |The number of connected tests. Can be zero. |- |all_implementations |INTEGER |The total number of implementations associated with the function, including non-connected ones. |- |rev_connected_implementations |INTEGER |The number of connected implementation. |} == Example queries == If you find bugs in these queries, report them on the talk page. And of course, add your own! * [[quarry:query/103074|Wikifunctions whose output type is Z12/Multilingual text]] * [[quarry:query/103075|Wikifunctions that have an input whose type is Z12/Multilingual text]] * [[quarry:query/103103|Most prolific Wikifunctions main namespace editors]] * [[quarry:query/103095|Particular Wikifunctions user's edit types]] * [[quarry:query/103079|Wikifunctions actual edit types, ordered by count]] * [[quarry:query/103373|The most common Wikifunctions programming languages]] * [[quarry:query/103078|Count of significant Wikifunctions changes by month]] * [[quarry:query/103077|Wikifunctions signature change counts by user]] * [[quarry:query/103375|Wikifunctions that don't have any inputs defined]] * [[quarry:query/103376|Wikifunctions with the most connected tests]] * [[quarry:query/103377|Wikifunctions with the most connected implementations]] * [[quarry:query/103378|Wikifunctions implementation code changes per user]] * [[quarry:query/103379|Wikifunctions implementation pages with multiple programming languages]] * [[quarry:query/103380|Wikifunctions with the largest number of inputs]] * [[quarry:query/103390|A Wikifunctions' user most common programming languages]] * [[quarry:query/103391|The most frequent programmers in a Wikifunctions programming language]] * [[quarry:query/103397|Wikifunctions with counts of all implementations and tests]] * [[quarry:query/103406|Wikifunctions with no implementations and no tests]] * [[quarry:query/103437|Wikifunctions with apparently invalid connected test or implementation count]] (should ideally be zero results) * [[quarry:query/103687|Wikifunctions labels, aliases, and description changes by language]] jdlsxa2p4votm86pu9objry9016o7u1 261330 261329 2026-03-27T21:43:36Z Amire80 113 /* revision table */ + no text 261330 wikitext text/x-wiki This is the documentation for the '''wikifunctionsanalytics''' tool. The tool currently doesn't have much of a frontend (and maybe never will). It's just a database that can be queried through [https://quarry.wmcloud.org/query/103095 Quarry]. It includes some (hopefully) useful statistics about Wikifunctions that (probably) cannot be conveniently obtained by other means, such as special pages. The source code for building the database is available in [[gitlab:toolforge-repos/wikifunctions-analytics|Gitlab]], which is also where you can read the detailed explanation about the motivation to build it. This page documents the database schema and gives links to some useful example queries. You can also find some example queries in [https://gitlab.wikimedia.org/toolforge-repos/wikifunctions-analytics/-/blob/main/queries.sql?ref_type=heads the queries.sql file in the code repository]. Comments, patches, bug reports, etc. are obviously welcome. At the moment, the tool is static and gets the information from a dump, so it doesn't have data for the last few days. Perpaps it will be updated to include more recent data. == Connection == As of this writing, the database name that can be used in Quarry is <code>s57441__wikifunctionsanalytics_p</code>. == Tables == === edit_type table === This table is used as a simple list of all the possible edit types. {| class="wikitable" !column name !type !comment |- |edit_type |VARCHAR(70) |Edit type name. |} === programming_language table === This table is used as a simple list of all the possible programming languages. {| class="wikitable" !column name !type !comment |- |programming_language |VARCHAR(70) |Programming language name. |} === revision table === This table has a row for each non-deleted revision in the main namespace of Wikifunctions. At the moment, the full JSON text of each revision is not stored in the database because it takes a lot of space and makes queries slow, and from the experience so far, it has not been very useful for analytics. If there is demand for it, it can be added. {| class="wikitable" |+ !column name !type !comment |- |rev_id |BIGINT |Revision id. Identical to the revision ID in the wiki. |- |rev_timestamp |VARCHAR(20) |Timestamp in the fromat that the dump uses (not identical to the one used in live MediaWiki databases). Example: 2023-07-26T16:29:23Z |- |rev_parent |BIGINT |Parent revision id. (At the moment, the earliest revisions have rev_parent of 0 or NULL, although it's probably supposed to be always 0. See [[phab:T420974|bug T420974]].) |- |rev_comment |VARCHAR(500) |Edit summary. |- |rev_page |VARCHAR(20) |Page title (ZID). |- |rev_username |VARCHAR(600) |The account name of the user who made the edit. |- |rev_page_type_zid |VARCHAR(20) |The ZID of the page's type. Note that this is associated with the ''revision'', not the page; a page's type may change. |- |rev_page_type_name |VARCHAR(70) |The English name of the page's type. (Note: some obscure types maybe unrecognized. In these cases, it will have a ZID identical to what appears in rev_page_type_zid.) |- |rev_programming_language |VARCHAR(70) |For revisions of implementation pages: The English name of the programming language in which the implementation is written. Current possible values: * JavaScript * Python * Lua * Composition * Built in implementation * Unidentifiable implementation language * Unidentifiable code language (All these values can be seen in the [[User:Amire80/wikifunctionsanalytics#programming language table|programming_language table]]; [[quarry:query/103370|Quarry]].) It's supposed to be filled on all revisions of implementation pages. On pages of other types, it's supposed to be NULL. |- |rev_function |VARCHAR(20) |For revisions of test and implementation pages: The function with which the test or the implementation is associated (whether connected or not). On pages of other types, it's supposed to be NULL. |- |rev_connected_tests |INTEGER |For revisions of function pages: The number of connected tests. Can be zero. NULL on non-functions pages. (Non-connected tests are not counted at the moment, but it's planned for the future.) |- |rev_connected_implementations |INTEGER |For revisions of implementation pages: The number of connected implementation. Can be zero. NULL on non-functions pages. (Non-connected implementations are not counted at the moment, but it's planned for the future.) |} === input table === This table links function revisions to input types. Every Function has zero or more inputs. {| class="wikitable" !column name !type !comment |- |input_rev_id |BIGINT |Revision id, as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |input_position |INTEGER |The input's position in the function's signature, starting from 0. |- |input_type_zid |VARCHAR(20) |The input type's ZID. |} === output table === This table links function revisions to output types. Every Function has one output. {| class="wikitable" !column name !type !comment |- |input_rev_id |BIGINT |Revision id, as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |input_position |INTEGER |The input's position in the function's signature. |- |input_type_zid |VARCHAR(20) |The input type's ZID. |} === revision_edit_type table === This table links revisions to edit types. Every revision can have several edit types, but a combination of a revision and an edit type is supposed to be unique. At the moment, only Function, Implementation, and Test case pages have an edit type; analysis for pages of other types may be added in the future if there's demand. {| class="wikitable" !column name !type !comment |- |revision_edit_type_rev_id |BIGINT |Revision id, as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |revision_edit_type_edit_type |VARCHAR(70) |The edit type. The full list of types appears in the [[User:Amire80/wikifunctionsanalytics#edit type table|edit_type table]] ([[quarry:query/103369|Quarry]]). |- |revision_edit_type_natural_language |VARCHAR(70) |On edits of string values (labels, aliases, and descriptions), the English name of the natural language of the string. NULL on other edits. (Note 1: This is a language's ''English name'', not ZID or ISO 639 code. If there's demand, it can be easily changed. Note 2: Because of a bug, a few old edits have a value of "Empty language n" in this field. They are't supposed to appear in current versions as of 2026, and can probably be mostly ignored.) |} == Views == Views provide some stored convenience queries for easy common selections. They can be queried like tables. === earliest_revision_id view === This view has only the page titles (ZIDs) and the revision ids of the earliest versions of each page. For full information about the earliest revision, use the [[User:Amire80/wikifunctionsanalytics#earliest revision view|earliest_revision view]]. {| class="wikitable" !column name !type !comment |- |rev_page |VARCHAR(20) |Page title (ZID), as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |rev_id |BIGINT |Revision id, as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |} === earliest_revision view === This view has all the columns from the revision table, but only for earliest versions of each page. This may be useful, for example, when you need information about the pages' creators. The earliest version is derived from the lowest rev_id. For full information about all the columns, see [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. === latest_revision_id view === This view has only the page titles (ZIDs) and the revision ids of the latest versions of each page. For full information about the latest revision, use the [[User:Amire80/wikifunctionsanalytics#latest revision view|latest_revision view]]. {| class="wikitable" !column name !type !comment |- |rev_page |VARCHAR(20) |Page title (ZID), as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |rev_id |BIGINT |Revision id, as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |} === latest_revision view === This view has all the columns from the revision table, but only for latest versions of each page. This may be useful, for example, when you only need information about the current versions of the pages (current to the time of the dump). The latest version is derived from the highest rev_id. For full information about all the columns, see [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. === multitype_page view === This view shows pages whose type changed during their history (in February 2026, there's only one such page). This is useful for quickly finding these pages and for excluding them in other queries. {| class="wikitable" !column name !type !comment |- |rev_page |VARCHAR(20) |Page title (ZID), as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |count_types |BIGINT |The number of types that the page had throughout its history. |} === test_and_implementation view === This view shows all the function pages (latest versions only), with the total number of tests and implementations associated with them, as well as the number of ''connected'' tests and implementations. {| class="wikitable" !column name !type !comment |- |rev_page |VARCHAR(20) |Page title (ZID), as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |all_tests |INTEGER |The total number of tests associated with the function, including non-connected ones. |- |rev_connected_tests |INTEGER |The number of connected tests. Can be zero. |- |all_implementations |INTEGER |The total number of implementations associated with the function, including non-connected ones. |- |rev_connected_implementations |INTEGER |The number of connected implementation. |} == Example queries == If you find bugs in these queries, report them on the talk page. And of course, add your own! * [[quarry:query/103074|Wikifunctions whose output type is Z12/Multilingual text]] * [[quarry:query/103075|Wikifunctions that have an input whose type is Z12/Multilingual text]] * [[quarry:query/103103|Most prolific Wikifunctions main namespace editors]] * [[quarry:query/103095|Particular Wikifunctions user's edit types]] * [[quarry:query/103079|Wikifunctions actual edit types, ordered by count]] * [[quarry:query/103373|The most common Wikifunctions programming languages]] * [[quarry:query/103078|Count of significant Wikifunctions changes by month]] * [[quarry:query/103077|Wikifunctions signature change counts by user]] * [[quarry:query/103375|Wikifunctions that don't have any inputs defined]] * [[quarry:query/103376|Wikifunctions with the most connected tests]] * [[quarry:query/103377|Wikifunctions with the most connected implementations]] * [[quarry:query/103378|Wikifunctions implementation code changes per user]] * [[quarry:query/103379|Wikifunctions implementation pages with multiple programming languages]] * [[quarry:query/103380|Wikifunctions with the largest number of inputs]] * [[quarry:query/103390|A Wikifunctions' user most common programming languages]] * [[quarry:query/103391|The most frequent programmers in a Wikifunctions programming language]] * [[quarry:query/103397|Wikifunctions with counts of all implementations and tests]] * [[quarry:query/103406|Wikifunctions with no implementations and no tests]] * [[quarry:query/103437|Wikifunctions with apparently invalid connected test or implementation count]] (should ideally be zero results) * [[quarry:query/103687|Wikifunctions labels, aliases, and description changes by language]] de51jgr4px4pj8v4kfudh83frw1of5u 261331 261330 2026-03-27T21:44:05Z Amire80 113 /* revision table */ typo 261331 wikitext text/x-wiki This is the documentation for the '''wikifunctionsanalytics''' tool. The tool currently doesn't have much of a frontend (and maybe never will). It's just a database that can be queried through [https://quarry.wmcloud.org/query/103095 Quarry]. It includes some (hopefully) useful statistics about Wikifunctions that (probably) cannot be conveniently obtained by other means, such as special pages. The source code for building the database is available in [[gitlab:toolforge-repos/wikifunctions-analytics|Gitlab]], which is also where you can read the detailed explanation about the motivation to build it. This page documents the database schema and gives links to some useful example queries. You can also find some example queries in [https://gitlab.wikimedia.org/toolforge-repos/wikifunctions-analytics/-/blob/main/queries.sql?ref_type=heads the queries.sql file in the code repository]. Comments, patches, bug reports, etc. are obviously welcome. At the moment, the tool is static and gets the information from a dump, so it doesn't have data for the last few days. Perpaps it will be updated to include more recent data. == Connection == As of this writing, the database name that can be used in Quarry is <code>s57441__wikifunctionsanalytics_p</code>. == Tables == === edit_type table === This table is used as a simple list of all the possible edit types. {| class="wikitable" !column name !type !comment |- |edit_type |VARCHAR(70) |Edit type name. |} === programming_language table === This table is used as a simple list of all the possible programming languages. {| class="wikitable" !column name !type !comment |- |programming_language |VARCHAR(70) |Programming language name. |} === revision table === This table has a row for each non-deleted revision in the main namespace of Wikifunctions. At the moment, the full JSON text of each revision is not stored in the database because it takes a lot of space and makes queries slow, and from the experience so far, it has not been very useful for analytics. If there is demand for it, it can be added. {| class="wikitable" |+ !column name !type !comment |- |rev_id |BIGINT |Revision id. Identical to the revision ID in the wiki. |- |rev_timestamp |VARCHAR(20) |Timestamp in the fromat that the dump uses (not identical to the one used in live MediaWiki databases). Example: 2023-07-26T16:29:23Z |- |rev_parent |BIGINT |Parent revision id. (At the moment, the earliest revisions have rev_parent of 0 or NULL, although it's probably supposed to be always 0. See [[phab:T420974|bug T420974]].) |- |rev_comment |VARCHAR(500) |Edit summary. |- |rev_page |VARCHAR(20) |Page title (ZID). |- |rev_username |VARCHAR(600) |The account name of the user who made the edit. |- |rev_page_type_zid |VARCHAR(20) |The ZID of the page's type. Note that this is associated with the ''revision'', not the page; a page's type may change. |- |rev_page_type_name |VARCHAR(70) |The English name of the page's type. (Note: some obscure types may be unrecognized. In these cases, it will have a ZID identical to what appears in rev_page_type_zid.) |- |rev_programming_language |VARCHAR(70) |For revisions of implementation pages: The English name of the programming language in which the implementation is written. Current possible values: * JavaScript * Python * Lua * Composition * Built in implementation * Unidentifiable implementation language * Unidentifiable code language (All these values can be seen in the [[User:Amire80/wikifunctionsanalytics#programming language table|programming_language table]]; [[quarry:query/103370|Quarry]].) It's supposed to be filled on all revisions of implementation pages. On pages of other types, it's supposed to be NULL. |- |rev_function |VARCHAR(20) |For revisions of test and implementation pages: The function with which the test or the implementation is associated (whether connected or not). On pages of other types, it's supposed to be NULL. |- |rev_connected_tests |INTEGER |For revisions of function pages: The number of connected tests. Can be zero. NULL on non-functions pages. (Non-connected tests are not counted at the moment, but it's planned for the future.) |- |rev_connected_implementations |INTEGER |For revisions of implementation pages: The number of connected implementation. Can be zero. NULL on non-functions pages. (Non-connected implementations are not counted at the moment, but it's planned for the future.) |} === input table === This table links function revisions to input types. Every Function has zero or more inputs. {| class="wikitable" !column name !type !comment |- |input_rev_id |BIGINT |Revision id, as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |input_position |INTEGER |The input's position in the function's signature, starting from 0. |- |input_type_zid |VARCHAR(20) |The input type's ZID. |} === output table === This table links function revisions to output types. Every Function has one output. {| class="wikitable" !column name !type !comment |- |input_rev_id |BIGINT |Revision id, as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |input_position |INTEGER |The input's position in the function's signature. |- |input_type_zid |VARCHAR(20) |The input type's ZID. |} === revision_edit_type table === This table links revisions to edit types. Every revision can have several edit types, but a combination of a revision and an edit type is supposed to be unique. At the moment, only Function, Implementation, and Test case pages have an edit type; analysis for pages of other types may be added in the future if there's demand. {| class="wikitable" !column name !type !comment |- |revision_edit_type_rev_id |BIGINT |Revision id, as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |revision_edit_type_edit_type |VARCHAR(70) |The edit type. The full list of types appears in the [[User:Amire80/wikifunctionsanalytics#edit type table|edit_type table]] ([[quarry:query/103369|Quarry]]). |- |revision_edit_type_natural_language |VARCHAR(70) |On edits of string values (labels, aliases, and descriptions), the English name of the natural language of the string. NULL on other edits. (Note 1: This is a language's ''English name'', not ZID or ISO 639 code. If there's demand, it can be easily changed. Note 2: Because of a bug, a few old edits have a value of "Empty language n" in this field. They are't supposed to appear in current versions as of 2026, and can probably be mostly ignored.) |} == Views == Views provide some stored convenience queries for easy common selections. They can be queried like tables. === earliest_revision_id view === This view has only the page titles (ZIDs) and the revision ids of the earliest versions of each page. For full information about the earliest revision, use the [[User:Amire80/wikifunctionsanalytics#earliest revision view|earliest_revision view]]. {| class="wikitable" !column name !type !comment |- |rev_page |VARCHAR(20) |Page title (ZID), as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |rev_id |BIGINT |Revision id, as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |} === earliest_revision view === This view has all the columns from the revision table, but only for earliest versions of each page. This may be useful, for example, when you need information about the pages' creators. The earliest version is derived from the lowest rev_id. For full information about all the columns, see [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. === latest_revision_id view === This view has only the page titles (ZIDs) and the revision ids of the latest versions of each page. For full information about the latest revision, use the [[User:Amire80/wikifunctionsanalytics#latest revision view|latest_revision view]]. {| class="wikitable" !column name !type !comment |- |rev_page |VARCHAR(20) |Page title (ZID), as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |rev_id |BIGINT |Revision id, as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |} === latest_revision view === This view has all the columns from the revision table, but only for latest versions of each page. This may be useful, for example, when you only need information about the current versions of the pages (current to the time of the dump). The latest version is derived from the highest rev_id. For full information about all the columns, see [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. === multitype_page view === This view shows pages whose type changed during their history (in February 2026, there's only one such page). This is useful for quickly finding these pages and for excluding them in other queries. {| class="wikitable" !column name !type !comment |- |rev_page |VARCHAR(20) |Page title (ZID), as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |count_types |BIGINT |The number of types that the page had throughout its history. |} === test_and_implementation view === This view shows all the function pages (latest versions only), with the total number of tests and implementations associated with them, as well as the number of ''connected'' tests and implementations. {| class="wikitable" !column name !type !comment |- |rev_page |VARCHAR(20) |Page title (ZID), as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |all_tests |INTEGER |The total number of tests associated with the function, including non-connected ones. |- |rev_connected_tests |INTEGER |The number of connected tests. Can be zero. |- |all_implementations |INTEGER |The total number of implementations associated with the function, including non-connected ones. |- |rev_connected_implementations |INTEGER |The number of connected implementation. |} == Example queries == If you find bugs in these queries, report them on the talk page. And of course, add your own! * [[quarry:query/103074|Wikifunctions whose output type is Z12/Multilingual text]] * [[quarry:query/103075|Wikifunctions that have an input whose type is Z12/Multilingual text]] * [[quarry:query/103103|Most prolific Wikifunctions main namespace editors]] * [[quarry:query/103095|Particular Wikifunctions user's edit types]] * [[quarry:query/103079|Wikifunctions actual edit types, ordered by count]] * [[quarry:query/103373|The most common Wikifunctions programming languages]] * [[quarry:query/103078|Count of significant Wikifunctions changes by month]] * [[quarry:query/103077|Wikifunctions signature change counts by user]] * [[quarry:query/103375|Wikifunctions that don't have any inputs defined]] * [[quarry:query/103376|Wikifunctions with the most connected tests]] * [[quarry:query/103377|Wikifunctions with the most connected implementations]] * [[quarry:query/103378|Wikifunctions implementation code changes per user]] * [[quarry:query/103379|Wikifunctions implementation pages with multiple programming languages]] * [[quarry:query/103380|Wikifunctions with the largest number of inputs]] * [[quarry:query/103390|A Wikifunctions' user most common programming languages]] * [[quarry:query/103391|The most frequent programmers in a Wikifunctions programming language]] * [[quarry:query/103397|Wikifunctions with counts of all implementations and tests]] * [[quarry:query/103406|Wikifunctions with no implementations and no tests]] * [[quarry:query/103437|Wikifunctions with apparently invalid connected test or implementation count]] (should ideally be zero results) * [[quarry:query/103687|Wikifunctions labels, aliases, and description changes by language]] m7vmfja40n74yktxb5m8932lvzcavro 261332 261331 2026-03-27T21:46:08Z Amire80 113 minor fixes 261332 wikitext text/x-wiki This is the documentation for the '''wikifunctionsanalytics''' tool. The tool currently doesn't have much of a frontend (and maybe never will). It's just a database that can be queried through [https://quarry.wmcloud.org/query/103095 Quarry]. It includes some (hopefully) useful statistics about Wikifunctions that (probably) cannot be conveniently obtained by other means, such as special pages, APIs, etc. The source code for building the database is available in [[gitlab:toolforge-repos/wikifunctions-analytics|GitLab]], which is also where you can read the detailed explanation about the motivation to build it. This page documents the database schema and gives links to some useful example queries. You can also find some example queries in [https://gitlab.wikimedia.org/toolforge-repos/wikifunctions-analytics/-/blob/main/queries.sql?ref_type=heads the queries.sql file in the code repository]. Comments, patches, bug reports, etc. are obviously welcome. At the moment, the tool is static and gets the information from a dump, so it doesn't have data for the last few days. Perhaps it will be updated to include more recent data. == Connection == As of this writing, the database name that can be used in Quarry is <code>s57441__wikifunctionsanalytics_p</code>. == Tables == === edit_type table === This table is used as a simple list of all the possible edit types. {| class="wikitable" !column name !type !comment |- |edit_type |VARCHAR(70) |Edit type name. |} === programming_language table === This table is used as a simple list of all the possible programming languages. {| class="wikitable" !column name !type !comment |- |programming_language |VARCHAR(70) |Programming language name. |} === revision table === This table has a row for each non-deleted revision in the main namespace of Wikifunctions. At the moment, the full JSON text of each revision is not stored in the database because it takes a lot of space and makes queries slow, and from the experience so far, it has not been very useful for analytics. If there is demand for it, it can be added. {| class="wikitable" |+ !column name !type !comment |- |rev_id |BIGINT |Revision id. Identical to the revision ID in the wiki. |- |rev_timestamp |VARCHAR(20) |Timestamp in the fromat that the dump uses (not identical to the one used in live MediaWiki databases). Example: 2023-07-26T16:29:23Z |- |rev_parent |BIGINT |Parent revision id. (At the moment, the earliest revisions have rev_parent of 0 or NULL, although it's probably supposed to be always 0. See [[phab:T420974|bug T420974]].) |- |rev_comment |VARCHAR(500) |Edit summary. |- |rev_page |VARCHAR(20) |Page title (ZID). |- |rev_username |VARCHAR(600) |The account name of the user who made the edit. |- |rev_page_type_zid |VARCHAR(20) |The ZID of the page's type. Note that this is associated with the ''revision'', not the page; a page's type may change. |- |rev_page_type_name |VARCHAR(70) |The English name of the page's type. (Note: some obscure types may be unrecognized. In these cases, it will have a ZID identical to what appears in rev_page_type_zid.) |- |rev_programming_language |VARCHAR(70) |For revisions of implementation pages: The English name of the programming language in which the implementation is written. Current possible values: * JavaScript * Python * Lua * Composition * Built in implementation * Unidentifiable implementation language * Unidentifiable code language (All these values can be seen in the [[User:Amire80/wikifunctionsanalytics#programming language table|programming_language table]]; [[quarry:query/103370|Quarry]].) It's supposed to be filled on all revisions of implementation pages. On pages of other types, it's supposed to be NULL. |- |rev_function |VARCHAR(20) |For revisions of test and implementation pages: The function with which the test or the implementation is associated (whether connected or not). On pages of other types, it's supposed to be NULL. |- |rev_connected_tests |INTEGER |For revisions of function pages: The number of connected tests. Can be zero. NULL on non-functions pages. (Non-connected tests are not counted at the moment, but it's planned for the future.) |- |rev_connected_implementations |INTEGER |For revisions of implementation pages: The number of connected implementation. Can be zero. NULL on non-functions pages. (Non-connected implementations are not counted at the moment, but it's planned for the future.) |} === input table === This table links function revisions to input types. Every Function has zero or more inputs. {| class="wikitable" !column name !type !comment |- |input_rev_id |BIGINT |Revision id, as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |input_position |INTEGER |The input's position in the function's signature, starting from 0. |- |input_type_zid |VARCHAR(20) |The input type's ZID. |} === output table === This table links function revisions to output types. Every Function has one output. {| class="wikitable" !column name !type !comment |- |input_rev_id |BIGINT |Revision id, as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |input_position |INTEGER |The input's position in the function's signature. |- |input_type_zid |VARCHAR(20) |The input type's ZID. |} === revision_edit_type table === This table links revisions to edit types. Every revision can have several edit types, but a combination of a revision and an edit type is supposed to be unique. At the moment, only Function, Implementation, and Test case pages have an edit type; analysis for pages of other types may be added in the future if there's demand. {| class="wikitable" !column name !type !comment |- |revision_edit_type_rev_id |BIGINT |Revision id, as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |revision_edit_type_edit_type |VARCHAR(70) |The edit type. The full list of types appears in the [[User:Amire80/wikifunctionsanalytics#edit type table|edit_type table]] ([[quarry:query/103369|Quarry]]). |- |revision_edit_type_natural_language |VARCHAR(70) |On edits of string values (labels, aliases, and descriptions), the English name of the natural language of the string. NULL on other edits. (Note 1: This is a language's ''English name'', not ZID or ISO 639 code. If there's demand, it can be easily changed. Note 2: Because of a bug, a few old edits have a value of "Empty language n" in this field. They are't supposed to appear in current versions as of 2026, and can probably be mostly ignored.) |} == Views == Views provide some stored convenience queries for easy common selections. They can be queried like tables. === earliest_revision_id view === This view has only the page titles (ZIDs) and the revision ids of the earliest versions of each page. For full information about the earliest revision, use the [[User:Amire80/wikifunctionsanalytics#earliest revision view|earliest_revision view]]. {| class="wikitable" !column name !type !comment |- |rev_page |VARCHAR(20) |Page title (ZID), as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |rev_id |BIGINT |Revision id, as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |} === earliest_revision view === This view has all the columns from the revision table, but only for earliest versions of each page. This may be useful, for example, when you need information about the pages' creators. The earliest version is derived from the lowest rev_id. For full information about all the columns, see [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. === latest_revision_id view === This view has only the page titles (ZIDs) and the revision ids of the latest versions of each page. For full information about the latest revision, use the [[User:Amire80/wikifunctionsanalytics#latest revision view|latest_revision view]]. {| class="wikitable" !column name !type !comment |- |rev_page |VARCHAR(20) |Page title (ZID), as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |rev_id |BIGINT |Revision id, as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |} === latest_revision view === This view has all the columns from the revision table, but only for latest versions of each page. This may be useful, for example, when you only need information about the current versions of the pages (current to the time of the dump). The latest version is derived from the highest rev_id. For full information about all the columns, see [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. === multitype_page view === This view shows pages whose type changed during their history (in February 2026, there's only one such page). This is useful for quickly finding these pages and for excluding them in other queries. {| class="wikitable" !column name !type !comment |- |rev_page |VARCHAR(20) |Page title (ZID), as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |count_types |BIGINT |The number of types that the page had throughout its history. |} === test_and_implementation view === This view shows all the function pages (latest versions only), with the total number of tests and implementations associated with them, as well as the number of ''connected'' tests and implementations. {| class="wikitable" !column name !type !comment |- |rev_page |VARCHAR(20) |Page title (ZID), as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |all_tests |INTEGER |The total number of tests associated with the function, including non-connected ones. |- |rev_connected_tests |INTEGER |The number of connected tests. Can be zero. |- |all_implementations |INTEGER |The total number of implementations associated with the function, including non-connected ones. |- |rev_connected_implementations |INTEGER |The number of connected implementation. |} == Example queries == If you find bugs in these queries, report them on the talk page. And of course, add your own! * [[quarry:query/103074|Wikifunctions whose output type is Z12/Multilingual text]] * [[quarry:query/103075|Wikifunctions that have an input whose type is Z12/Multilingual text]] * [[quarry:query/103103|Most prolific Wikifunctions main namespace editors]] * [[quarry:query/103095|Particular Wikifunctions user's edit types]] * [[quarry:query/103079|Wikifunctions actual edit types, ordered by count]] * [[quarry:query/103373|The most common Wikifunctions programming languages]] * [[quarry:query/103078|Count of significant Wikifunctions changes by month]] * [[quarry:query/103077|Wikifunctions signature change counts by user]] * [[quarry:query/103375|Wikifunctions that don't have any inputs defined]] * [[quarry:query/103376|Wikifunctions with the most connected tests]] * [[quarry:query/103377|Wikifunctions with the most connected implementations]] * [[quarry:query/103378|Wikifunctions implementation code changes per user]] * [[quarry:query/103379|Wikifunctions implementation pages with multiple programming languages]] * [[quarry:query/103380|Wikifunctions with the largest number of inputs]] * [[quarry:query/103390|A Wikifunctions' user most common programming languages]] * [[quarry:query/103391|The most frequent programmers in a Wikifunctions programming language]] * [[quarry:query/103397|Wikifunctions with counts of all implementations and tests]] * [[quarry:query/103406|Wikifunctions with no implementations and no tests]] * [[quarry:query/103437|Wikifunctions with apparently invalid connected test or implementation count]] (should ideally be zero results) * [[quarry:query/103687|Wikifunctions labels, aliases, and description changes by language]] fem99ixiuvz18o9e4vxzjn6pmkrnam0 261333 261332 2026-03-27T21:46:40Z Amire80 113 fix link 261333 wikitext text/x-wiki This is the documentation for the '''wikifunctionsanalytics''' tool. The tool currently doesn't have much of a frontend (and maybe never will). It's just a database that can be queried through [[quarry:|Quarry]]. It includes some (hopefully) useful statistics about Wikifunctions that (probably) cannot be conveniently obtained by other means, such as special pages, APIs, etc. The source code for building the database is available in [[gitlab:toolforge-repos/wikifunctions-analytics|GitLab]], which is also where you can read the detailed explanation about the motivation to build it. This page documents the database schema and gives links to some useful example queries. You can also find some example queries in [https://gitlab.wikimedia.org/toolforge-repos/wikifunctions-analytics/-/blob/main/queries.sql?ref_type=heads the queries.sql file in the code repository]. Comments, patches, bug reports, etc. are obviously welcome. At the moment, the tool is static and gets the information from a dump, so it doesn't have data for the last few days. Perhaps it will be updated to include more recent data. == Connection == As of this writing, the database name that can be used in Quarry is <code>s57441__wikifunctionsanalytics_p</code>. == Tables == === edit_type table === This table is used as a simple list of all the possible edit types. {| class="wikitable" !column name !type !comment |- |edit_type |VARCHAR(70) |Edit type name. |} === programming_language table === This table is used as a simple list of all the possible programming languages. {| class="wikitable" !column name !type !comment |- |programming_language |VARCHAR(70) |Programming language name. |} === revision table === This table has a row for each non-deleted revision in the main namespace of Wikifunctions. At the moment, the full JSON text of each revision is not stored in the database because it takes a lot of space and makes queries slow, and from the experience so far, it has not been very useful for analytics. If there is demand for it, it can be added. {| class="wikitable" |+ !column name !type !comment |- |rev_id |BIGINT |Revision id. Identical to the revision ID in the wiki. |- |rev_timestamp |VARCHAR(20) |Timestamp in the fromat that the dump uses (not identical to the one used in live MediaWiki databases). Example: 2023-07-26T16:29:23Z |- |rev_parent |BIGINT |Parent revision id. (At the moment, the earliest revisions have rev_parent of 0 or NULL, although it's probably supposed to be always 0. See [[phab:T420974|bug T420974]].) |- |rev_comment |VARCHAR(500) |Edit summary. |- |rev_page |VARCHAR(20) |Page title (ZID). |- |rev_username |VARCHAR(600) |The account name of the user who made the edit. |- |rev_page_type_zid |VARCHAR(20) |The ZID of the page's type. Note that this is associated with the ''revision'', not the page; a page's type may change. |- |rev_page_type_name |VARCHAR(70) |The English name of the page's type. (Note: some obscure types may be unrecognized. In these cases, it will have a ZID identical to what appears in rev_page_type_zid.) |- |rev_programming_language |VARCHAR(70) |For revisions of implementation pages: The English name of the programming language in which the implementation is written. Current possible values: * JavaScript * Python * Lua * Composition * Built in implementation * Unidentifiable implementation language * Unidentifiable code language (All these values can be seen in the [[User:Amire80/wikifunctionsanalytics#programming language table|programming_language table]]; [[quarry:query/103370|Quarry]].) It's supposed to be filled on all revisions of implementation pages. On pages of other types, it's supposed to be NULL. |- |rev_function |VARCHAR(20) |For revisions of test and implementation pages: The function with which the test or the implementation is associated (whether connected or not). On pages of other types, it's supposed to be NULL. |- |rev_connected_tests |INTEGER |For revisions of function pages: The number of connected tests. Can be zero. NULL on non-functions pages. (Non-connected tests are not counted at the moment, but it's planned for the future.) |- |rev_connected_implementations |INTEGER |For revisions of implementation pages: The number of connected implementation. Can be zero. NULL on non-functions pages. (Non-connected implementations are not counted at the moment, but it's planned for the future.) |} === input table === This table links function revisions to input types. Every Function has zero or more inputs. {| class="wikitable" !column name !type !comment |- |input_rev_id |BIGINT |Revision id, as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |input_position |INTEGER |The input's position in the function's signature, starting from 0. |- |input_type_zid |VARCHAR(20) |The input type's ZID. |} === output table === This table links function revisions to output types. Every Function has one output. {| class="wikitable" !column name !type !comment |- |input_rev_id |BIGINT |Revision id, as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |input_position |INTEGER |The input's position in the function's signature. |- |input_type_zid |VARCHAR(20) |The input type's ZID. |} === revision_edit_type table === This table links revisions to edit types. Every revision can have several edit types, but a combination of a revision and an edit type is supposed to be unique. At the moment, only Function, Implementation, and Test case pages have an edit type; analysis for pages of other types may be added in the future if there's demand. {| class="wikitable" !column name !type !comment |- |revision_edit_type_rev_id |BIGINT |Revision id, as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |revision_edit_type_edit_type |VARCHAR(70) |The edit type. The full list of types appears in the [[User:Amire80/wikifunctionsanalytics#edit type table|edit_type table]] ([[quarry:query/103369|Quarry]]). |- |revision_edit_type_natural_language |VARCHAR(70) |On edits of string values (labels, aliases, and descriptions), the English name of the natural language of the string. NULL on other edits. (Note 1: This is a language's ''English name'', not ZID or ISO 639 code. If there's demand, it can be easily changed. Note 2: Because of a bug, a few old edits have a value of "Empty language n" in this field. They are't supposed to appear in current versions as of 2026, and can probably be mostly ignored.) |} == Views == Views provide some stored convenience queries for easy common selections. They can be queried like tables. === earliest_revision_id view === This view has only the page titles (ZIDs) and the revision ids of the earliest versions of each page. For full information about the earliest revision, use the [[User:Amire80/wikifunctionsanalytics#earliest revision view|earliest_revision view]]. {| class="wikitable" !column name !type !comment |- |rev_page |VARCHAR(20) |Page title (ZID), as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |rev_id |BIGINT |Revision id, as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |} === earliest_revision view === This view has all the columns from the revision table, but only for earliest versions of each page. This may be useful, for example, when you need information about the pages' creators. The earliest version is derived from the lowest rev_id. For full information about all the columns, see [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. === latest_revision_id view === This view has only the page titles (ZIDs) and the revision ids of the latest versions of each page. For full information about the latest revision, use the [[User:Amire80/wikifunctionsanalytics#latest revision view|latest_revision view]]. {| class="wikitable" !column name !type !comment |- |rev_page |VARCHAR(20) |Page title (ZID), as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |rev_id |BIGINT |Revision id, as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |} === latest_revision view === This view has all the columns from the revision table, but only for latest versions of each page. This may be useful, for example, when you only need information about the current versions of the pages (current to the time of the dump). The latest version is derived from the highest rev_id. For full information about all the columns, see [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. === multitype_page view === This view shows pages whose type changed during their history (in February 2026, there's only one such page). This is useful for quickly finding these pages and for excluding them in other queries. {| class="wikitable" !column name !type !comment |- |rev_page |VARCHAR(20) |Page title (ZID), as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |count_types |BIGINT |The number of types that the page had throughout its history. |} === test_and_implementation view === This view shows all the function pages (latest versions only), with the total number of tests and implementations associated with them, as well as the number of ''connected'' tests and implementations. {| class="wikitable" !column name !type !comment |- |rev_page |VARCHAR(20) |Page title (ZID), as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |all_tests |INTEGER |The total number of tests associated with the function, including non-connected ones. |- |rev_connected_tests |INTEGER |The number of connected tests. Can be zero. |- |all_implementations |INTEGER |The total number of implementations associated with the function, including non-connected ones. |- |rev_connected_implementations |INTEGER |The number of connected implementation. |} == Example queries == If you find bugs in these queries, report them on the talk page. And of course, add your own! * [[quarry:query/103074|Wikifunctions whose output type is Z12/Multilingual text]] * [[quarry:query/103075|Wikifunctions that have an input whose type is Z12/Multilingual text]] * [[quarry:query/103103|Most prolific Wikifunctions main namespace editors]] * [[quarry:query/103095|Particular Wikifunctions user's edit types]] * [[quarry:query/103079|Wikifunctions actual edit types, ordered by count]] * [[quarry:query/103373|The most common Wikifunctions programming languages]] * [[quarry:query/103078|Count of significant Wikifunctions changes by month]] * [[quarry:query/103077|Wikifunctions signature change counts by user]] * [[quarry:query/103375|Wikifunctions that don't have any inputs defined]] * [[quarry:query/103376|Wikifunctions with the most connected tests]] * [[quarry:query/103377|Wikifunctions with the most connected implementations]] * [[quarry:query/103378|Wikifunctions implementation code changes per user]] * [[quarry:query/103379|Wikifunctions implementation pages with multiple programming languages]] * [[quarry:query/103380|Wikifunctions with the largest number of inputs]] * [[quarry:query/103390|A Wikifunctions' user most common programming languages]] * [[quarry:query/103391|The most frequent programmers in a Wikifunctions programming language]] * [[quarry:query/103397|Wikifunctions with counts of all implementations and tests]] * [[quarry:query/103406|Wikifunctions with no implementations and no tests]] * [[quarry:query/103437|Wikifunctions with apparently invalid connected test or implementation count]] (should ideally be zero results) * [[quarry:query/103687|Wikifunctions labels, aliases, and description changes by language]] 59x5l100wxaj18iyl2ppcud6ih5uebr 261334 261333 2026-03-27T21:47:40Z Amire80 113 proof reading 261334 wikitext text/x-wiki This is the documentation for the '''wikifunctionsanalytics''' tool. The tool currently doesn't have much of a frontend (and maybe never will). It's just a database that can be queried through [[quarry:|Quarry]]. It includes some (hopefully) useful statistics about Wikifunctions that (probably) cannot be conveniently obtained by other means, such as special pages or APIs. The source code for building the database is available in [[gitlab:toolforge-repos/wikifunctions-analytics|GitLab]], which is also where you can read the detailed explanation about the motivation to build it. This page documents the database schema and gives links to some useful example queries. You can also find some example queries in [https://gitlab.wikimedia.org/toolforge-repos/wikifunctions-analytics/-/blob/main/queries.sql?ref_type=heads the queries.sql file in the code repository]. Comments, patches, and bug reports are obviously welcome. At the moment, the tool is static and gets the information from a dump, so it doesn't have data for the last few days. Perhaps it will be updated to include more recent data. == Connection == As of this writing, the database name that can be used in Quarry is <code>s57441__wikifunctionsanalytics_p</code>. == Tables == === edit_type table === This table is used as a simple list of all the possible edit types. {| class="wikitable" !column name !type !comment |- |edit_type |VARCHAR(70) |Edit type name. |} === programming_language table === This table is used as a simple list of all the possible programming languages. {| class="wikitable" !column name !type !comment |- |programming_language |VARCHAR(70) |Programming language name. |} === revision table === This table has a row for each non-deleted revision in the main namespace of Wikifunctions. At the moment, the full JSON text of each revision is not stored in the database because it takes a lot of space and makes queries slow, and from the experience so far, it has not been very useful for analytics. If there is demand for it, it can be added. {| class="wikitable" |+ !column name !type !comment |- |rev_id |BIGINT |Revision id. Identical to the revision ID in the wiki. |- |rev_timestamp |VARCHAR(20) |Timestamp in the fromat that the dump uses (not identical to the one used in live MediaWiki databases). Example: 2023-07-26T16:29:23Z |- |rev_parent |BIGINT |Parent revision id. (At the moment, the earliest revisions have rev_parent of 0 or NULL, although it's probably supposed to be always 0. See [[phab:T420974|bug T420974]].) |- |rev_comment |VARCHAR(500) |Edit summary. |- |rev_page |VARCHAR(20) |Page title (ZID). |- |rev_username |VARCHAR(600) |The account name of the user who made the edit. |- |rev_page_type_zid |VARCHAR(20) |The ZID of the page's type. Note that this is associated with the ''revision'', not the page; a page's type may change. |- |rev_page_type_name |VARCHAR(70) |The English name of the page's type. (Note: some obscure types may be unrecognized. In these cases, it will have a ZID identical to what appears in rev_page_type_zid.) |- |rev_programming_language |VARCHAR(70) |For revisions of implementation pages: The English name of the programming language in which the implementation is written. Current possible values: * JavaScript * Python * Lua * Composition * Built in implementation * Unidentifiable implementation language * Unidentifiable code language (All these values can be seen in the [[User:Amire80/wikifunctionsanalytics#programming language table|programming_language table]]; [[quarry:query/103370|Quarry]].) It's supposed to be filled on all revisions of implementation pages. On pages of other types, it's supposed to be NULL. |- |rev_function |VARCHAR(20) |For revisions of test and implementation pages: The function with which the test or the implementation is associated (whether connected or not). On pages of other types, it's supposed to be NULL. |- |rev_connected_tests |INTEGER |For revisions of function pages: The number of connected tests. Can be zero. NULL on non-functions pages. (Non-connected tests are not counted at the moment, but it's planned for the future.) |- |rev_connected_implementations |INTEGER |For revisions of implementation pages: The number of connected implementation. Can be zero. NULL on non-functions pages. (Non-connected implementations are not counted at the moment, but it's planned for the future.) |} === input table === This table links function revisions to input types. Every Function has zero or more inputs. {| class="wikitable" !column name !type !comment |- |input_rev_id |BIGINT |Revision id, as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |input_position |INTEGER |The input's position in the function's signature, starting from 0. |- |input_type_zid |VARCHAR(20) |The input type's ZID. |} === output table === This table links function revisions to output types. Every Function has one output. {| class="wikitable" !column name !type !comment |- |input_rev_id |BIGINT |Revision id, as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |input_position |INTEGER |The input's position in the function's signature. |- |input_type_zid |VARCHAR(20) |The input type's ZID. |} === revision_edit_type table === This table links revisions to edit types. Every revision can have several edit types, but a combination of a revision and an edit type is supposed to be unique. At the moment, only Function, Implementation, and Test case pages have an edit type; analysis for pages of other types may be added in the future if there's demand. {| class="wikitable" !column name !type !comment |- |revision_edit_type_rev_id |BIGINT |Revision id, as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |revision_edit_type_edit_type |VARCHAR(70) |The edit type. The full list of types appears in the [[User:Amire80/wikifunctionsanalytics#edit type table|edit_type table]] ([[quarry:query/103369|Quarry]]). |- |revision_edit_type_natural_language |VARCHAR(70) |On edits of string values (labels, aliases, and descriptions), the English name of the natural language of the string. NULL on other edits. (Note 1: This is a language's ''English name'', not ZID or ISO 639 code. If there's demand, it can be easily changed. Note 2: Because of a bug, a few old edits have a value of "Empty language n" in this field. They are't supposed to appear in current versions as of 2026, and can probably be mostly ignored.) |} == Views == Views provide some stored convenience queries for easy common selections. They can be queried like tables. === earliest_revision_id view === This view has only the page titles (ZIDs) and the revision ids of the earliest versions of each page. For full information about the earliest revision, use the [[User:Amire80/wikifunctionsanalytics#earliest revision view|earliest_revision view]]. {| class="wikitable" !column name !type !comment |- |rev_page |VARCHAR(20) |Page title (ZID), as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |rev_id |BIGINT |Revision id, as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |} === earliest_revision view === This view has all the columns from the revision table, but only for earliest versions of each page. This may be useful, for example, when you need information about the pages' creators. The earliest version is derived from the lowest rev_id. For full information about all the columns, see [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. === latest_revision_id view === This view has only the page titles (ZIDs) and the revision ids of the latest versions of each page. For full information about the latest revision, use the [[User:Amire80/wikifunctionsanalytics#latest revision view|latest_revision view]]. {| class="wikitable" !column name !type !comment |- |rev_page |VARCHAR(20) |Page title (ZID), as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |rev_id |BIGINT |Revision id, as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |} === latest_revision view === This view has all the columns from the revision table, but only for latest versions of each page. This may be useful, for example, when you only need information about the current versions of the pages (current to the time of the dump). The latest version is derived from the highest rev_id. For full information about all the columns, see [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. === multitype_page view === This view shows pages whose type changed during their history (in February 2026, there's only one such page). This is useful for quickly finding these pages and for excluding them in other queries. {| class="wikitable" !column name !type !comment |- |rev_page |VARCHAR(20) |Page title (ZID), as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |count_types |BIGINT |The number of types that the page had throughout its history. |} === test_and_implementation view === This view shows all the function pages (latest versions only), with the total number of tests and implementations associated with them, as well as the number of ''connected'' tests and implementations. {| class="wikitable" !column name !type !comment |- |rev_page |VARCHAR(20) |Page title (ZID), as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |all_tests |INTEGER |The total number of tests associated with the function, including non-connected ones. |- |rev_connected_tests |INTEGER |The number of connected tests. Can be zero. |- |all_implementations |INTEGER |The total number of implementations associated with the function, including non-connected ones. |- |rev_connected_implementations |INTEGER |The number of connected implementation. |} == Example queries == If you find bugs in these queries, report them on the talk page. And of course, add your own! * [[quarry:query/103074|Wikifunctions whose output type is Z12/Multilingual text]] * [[quarry:query/103075|Wikifunctions that have an input whose type is Z12/Multilingual text]] * [[quarry:query/103103|Most prolific Wikifunctions main namespace editors]] * [[quarry:query/103095|Particular Wikifunctions user's edit types]] * [[quarry:query/103079|Wikifunctions actual edit types, ordered by count]] * [[quarry:query/103373|The most common Wikifunctions programming languages]] * [[quarry:query/103078|Count of significant Wikifunctions changes by month]] * [[quarry:query/103077|Wikifunctions signature change counts by user]] * [[quarry:query/103375|Wikifunctions that don't have any inputs defined]] * [[quarry:query/103376|Wikifunctions with the most connected tests]] * [[quarry:query/103377|Wikifunctions with the most connected implementations]] * [[quarry:query/103378|Wikifunctions implementation code changes per user]] * [[quarry:query/103379|Wikifunctions implementation pages with multiple programming languages]] * [[quarry:query/103380|Wikifunctions with the largest number of inputs]] * [[quarry:query/103390|A Wikifunctions' user most common programming languages]] * [[quarry:query/103391|The most frequent programmers in a Wikifunctions programming language]] * [[quarry:query/103397|Wikifunctions with counts of all implementations and tests]] * [[quarry:query/103406|Wikifunctions with no implementations and no tests]] * [[quarry:query/103437|Wikifunctions with apparently invalid connected test or implementation count]] (should ideally be zero results) * [[quarry:query/103687|Wikifunctions labels, aliases, and description changes by language]] rj6s7kfjsm9dchwry98uv2uuxblcai8 261388 261334 2026-03-28T05:27:00Z Amire80 113 /* input table */ + input/output_type_name 261388 wikitext text/x-wiki This is the documentation for the '''wikifunctionsanalytics''' tool. The tool currently doesn't have much of a frontend (and maybe never will). It's just a database that can be queried through [[quarry:|Quarry]]. It includes some (hopefully) useful statistics about Wikifunctions that (probably) cannot be conveniently obtained by other means, such as special pages or APIs. The source code for building the database is available in [[gitlab:toolforge-repos/wikifunctions-analytics|GitLab]], which is also where you can read the detailed explanation about the motivation to build it. This page documents the database schema and gives links to some useful example queries. You can also find some example queries in [https://gitlab.wikimedia.org/toolforge-repos/wikifunctions-analytics/-/blob/main/queries.sql?ref_type=heads the queries.sql file in the code repository]. Comments, patches, and bug reports are obviously welcome. At the moment, the tool is static and gets the information from a dump, so it doesn't have data for the last few days. Perhaps it will be updated to include more recent data. == Connection == As of this writing, the database name that can be used in Quarry is <code>s57441__wikifunctionsanalytics_p</code>. == Tables == === edit_type table === This table is used as a simple list of all the possible edit types. {| class="wikitable" !column name !type !comment |- |edit_type |VARCHAR(70) |Edit type name. |} === programming_language table === This table is used as a simple list of all the possible programming languages. {| class="wikitable" !column name !type !comment |- |programming_language |VARCHAR(70) |Programming language name. |} === revision table === This table has a row for each non-deleted revision in the main namespace of Wikifunctions. At the moment, the full JSON text of each revision is not stored in the database because it takes a lot of space and makes queries slow, and from the experience so far, it has not been very useful for analytics. If there is demand for it, it can be added. {| class="wikitable" |+ !column name !type !comment |- |rev_id |BIGINT |Revision id. Identical to the revision ID in the wiki. |- |rev_timestamp |VARCHAR(20) |Timestamp in the fromat that the dump uses (not identical to the one used in live MediaWiki databases). Example: 2023-07-26T16:29:23Z |- |rev_parent |BIGINT |Parent revision id. (At the moment, the earliest revisions have rev_parent of 0 or NULL, although it's probably supposed to be always 0. See [[phab:T420974|bug T420974]].) |- |rev_comment |VARCHAR(500) |Edit summary. |- |rev_page |VARCHAR(20) |Page title (ZID). |- |rev_username |VARCHAR(600) |The account name of the user who made the edit. |- |rev_page_type_zid |VARCHAR(20) |The ZID of the page's type. Note that this is associated with the ''revision'', not the page; a page's type may change. |- |rev_page_type_name |VARCHAR(70) |The English name of the page's type. (Note: some obscure types may be unrecognized. In these cases, it will have a ZID identical to what appears in rev_page_type_zid.) |- |rev_programming_language |VARCHAR(70) |For revisions of implementation pages: The English name of the programming language in which the implementation is written. Current possible values: * JavaScript * Python * Lua * Composition * Built in implementation * Unidentifiable implementation language * Unidentifiable code language (All these values can be seen in the [[User:Amire80/wikifunctionsanalytics#programming language table|programming_language table]]; [[quarry:query/103370|Quarry]].) It's supposed to be filled on all revisions of implementation pages. On pages of other types, it's supposed to be NULL. |- |rev_function |VARCHAR(20) |For revisions of test and implementation pages: The function with which the test or the implementation is associated (whether connected or not). On pages of other types, it's supposed to be NULL. |- |rev_connected_tests |INTEGER |For revisions of function pages: The number of connected tests. Can be zero. NULL on non-functions pages. (Non-connected tests are not counted at the moment, but it's planned for the future.) |- |rev_connected_implementations |INTEGER |For revisions of implementation pages: The number of connected implementation. Can be zero. NULL on non-functions pages. (Non-connected implementations are not counted at the moment, but it's planned for the future.) |} === input table === This table links function revisions to input types. Every Function has zero or more inputs. {| class="wikitable" !column name !type !comment |- |input_rev_id |BIGINT |Revision id, as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |input_position |INTEGER |The input's position in the function's signature, starting from 0. |- |input_type_zid |VARCHAR(20) |The input type's ZID. |- |input_type_name |VARCHAR(70) |The input type's English label. |} === output table === This table links function revisions to output types. Every Function has one output. {| class="wikitable" !column name !type !comment |- |output_rev_id |BIGINT |Revision id, as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |output_type_zid |VARCHAR(20) |The output type's ZID. |- |output_type_name |VARCHAR(70) |The output type's English label. |} === revision_edit_type table === This table links revisions to edit types. Every revision can have several edit types, but a combination of a revision and an edit type is supposed to be unique. At the moment, only Function, Implementation, and Test case pages have an edit type; analysis for pages of other types may be added in the future if there's demand. {| class="wikitable" !column name !type !comment |- |revision_edit_type_rev_id |BIGINT |Revision id, as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |revision_edit_type_edit_type |VARCHAR(70) |The edit type. The full list of types appears in the [[User:Amire80/wikifunctionsanalytics#edit type table|edit_type table]] ([[quarry:query/103369|Quarry]]). |- |revision_edit_type_natural_language |VARCHAR(70) |On edits of string values (labels, aliases, and descriptions), the English name of the natural language of the string. NULL on other edits. (Note 1: This is a language's ''English name'', not ZID or ISO 639 code. If there's demand, it can be easily changed. Note 2: Because of a bug, a few old edits have a value of "Empty language n" in this field. They are't supposed to appear in current versions as of 2026, and can probably be mostly ignored.) |} == Views == Views provide some stored convenience queries for easy common selections. They can be queried like tables. === earliest_revision_id view === This view has only the page titles (ZIDs) and the revision ids of the earliest versions of each page. For full information about the earliest revision, use the [[User:Amire80/wikifunctionsanalytics#earliest revision view|earliest_revision view]]. {| class="wikitable" !column name !type !comment |- |rev_page |VARCHAR(20) |Page title (ZID), as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |rev_id |BIGINT |Revision id, as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |} === earliest_revision view === This view has all the columns from the revision table, but only for earliest versions of each page. This may be useful, for example, when you need information about the pages' creators. The earliest version is derived from the lowest rev_id. For full information about all the columns, see [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. === latest_revision_id view === This view has only the page titles (ZIDs) and the revision ids of the latest versions of each page. For full information about the latest revision, use the [[User:Amire80/wikifunctionsanalytics#latest revision view|latest_revision view]]. {| class="wikitable" !column name !type !comment |- |rev_page |VARCHAR(20) |Page title (ZID), as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |rev_id |BIGINT |Revision id, as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |} === latest_revision view === This view has all the columns from the revision table, but only for latest versions of each page. This may be useful, for example, when you only need information about the current versions of the pages (current to the time of the dump). The latest version is derived from the highest rev_id. For full information about all the columns, see [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. === multitype_page view === This view shows pages whose type changed during their history (in February 2026, there's only one such page). This is useful for quickly finding these pages and for excluding them in other queries. {| class="wikitable" !column name !type !comment |- |rev_page |VARCHAR(20) |Page title (ZID), as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |count_types |BIGINT |The number of types that the page had throughout its history. |} === test_and_implementation view === This view shows all the function pages (latest versions only), with the total number of tests and implementations associated with them, as well as the number of ''connected'' tests and implementations. {| class="wikitable" !column name !type !comment |- |rev_page |VARCHAR(20) |Page title (ZID), as in the [[User:Amire80/wikifunctionsanalytics#revision table|revision table]]. |- |all_tests |INTEGER |The total number of tests associated with the function, including non-connected ones. |- |rev_connected_tests |INTEGER |The number of connected tests. Can be zero. |- |all_implementations |INTEGER |The total number of implementations associated with the function, including non-connected ones. |- |rev_connected_implementations |INTEGER |The number of connected implementation. |} == Example queries == If you find bugs in these queries, report them on the talk page. And of course, add your own! * [[quarry:query/103074|Wikifunctions whose output type is Z12/Multilingual text]] * [[quarry:query/103075|Wikifunctions that have an input whose type is Z12/Multilingual text]] * [[quarry:query/103103|Most prolific Wikifunctions main namespace editors]] * [[quarry:query/103095|Particular Wikifunctions user's edit types]] * [[quarry:query/103079|Wikifunctions actual edit types, ordered by count]] * [[quarry:query/103373|The most common Wikifunctions programming languages]] * [[quarry:query/103078|Count of significant Wikifunctions changes by month]] * [[quarry:query/103077|Wikifunctions signature change counts by user]] * [[quarry:query/103375|Wikifunctions that don't have any inputs defined]] * [[quarry:query/103376|Wikifunctions with the most connected tests]] * [[quarry:query/103377|Wikifunctions with the most connected implementations]] * [[quarry:query/103378|Wikifunctions implementation code changes per user]] * [[quarry:query/103379|Wikifunctions implementation pages with multiple programming languages]] * [[quarry:query/103380|Wikifunctions with the largest number of inputs]] * [[quarry:query/103390|A Wikifunctions' user most common programming languages]] * [[quarry:query/103391|The most frequent programmers in a Wikifunctions programming language]] * [[quarry:query/103397|Wikifunctions with counts of all implementations and tests]] * [[quarry:query/103406|Wikifunctions with no implementations and no tests]] * [[quarry:query/103437|Wikifunctions with apparently invalid connected test or implementation count]] (should ideally be zero results) * [[quarry:query/103687|Wikifunctions labels, aliases, and description changes by language]] tbeoqxf4p1q1xdcvx50pp1yrnubbp2u Z32355 0 78589 261371 259720 2026-03-28T00:46:10Z Higa4 889 Removed Z32360 from the approved list of implementations 261371 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32355" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32355K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "subject" }, { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "主題" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32355K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "role" }, { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "役割" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32355K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "dependency" }, { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "依存関係" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z32355K4", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "language" }, { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "言語" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z32358", "Z32356" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32355" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "defining role sentence in Japanese" }, { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "役割定義文 - 日本語" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "Japanese defining role sentence" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Sentences of the type \"Paris is the capital of France.\" or \"Elizabeth II is the mother of Charles III.\"." }, { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "\"Paris is the capital of France.\"や\"Elizabeth II is the mother of Charles III.\"といった種別の文。" } ] } } rpkn5nxgtfbrnuieznhpnrvpi5c5hfk 261372 261371 2026-03-28T00:46:16Z Higa4 889 Added Z32360 to the approved list of implementations 261372 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32355" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32355K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "subject" }, { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "主題" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32355K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "role" }, { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "役割" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32355K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "dependency" }, { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "依存関係" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z32355K4", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "language" }, { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "言語" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z32358", "Z32356" ], "Z8K4": [ "Z14", "Z32360" ], "Z8K5": "Z32355" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "defining role sentence in Japanese" }, { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "役割定義文 - 日本語" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "Japanese defining role sentence" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Sentences of the type \"Paris is the capital of France.\" or \"Elizabeth II is the mother of Charles III.\"." }, { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "\"Paris is the capital of France.\"や\"Elizabeth II is the mother of Charles III.\"といった種別の文。" } ] } } afws0jfdb6mvixyh47u271pw9177skr Z32356 0 78590 261369 259069 2026-03-28T00:38:20Z Higa4 889 upd ja 261369 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32356" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32355", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32355", "Z32355K1": { "Z1K1": "Z6091", "Z6091K1": "Q80011" }, "Z32355K2": { "Z1K1": "Z6091", "Z6091K1": "Q50337" }, "Z32355K3": { "Z1K1": "Z6091", "Z6091K1": "Q17" }, "Z32355K4": "Z1830" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "千葉県は日本の都道府県である。" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "千葉県" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } tgxoh4n2hi9f6yxu4vjnxvh86d6zzpj Z32358 0 78592 261366 259068 2026-03-28T00:36:50Z Higa4 889 upd ja 261366 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32358" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32355", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32355", "Z32355K1": { "Z1K1": "Z6091", "Z6091K1": "Q320943" }, "Z32355K2": { "Z1K1": "Z6091", "Z6091K1": "Q15253706" }, "Z32355K3": { "Z1K1": "Z6091", "Z6091K1": "Q80011" }, "Z32355K4": "Z1830" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "松戸市は千葉県の市である。" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "松戸市" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } ksmbk3wpk3evto26gy7g6scwmy28zf3 Z32360 0 78594 261365 259721 2026-03-28T00:35:24Z Higa4 889 upd ja 261365 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32360" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32355", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z26107", "Z26107K1": { "Z1K1": "Z18", "Z18K1": "Z32355K4" }, "Z26107K2": { "Z1K1": "Z7", "Z7K1": "Z12899", "Z12899K1": [ "Z6", { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z23753", "Z23753K1": { "Z1K1": "Z18", "Z18K1": "Z32355K1" }, "Z23753K2": { "Z1K1": "Z18", "Z18K1": "Z32355K4" } } }, "は", { "Z1K1": "Z7", "Z7K1": "Z23753", "Z23753K1": { "Z1K1": "Z18", "Z18K1": "Z32355K3" }, "Z23753K2": { "Z1K1": "Z18", "Z18K1": "Z32355K4" } }, "の", { "Z1K1": "Z7", "Z7K1": "Z22839", "Z22839K1": { "Z1K1": "Z7", "Z7K1": "Z13464", "Z13464K1": "Z27410", "Z13464K2": { "Z1K1": "Z7", "Z7K1": "Z23616", "Z23616K1": { "Z1K1": "Z18", "Z18K1": "Z32355K2" }, "Z23616K2": { "Z1K1": "Z18", "Z18K1": "Z32355K4" } }, "Z13464K3": [ "Z6091" ] }, "Z22839K2": { "Z1K1": "Z7", "Z7K1": "Z23753", "Z23753K1": { "Z1K1": "Z18", "Z18K1": "Z32355K2" }, "Z23753K2": { "Z1K1": "Z18", "Z18K1": "Z32355K4" } } }, "である。" ], "Z12899K2": "" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "役割定義文 - 日本語, Composition" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "defining role sentence in Japanese, Composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 6vx2n710scr2pbrsu0zhbfnqb0cv7qb Z32501 0 78749 261391 259999 2026-03-28T06:02:07Z 99of9 1622 Added Z32847 to the approved list of test cases 261391 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32501" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32501K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "item QID" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z32501K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "preferred language" } ] } }, { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z6091" }, "Z17K2": "Z32501K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "preferred grammatical features" } ] } } ], "Z8K2": "Z6", "Z8K3": [ "Z20", "Z32502", "Z32514", "Z32526", "Z32847" ], "Z8K4": [ "Z14", "Z32504" ], "Z8K5": "Z32501" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "best string from item reference, language, grammar" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "semantic fallback to label", "string of qid", "qid to string" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Aims to return the best string representing an item that is in the required language or a close variant, and amongst those has the best matching grammatical features, or defaults to a fallback label." } ] } } 6c7vfzj6t1u6j04vrqts11mfcwef1br Z32534 0 78784 261357 259945 2026-03-28T00:09:31Z Higa4 889 + ja 261357 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32534" }, "Z2K2": { "Z1K1": "Z14294", "Z14294K1": [ "Z14293", { "Z1K1": "Z14293", "Z14293K1": "Z32536", "Z14293K2": [ "Z60", "Z1002", "Z1113", "Z1199", "Z1437", "Z1966", "Z1124", "Z1689" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z32591", "Z14293K2": [ "Z60", "Z1004", "Z1640", "Z1757" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z32688", "Z14293K2": [ "Z60", "Z1830", "Z1326", "Z1171", "Z1736" ] } ], "Z14294K2": "Z32536" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "config for creative work - entity, class, creator" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "config oeuvre - entité, classe, créateur/trice" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } fepte81e61cajhzfqagiglb156o3nr0 Z32593 0 78843 261433 260138 2026-03-28T09:50:57Z Redmin 52094 261433 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32593" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z31729", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z31729", "Z31729K1": { "Z1K1": "Z89", "Z89K1": "\u003Cdiv\u003E\n\t\u003Cdiv\u003E\n\t\t\u003Cdiv\u003E\n\t\t\t\u003Cdiv class=\"final\"\u003E\n\t\t\t\t\u003Ctable\u003E\n\t\t\t\t\t\u003Ctr\u003E\u003Ctd\u003EI am in a table four levels deep inside a div!\u003C/td\u003E\u003C/tr\u003E\u003C/table\u003E\n\t\t\t\u003C/div\u003E\n\t\t\u003C/div\u003E\n\t\u003C/div\u003E\n\u003C/div\u003E" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z877", "Z877K2": { "Z1K1": "Z89", "Z89K1": "\u003Cdiv style=\"text-align: center;\"\u003E\n\t\u003Cdiv\u003E\n\t\t\u003Cdiv\u003E\n\t\t\t\u003Cdiv class=\"final\" \u003E\n\t\t\t\t\u003Ctable style=\"margin: auto;\"\u003E\n\t\t\t\t\t\u003Ctr\u003E\u003Ctd\u003EI am in a table four levels deep inside a div!\u003C/td\u003E\u003C/tr\u003E\u003C/table\u003E\n\t\t\t\u003C/div\u003E\n\t\t\u003C/div\u003E\n\t\u003C/div\u003E\n\u003C/div\u003E" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "center several levels deeply nested table" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "checks if nested tables are currently centred and original format is maintained" } ] } } 9sg373xy02exhvpd6zjyeffh753cwmm 261435 261433 2026-03-28T09:57:15Z Redmin 52094 Fix format 261435 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32593" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z31729", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z31729", "Z31729K1": { "Z1K1": "Z89", "Z89K1": "\u003Cdiv\u003E\n\t\u003Cdiv\u003E\n\t\t\u003Cdiv\u003E\n\t\t\t\u003Cdiv class=\"final\"\u003E\n\t\t\t\t\u003Ctable\u003E\n\t\t\t\t\t\u003Ctr\u003E\u003Ctd\u003EI am in a table four levels deep inside a div!\u003C/td\u003E\u003C/tr\u003E\u003C/table\u003E\n\t\t\t\u003C/div\u003E\n\t\t\u003C/div\u003E\n\t\u003C/div\u003E\n\u003C/div\u003E" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z877", "Z877K2": { "Z1K1": "Z89", "Z89K1": "\u003Cdiv style=\"text-align: center;\"\u003E\n\t\u003Cdiv\u003E\n\t\t\u003Cdiv\u003E\n\t\t\t\u003Cdiv class=\"final\"\u003E\n\t\t\t\t\u003Ctable style=\"margin: auto;\"\u003E\n\t\t\t\t\t\u003Ctr\u003E\u003Ctd\u003EI am in a table four levels deep inside a div!\u003C/td\u003E\u003C/tr\u003E\u003C/table\u003E\n\t\t\t\u003C/div\u003E\n\t\t\u003C/div\u003E\n\t\u003C/div\u003E\n\u003C/div\u003E" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "center several levels deeply nested table" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "checks if nested tables are currently centred and original format is maintained" } ] } } 81ahw2reo51xnxcy2ryqpgqi27cg8r6 Z32621 0 78885 261381 260129 2026-03-28T05:03:50Z ChaoticVermillion 31127 Added Z32624 to the approved list of implementations 261381 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32621" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32621K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "subject" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32621K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "verb" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z32621K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "language" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z32622", "Z32623" ], "Z8K4": [ "Z14", "Z32624" ], "Z8K5": "Z32621" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "English verb describing noun sentence" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "English [X]s [Y]" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Makes a sentence of the form [X]s [verb], e.g. \"Plants die.\" or \"Dogs bark.\"" } ] } } 3jinno5mn5v5f49e0ufkuttwdgy85ph Z32645 0 78995 261280 261121 2026-03-27T18:43:22Z YoshiRulz 10156 Added Z32815, Z32816 and Z32817 to the approved list of test cases 261280 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32645" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6001", "Z17K2": "Z32645K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "item" } ] } } ], "Z8K2": "Z22112", "Z8K3": [ "Z20", "Z32646", "Z32648", "Z32649", "Z32647", "Z32650", "Z32651", "Z32653", "Z32654", "Z32655", "Z32657", "Z32662", "Z32743", "Z32777", "Z32784", "Z32785", "Z32786", "Z32815", "Z32816", "Z32817" ], "Z8K4": [ "Z14", "Z32776", "Z32667" ], "Z8K5": "Z32645" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "item indicates definite article, English" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "From the identity of the item, decide whether the English text needs a definite article. Used in combination with other grammatical indicators. True if always \"the X\", False if never \"the\", else Maybe" } ] } } dg58sl8h8mbpcmsadvn52kbs9vco7rl 261282 261280 2026-03-27T18:49:31Z YoshiRulz 10156 Added Z32818 to the approved list of test cases 261282 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32645" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6001", "Z17K2": "Z32645K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "item" } ] } } ], "Z8K2": "Z22112", "Z8K3": [ "Z20", "Z32646", "Z32648", "Z32649", "Z32647", "Z32650", "Z32651", "Z32653", "Z32654", "Z32655", "Z32657", "Z32662", "Z32743", "Z32777", "Z32784", "Z32785", "Z32786", "Z32815", "Z32816", "Z32817", "Z32818" ], "Z8K4": [ "Z14", "Z32776", "Z32667" ], "Z8K5": "Z32645" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "item indicates definite article, English" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "From the identity of the item, decide whether the English text needs a definite article. Used in combination with other grammatical indicators. True if always \"the X\", False if never \"the\", else Maybe" } ] } } efccgevga48z7zptuwso7sw7mz11a4e Z32671 0 79021 261358 260589 2026-03-28T00:16:59Z Higa4 889 Added Z32680 to the approved list of implementations 261358 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32671" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32671K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "entity" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32671K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "class" } ] } } ], "Z8K2": "Z6", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14", "Z32680" ], "Z8K5": "Z32671" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "Japanese article-less instantiating sentence" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Japanese article-less instantiating sentence" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } i109zhpa1iw7co2o3jlrxbhgdekoye9 261359 261358 2026-03-28T00:17:05Z Higa4 889 Added Z32682 to the approved list of test cases 261359 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32671" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32671K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "entity" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32671K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "class" } ] } } ], "Z8K2": "Z6", "Z8K3": [ "Z20", "Z32682" ], "Z8K4": [ "Z14", "Z32680" ], "Z8K5": "Z32671" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "Japanese article-less instantiating sentence" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Japanese article-less instantiating sentence" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } fxk5q27rljsqcv3tvrvhm60aq6cy5b9 Z32688 0 79038 261355 260650 2026-03-28T00:05:53Z Higa4 889 Added Z32689 to the approved list of implementations 261355 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32688" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32688K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "entity" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32688K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "class" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32688K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "creater" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14", "Z32689" ], "Z8K5": "Z32688" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Creative work - entity, class, creator, Japanese" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } fy9mf024zms0zapu809tvde046npzh7 261356 261355 2026-03-28T00:05:59Z Higa4 889 Added Z32690 to the approved list of test cases 261356 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32688" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32688K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "entity" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32688K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "class" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32688K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "creater" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z32690" ], "Z8K4": [ "Z14", "Z32689" ], "Z8K5": "Z32688" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Creative work - entity, class, creator, Japanese" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } bjm6olu9989t6was7q2wb0t9h2bvd7a Wikifunctions:Status updates/2026-03-26/en 4 79121 261192 261086 2026-03-27T12:11:19Z FuzzyBot 207 Updating to match new version of source page 261192 wikitext text/x-wiki <languages/> {{Wikifunctions updates | prevlabel = Previous update | prev = 2026-03-19 | nextlabel = Next update | next = }} === First few days of Abstract Wikipedia Beta === Last week we kicked off the Beta of Abstract Wikipedia, and many of you came to visit and some of you came to become part of a new community. We are very excited about how things are going! The numbers are constantly changing, but so far already more than 120 articles have been started. [[User:ChaoticVermillion|ChaoticVermillion]] has created [https://abstract.wikipedia.org/wiki/User:ChaoticVermillion/First_Abstract_Wiki_pages a page to commemorate the first 25 articles]. One thing we are particularly happy about is that more than 75 volunteers have made contributions to the wiki, and the wiki has seen more than 1000 edits already. We understand that contributing to Abstract Wikipedia is currently not a very user-friendly experience, and a lot of things are broken. We have already fixed a whole slew of things (see the section on Recent Changes in the software below), and we are working on many more. Based on the initial reaction and your feedback, we are changing our plans for the upcoming quarters, to focus on bugfixes, features, and capabilities that you are raising. We are monitoring the Phabricator board, the Project chat, and the Telegram / IRC chat, and collecting your feedback and suggestions. This will be our priority in the coming months. We are also excited to see that Wikifunctions is seeing a significant increase in the pace of new functions being created. This week we report 79 new functions! Some of them are in languages that had no functions before, and some of them are providing functionality that helps with writing Abstract Wikipedia articles. By the way, here’s one tip: currently, caching for Abstract Wikipedia happens on the level of the “fragment”. This means that by putting several sentences into a single paragraph, the paragraph as a whole is being run, may cause time-outs, and will be cached. Instead, if, for now, you put one sentence into each fragment, caching and evaluation can be more spread out and should allow for more content. Eventually we want to fix that, but it may take a moment, so you can try out more by following this tip for now. This can be changed later again and pulled together into paragraphs if so wished. As you might have noticed, there have been a few bugs that we've fixed and tweaks that we've made. We fixed a bug that meant that the code mis-configured some namespaces, so broke talk and User pages and published the very first articles in the wrong place ([[:phab:T420617|T420617]], [[:phab:T420649|T420649]]). We switched the orchestrator's composition language temporarily back to v1 ([[:phab:T418887|T418887]]), then made some quick fixes ([[:phab:T419833|T419833]]) and then re-enabled it — see below. We switched up a hard-coded link for policies to the new initial policy list. We fixed a bug that meant the creation workflow looked in the wrong place to make sure you didn't over-write an existing page ([[:phab:T420725|T420725]]), and it worked if you browsed directly to Special:CreateAbstract/Q123456 ([[:phab:T420916|T420916]]). We adjusted the display of previews to correctly set the language's RTL status too ([[:phab:T420687|T420687]]) and we added Help links for the pages to view and create Abstract articles.We're working now on improving performance and caching, fixing the /view/ links to work, making sure Abstract Wikipedia pages show up on the Tools database views, adding to the site statistics process, and a dozen other little things. Thank you for bearing with us! Keep giving us feedback! We really appreciate your willingness to try things out, and are very happy to see you accepting this early version of Abstract Wikipedia. === Status of Composition Language v2 === A couple of weeks ago, we enabled composition language v2 in production. There were some minor bugs that the team was able to triage, but there was also a set of function calls that became categorically impossible to specify. An example case is [[:phab:T419833|here]]. These function calls worked in v1 because of 1) an extremely lazy execution model and 2) lax error handling. In v2, execution order is much stricter (and more comprehensible!), and error handling has become predictable. As a result, when a [[Z7|Z7/Function call]] will cause an error, that error is immediately returned in v2. We have since added [https://gitlab.wikimedia.org/repos/abstract-wiki/wikifunctions/function-orchestrator/-/merge_requests/606 a temporary layer of indirection] (hereinafter the "scope hack") to the v2 composition language. This will cause affected functions to work much in the way they did in v1. However, this is a temporary measure. It is bad for performance and it makes the Wikifunctions language semantics a bit strange. In future, compositions that depend on error-handling functions (e.g. [[Z850|Z850/Try-catch]] and [[Z853|Z853/Get error]]) should wrap top-level [[Z7|Z7/Function calls]] in [[Z99|Z99/Quote]], then use [[Z899|Z899/Unquote]] inside of the composition. This technique is verified to work in all versions of the composition language, so it will be possible to migrate all existing functions. Another unwanted side effect of v2 and its new strategy for error handling is that many of the failing function calls might return a different error type. While we will work to always return the most accurate and descriptive error type, it is possible that many calls that rely on [[Z850|Z850/Try-catch]] to catch a specific error type will now fail until the expected error type is corrected to the one thrown by v2. We will document all the content issues that we come across and track their status here: [[Wikifunctions:Request for cleanup|Wikifunctions:Request for cleanup]]. Once these functions have been migrated, we will roll back the scope hack. === Recent Changes in the software === This week on Wikifunctions, we made the following changes: When you're editing an article with the visual editor with a Wikifunctions call that creates a reference, we now show the style more clearly. We also now show the standard MediaWiki warning box when you're editing an old version of a Wikifunctions Object page ([[:phab:T364318|T364318]]). === Wikifunctions presentation at WikiCon Australia on 11 April 2026 === [[User:99of9|Toby Hudson]] will be presenting [[:meta:Event:WikiCon Australia 2026/Submissions/Wikifunctions in Practice: Reusable Logic for Wikimedia|Wikifunctions in Practice: Reusable Logic for Wikimedia]] at [[:meta:Event:WikiCon Australia 2026|WikiCon Australia]] on 11 April 2026 at 12:00 local time at the [[:en:National Film and Sound Archive|National Film and Sound Archive of Australia]] in [[:en:Canberra|Canberra]]. Here is the description of the talk: : ''Wikifunctions promises something simple but ambitious: write logic once, and make it reusable across Wikimedia projects and languages. Small, well-chosen functions can have outsized impact and eliminate some updating, copy-pasting, or even translation.'' : ''This talk focuses on goals and practical usage rather than internals or programming, but will allow plenty of time for questions from the audience to dig into the details. We'll see what Wikifunctions is and what it's for. We will test a range of existing functions on Wikifunctions directly. We will see how to embed the result of a function call in a regular Wiki page elsewhere on a sister project. Then we will look ahead to how Wikifunctions will play a key role in the future Abstract Wikipedia.'' Thank you Toby for giving this presentation! And everyone have fun at WikiCon Australia! === Volunteer’s Corner upcoming on 13 April 2026 === The next Volunteers’ Corner will be on [https://zonestamp.toolforge.org/1776101400 Monday, 13 April 2026 at 17:30 UTC]. We plan to have the following agenda: there will be time to ask questions and discuss all matters arising. We will celebrate the launch of Abstract Wikipedia Beta. If we have time, we will either write a function together or work on an Abstract Wikipedia article together (volunteer-led). Everyone is welcome to join us on [https://meet.google.com/xuy-njxh-rkw Google Meet]. === Fresh Functions weekly: 76 new Functions === This week we had 76 (!) new functions. That’s a lot more than usual, driven by the launch of Abstract Wikipedia Beta. Here is an incomplete list of functions with implementations and passing tests to get a taste of what functions have been created. Thanks everybody for contributing! * {{Z|Z32085}} * {{Z|Z32097}} * {{Z|Z32109}} * {{Z|Z32123}} * {{Z|Z32126}} * {{Z|Z32145}} * {{Z|Z32149}} * {{Z|Z32152}} * {{Z|Z32160}} * {{Z|Z32163}} * {{Z|Z32177}} * {{Z|Z32179}} * {{Z|Z32180}} * {{Z|Z32185}} * {{Z|Z32193}} * {{Z|Z32199}} * {{Z|Z32204}} * {{Z|Z32208}} * {{Z|Z32212}} * {{Z|Z32215}} * {{Z|Z32225}} * {{Z|Z32229}} * {{Z|Z32230}} * {{Z|Z32234}} * {{Z|Z32244}} * {{Z|Z32249}} * {{Z|Z32261}} * {{Z|Z32290}} * {{Z|Z32302}} * {{Z|Z32308}} * {{Z|Z32321}} * {{Z|Z32326}} * {{Z|Z32330}} * {{Z|Z32340}} * {{Z|Z32343}} * {{Z|Z32347}} * {{Z|Z32355}} * {{Z|Z32371}} * {{Z|Z32373}} A [https://www.wikifunctions.org/wiki/Special:ListObjectsByType?type=Z8&orderby=latest complete list of all functions sorted by when they were created] is available. [[Category:Status updates{{#translation:}}|2026-03-26]] 2jl0c2xnbdqwcuigftg7xtokdfrhai6 User talk:Swayam Agrahari 3 79126 261376 260902 2026-03-28T03:38:14Z Swayam Agrahari 14101 /* Z26359 */ Reply 261376 wikitext text/x-wiki == Z26359 == Hi! You've created [[Z26359]]. What is it supposed to be? Its actual ''title'' is "Z26359", but its ''label'' is Z11396, which is very confusing. And its implementation [[Z26360]] looks like an infinite loop. Was it just a test edit or do you plan to do something with it? [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 18:26, 26 March 2026 (UTC) :heyy, apologies for late reply, this was just a test edit, i was just exploring wiki functions. [[User:Swayam Agrahari|Swayam Agrahari]] ([[User talk:Swayam Agrahari|talk]]) 03:38, 28 March 2026 (UTC) 0oxgoefuw5y18fz0avcw2nktsw2w6lm 261377 261376 2026-03-28T03:47:45Z Amire80 113 /* Z26359 */ Reply 261377 wikitext text/x-wiki == Z26359 == Hi! You've created [[Z26359]]. What is it supposed to be? Its actual ''title'' is "Z26359", but its ''label'' is Z11396, which is very confusing. And its implementation [[Z26360]] looks like an infinite loop. Was it just a test edit or do you plan to do something with it? [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 18:26, 26 March 2026 (UTC) :heyy, apologies for late reply, this was just a test edit, i was just exploring wiki functions. [[User:Swayam Agrahari|Swayam Agrahari]] ([[User talk:Swayam Agrahari|talk]]) 03:38, 28 March 2026 (UTC) ::OK. Can it be deleted? [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 03:47, 28 March 2026 (UTC) dpb9mzfxjgo0rp5c8f5k4301ygu26wu Z32734 0 79130 261234 260912 2026-03-27T15:15:47Z YoshiRulz 10156 Added Z32805 to the approved list of test cases 261234 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32734" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z89" } }, "Z17K2": "Z32734K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "cell contents" } ] } }, { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z40" } }, "Z17K2": "Z32734K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "header flags" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z89" } }, "Z8K3": [ "Z20", "Z32805" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32734" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "table cell elements from contents + isHeader flags" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "takes a rectangular array of HTML fragments and an identically-sized array of Booleans, and returns an array of td/th elements (True =\u003E th; False =\u003E td)" } ] } } l5do7wotiol6aragkdatyk7hlrnib9z Z32735 0 79131 261273 260913 2026-03-27T17:56:24Z YoshiRulz 10156 More progress, still unfinished 261273 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32735" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32734", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z17628", "Z17628K1": { "Z1K1": "Z7", "Z7K1": "Z31605", "Z31605K1": { "Z1K1": "Z18", "Z18K1": "Z32734K1" } }, "Z17628K2": { "Z1K1": "Z7", "Z7K1": "Z31605", "Z31605K1": { "Z1K1": "Z18", "Z18K1": "Z32734K2" } } }, "Z802K2": { "Z1K1": "Z7", "Z7K1": "Z29787", "Z29787K1": "Z14779", "Z29787K2": "Z19384", "Z29787K3": { "Z1K1": "Z7", "Z7K1": "Z13436", "Z13436K1": "Z873", "Z13436K2": "Z27854", "Z13436K3": { "Z1K1": "Z18", "Z18K1": "Z32734K1" } }, "Z29787K4": { "Z1K1": "Z18", "Z18K1": "Z32734K2" } }, "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z851", "Z851K1": "Z516", "Z851K2": [ "Z1", "Z32734K2", { "Z1K1": "Z18", "Z18K1": "Z32734K2" } ] } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "cells from contents + isHeader flags, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } ro2x7hcxt8h6tdaja0rj7y23aamitdr Wikifunctions:Catalogue/Natural language operations/Czech 4 79179 261268 261055 2026-03-27T17:36:42Z Mormegil 150 +[[Z32780]] 261268 wikitext text/x-wiki * {{Z+|Z32541}} * {{Z+|Z32698}} * {{Z+|Z32588}} * {{Z+|Z32780}} [[Category:Lists of functions]] [[Category:Czech]] 00zodl5k6m49haavpfbn2b2qr71pcj3 Translations:Wikifunctions:Status updates/2026-03-26/27/en 1198 79183 261191 261079 2026-03-27T12:11:18Z FuzzyBot 207 Importing a new version from external source 261191 wikitext text/x-wiki [[$1|Toby Hudson]] will be presenting [[$2|Wikifunctions in Practice: Reusable Logic for Wikimedia]] at [[$3|WikiCon Australia]] on 11 April 2026 at 12:00 local time at the [[$4|National Film and Sound Archive of Australia]] in [[$5|Canberra]]. 04pwtam42aaygpl4ptsiw5yx97cdlps Z32781 0 79188 261266 261125 2026-03-27T17:35:04Z Mormegil 150 fix expected result 261266 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32781" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32780", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32780", "Z32780K1": { "Z1K1": "Z13518", "Z13518K1": "1300783" }, "Z32780K2": { "Z1K1": "Z25501", "Z25501K1": { "Z1K1": "Z6091", "Z6091K1": "Q499327" } } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z866", "Z866K2": "milion tři sta tisíc sedm set osmdesát tři" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "jeden milion tři sta tisíc sedm set osmdesát tři" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } fdafu5sqi4npfi68o2c5r7uzeu0u0gx Z32782 0 79189 261267 261126 2026-03-27T17:35:35Z Mormegil 150 fix expected value 261267 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32782" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32780", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32780", "Z32780K1": { "Z1K1": "Z13518", "Z13518K1": "2015001107" }, "Z32780K2": { "Z1K1": "Z25501", "Z25501K1": { "Z1K1": "Z6091", "Z6091K1": "Q1775461" } } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z866", "Z866K2": "dvě miliardy patnáct milionů jeden tisíc sto sedm" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "dvě miliardy patnáct milionů jeden tisíc sto sedm" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } p7r6sfilicy3ahp3dua0usumj0qhp2a Z32787 0 79199 261218 261147 2026-03-27T13:59:26Z YoshiRulz 10156 Added Z32802 to the approved list of test cases 261218 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32787" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6004", "Z17K2": "Z32787K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "lexeme form" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z11" }, "Z8K3": [ "Z20", "Z32802" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32787" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "try synthesising IPA transcription for Lexeme Form" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "for languages with writing systems that match pronunciation" } ] } } 8cdzwdqfubaiilty1i6lg7bgl8tr19u 261232 261218 2026-03-27T14:53:54Z YoshiRulz 10156 Added Z32803 to the approved list of implementations 261232 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32787" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6004", "Z17K2": "Z32787K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "lexeme form" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z11" }, "Z8K3": [ "Z20", "Z32802" ], "Z8K4": [ "Z14", "Z32803" ], "Z8K5": "Z32787" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "try synthesising IPA transcription for Lexeme Form" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "for languages with writing systems that match pronunciation" } ] } } ig13o6fd3vj1zjzi0td4k84smz9ccv6 Z32790 0 79207 261185 261168 2026-03-27T12:03:29Z Sun8908 9804 261185 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32790" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32788", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z26107", "Z26107K1": "Z1006", "Z26107K2": { "Z1K1": "Z7", "Z7K1": "Z21394", "Z21394K1": [ "Z6", { "Z1K1": "Z7", "Z7K1": "Z23753", "Z23753K1": { "Z1K1": "Z18", "Z18K1": "Z32788K1" }, "Z23753K2": "Z1006" }, "是位於", { "Z1K1": "Z7", "Z7K1": "Z23753", "Z23753K1": { "Z1K1": "Z18", "Z18K1": "Z32788K3" }, "Z23753K2": "Z1006" }, "的", { "Z1K1": "Z7", "Z7K1": "Z23753", "Z23753K1": { "Z1K1": "Z18", "Z18K1": "Z32788K2" }, "Z23753K2": "Z1006" }, "。" ] } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "State location using entity and class, zh, compose" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 35c0nypb69qslo0b8hed1mhtcp1z4lk Z32791 0 79208 261194 261172 2026-03-27T12:21:28Z Sun8908 9804 261194 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32791" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32788", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32788", "Z32788K1": { "Z1K1": "Z6091", "Z6091K1": "Q7473516" }, "Z32788K2": { "Z1K1": "Z6091", "Z6091K1": "Q515" }, "Z32788K3": { "Z1K1": "Z6091", "Z6091K1": "Q17" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": { "Z1K1": "Z60", "Z60K1": "zh", "Z60K2": [ "Z6" ] }, "Z11K2": "東京是位於日本的城市。" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1006", "Z11K2": "東京是位於日本的城市。" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 0irzdc9q47mokqty7bs4w216hd4qx7k Translations:Wikifunctions:Status updates/2026-03-26/Page display title/de 1198 79210 261174 2026-03-27T11:59:33Z Ameisenigel 44 Created page with "Wikifunctions:Status-Updates/2026-03-26" 261174 wikitext text/x-wiki Wikifunctions:Status-Updates/2026-03-26 l7dm8d6efg9yaahcahr85m5wd4b2ha8 Wikifunctions:Status updates/2026-03-26/de 4 79211 261175 2026-03-27T11:59:33Z Ameisenigel 44 Created page with "Wikifunctions:Status-Updates/2026-03-26" 261175 wikitext text/x-wiki <languages/> {{Wikifunctions updates | prevlabel = <span lang="en" dir="ltr" class="mw-content-ltr">Previous update</span> | prev = 2026-03-19 | nextlabel = <span lang="en" dir="ltr" class="mw-content-ltr">Next update</span> | next = }} <div lang="en" dir="ltr" class="mw-content-ltr"> === First few days of Abstract Wikipedia Beta === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Last week we kicked off the Beta of Abstract Wikipedia, and many of you came to visit and some of you came to become part of a new community. We are very excited about how things are going! </div> <div lang="en" dir="ltr" class="mw-content-ltr"> The numbers are constantly changing, but so far already more than 120 articles have been started. [[User:ChaoticVermillion|ChaoticVermillion]] has created [https://abstract.wikipedia.org/wiki/User:ChaoticVermillion/First_Abstract_Wiki_pages a page to commemorate the first 25 articles]. One thing we are particularly happy about is that more than 75 volunteers have made contributions to the wiki, and the wiki has seen more than 1000 edits already. We understand that contributing to Abstract Wikipedia is currently not a very user-friendly experience, and a lot of things are broken. We have already fixed a whole slew of things (see the section on Recent Changes in the software below), and we are working on many more. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Based on the initial reaction and your feedback, we are changing our plans for the upcoming quarters, to focus on bugfixes, features, and capabilities that you are raising. We are monitoring the Phabricator board, the Project chat, and the Telegram / IRC chat, and collecting your feedback and suggestions. This will be our priority in the coming months. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We are also excited to see that Wikifunctions is seeing a significant increase in the pace of new functions being created. This week we report 79 new functions! Some of them are in languages that had no functions before, and some of them are providing functionality that helps with writing Abstract Wikipedia articles. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> By the way, here’s one tip: currently, caching for Abstract Wikipedia happens on the level of the “fragment”. This means that by putting several sentences into a single paragraph, the paragraph as a whole is being run, may cause time-outs, and will be cached. Instead, if, for now, you put one sentence into each fragment, caching and evaluation can be more spread out and should allow for more content. Eventually we want to fix that, but it may take a moment, so you can try out more by following this tip for now. This can be changed later again and pulled together into paragraphs if so wished. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> As you might have noticed, there have been a few bugs that we've fixed and tweaks that we've made. We fixed a bug that meant that the code mis-configured some namespaces, so broke talk and User pages and published the very first articles in the wrong place ([[:phab:T420617|T420617]], [[:phab:T420649|T420649]]). We switched the orchestrator's composition language temporarily back to v1 ([[:phab:T418887|T418887]]), then made some quick fixes ([[:phab:T419833|T419833]]) and then re-enabled it — see below. We switched up a hard-coded link for policies to the new initial policy list. We fixed a bug that meant the creation workflow looked in the wrong place to make sure you didn't over-write an existing page ([[:phab:T420725|T420725]]), and it worked if you browsed directly to Special:CreateAbstract/Q123456 ([[:phab:T420916|T420916]]). We adjusted the display of previews to correctly set the language's RTL status too ([[:phab:T420687|T420687]]) and we added Help links for the pages to view and create Abstract articles.We're working now on improving performance and caching, fixing the /view/ links to work, making sure Abstract Wikipedia pages show up on the Tools database views, adding to the site statistics process, and a dozen other little things. Thank you for bearing with us! </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Keep giving us feedback! We really appreciate your willingness to try things out, and are very happy to see you accepting this early version of Abstract Wikipedia. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Status of Composition Language v2 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> A couple of weeks ago, we enabled composition language v2 in production. There were some minor bugs that the team was able to triage, but there was also a set of function calls that became categorically impossible to specify. An example case is [[:phab:T419833|here]]. These function calls worked in v1 because of 1) an extremely lazy execution model and 2) lax error handling. In v2, execution order is much stricter (and more comprehensible!), and error handling has become predictable. As a result, when a [[Z7|Z7/Function call]] will cause an error, that error is immediately returned in v2. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We have since added [https://gitlab.wikimedia.org/repos/abstract-wiki/wikifunctions/function-orchestrator/-/merge_requests/606 a temporary layer of indirection] (hereinafter the "scope hack") to the v2 composition language. This will cause affected functions to work much in the way they did in v1. However, this is a temporary measure. It is bad for performance and it makes the Wikifunctions language semantics a bit strange. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> In future, compositions that depend on error-handling functions (e.g. [[Z850|Z850/Try-catch]] and [[Z853|Z853/Get error]]) should wrap top-level [[Z7|Z7/Function calls]] in [[Z99|Z99/Quote]], then use [[Z899|Z899/Unquote]] inside of the composition. This technique is verified to work in all versions of the composition language, so it will be possible to migrate all existing functions. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Another unwanted side effect of v2 and its new strategy for error handling is that many of the failing function calls might return a different error type. While we will work to always return the most accurate and descriptive error type, it is possible that many calls that rely on [[Z850|Z850/Try-catch]] to catch a specific error type will now fail until the expected error type is corrected to the one thrown by v2. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We will document all the content issues that we come across and track their status here: [[Wikifunctions:Request for cleanup|Wikifunctions:Request for cleanup]]. Once these functions have been migrated, we will roll back the scope hack. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Recent Changes in the software === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> This week on Wikifunctions, we made the following changes: When you're editing an article with the visual editor with a Wikifunctions call that creates a reference, we now show the style more clearly. We also now show the standard MediaWiki warning box when you're editing an old version of a Wikifunctions Object page ([[:phab:T364318|T364318]]). </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Wikifunctions presentation at WikiCon Australia on 11 April 2026 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> [[User:99of9|Toby Hudson]] will be presenting [[:meta:Event:WikiCon Australia 2026/Submissions/Wikifunctions in Practice: Reusable Logic for Wikimedia|Wikifunctions in Practice: Reusable Logic for Wikimedia]] at [[:meta:Event:WikiCon Australia 2026|WikiCon Australia]] on 11 April 2026 at 12:00 local time at the [[:en:National Film and Sound Archive|National Film and Sound Archive of Australia]] in [[:en:Canberra|Kanbarra]]. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Here is the description of the talk: </div> : <span lang="en" dir="ltr" class="mw-content-ltr">''Wikifunctions promises something simple but ambitious: write logic once, and make it reusable across Wikimedia projects and languages. Small, well-chosen functions can have outsized impact and eliminate some updating, copy-pasting, or even translation.''</span> : <span lang="en" dir="ltr" class="mw-content-ltr">''This talk focuses on goals and practical usage rather than internals or programming, but will allow plenty of time for questions from the audience to dig into the details. We'll see what Wikifunctions is and what it's for. We will test a range of existing functions on Wikifunctions directly. We will see how to embed the result of a function call in a regular Wiki page elsewhere on a sister project. Then we will look ahead to how Wikifunctions will play a key role in the future Abstract Wikipedia.''</span> <div lang="en" dir="ltr" class="mw-content-ltr"> Thank you Toby for giving this presentation! And everyone have fun at WikiCon Australia! </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Volunteer’s Corner upcoming on 13 April 2026 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> The next Volunteers’ Corner will be on [https://zonestamp.toolforge.org/1776101400 Monday, 13 April 2026 at 17:30 UTC]. We plan to have the following agenda: there will be time to ask questions and discuss all matters arising. We will celebrate the launch of Abstract Wikipedia Beta. If we have time, we will either write a function together or work on an Abstract Wikipedia article together (volunteer-led). Everyone is welcome to join us on [https://meet.google.com/xuy-njxh-rkw Google Meet]. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Fresh Functions weekly: 76 new Functions === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> This week we had 76 (!) new functions. That’s a lot more than usual, driven by the launch of Abstract Wikipedia Beta. Here is an incomplete list of functions with implementations and passing tests to get a taste of what functions have been created. Thanks everybody for contributing! </div> * {{Z|Z32085}} * {{Z|Z32097}} * {{Z|Z32109}} * {{Z|Z32123}} * {{Z|Z32126}} * {{Z|Z32145}} * {{Z|Z32149}} * {{Z|Z32152}} * {{Z|Z32160}} * {{Z|Z32163}} * {{Z|Z32177}} * {{Z|Z32179}} * {{Z|Z32180}} * {{Z|Z32185}} * {{Z|Z32193}} * {{Z|Z32199}} * {{Z|Z32204}} * {{Z|Z32208}} * {{Z|Z32212}} * {{Z|Z32215}} * {{Z|Z32225}} * {{Z|Z32229}} * {{Z|Z32230}} * {{Z|Z32234}} * {{Z|Z32244}} * {{Z|Z32249}} * {{Z|Z32261}} * {{Z|Z32290}} * {{Z|Z32302}} * {{Z|Z32308}} * {{Z|Z32321}} * {{Z|Z32326}} * {{Z|Z32330}} * {{Z|Z32340}} * {{Z|Z32343}} * {{Z|Z32347}} * {{Z|Z32355}} * {{Z|Z32371}} * {{Z|Z32373}} <div lang="en" dir="ltr" class="mw-content-ltr"> A [https://www.wikifunctions.org/wiki/Special:ListObjectsByType?type=Z8&orderby=latest complete list of all functions sorted by when they were created] is available. </div> [[Category:Status updates{{#translation:}}|2026-03-26]] nlfxjpwwai2gzrx6mmniyrlm1ok38it 261177 261175 2026-03-27T11:59:36Z Ameisenigel 44 Created page with "Vorheriges Update" 261177 wikitext text/x-wiki <languages/> {{Wikifunctions updates | prevlabel = Vorheriges Update | prev = 2026-03-19 | nextlabel = <span lang="en" dir="ltr" class="mw-content-ltr">Next update</span> | next = }} <div lang="en" dir="ltr" class="mw-content-ltr"> === First few days of Abstract Wikipedia Beta === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Last week we kicked off the Beta of Abstract Wikipedia, and many of you came to visit and some of you came to become part of a new community. We are very excited about how things are going! </div> <div lang="en" dir="ltr" class="mw-content-ltr"> The numbers are constantly changing, but so far already more than 120 articles have been started. [[User:ChaoticVermillion|ChaoticVermillion]] has created [https://abstract.wikipedia.org/wiki/User:ChaoticVermillion/First_Abstract_Wiki_pages a page to commemorate the first 25 articles]. One thing we are particularly happy about is that more than 75 volunteers have made contributions to the wiki, and the wiki has seen more than 1000 edits already. We understand that contributing to Abstract Wikipedia is currently not a very user-friendly experience, and a lot of things are broken. We have already fixed a whole slew of things (see the section on Recent Changes in the software below), and we are working on many more. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Based on the initial reaction and your feedback, we are changing our plans for the upcoming quarters, to focus on bugfixes, features, and capabilities that you are raising. We are monitoring the Phabricator board, the Project chat, and the Telegram / IRC chat, and collecting your feedback and suggestions. This will be our priority in the coming months. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We are also excited to see that Wikifunctions is seeing a significant increase in the pace of new functions being created. This week we report 79 new functions! Some of them are in languages that had no functions before, and some of them are providing functionality that helps with writing Abstract Wikipedia articles. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> By the way, here’s one tip: currently, caching for Abstract Wikipedia happens on the level of the “fragment”. This means that by putting several sentences into a single paragraph, the paragraph as a whole is being run, may cause time-outs, and will be cached. Instead, if, for now, you put one sentence into each fragment, caching and evaluation can be more spread out and should allow for more content. Eventually we want to fix that, but it may take a moment, so you can try out more by following this tip for now. This can be changed later again and pulled together into paragraphs if so wished. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> As you might have noticed, there have been a few bugs that we've fixed and tweaks that we've made. We fixed a bug that meant that the code mis-configured some namespaces, so broke talk and User pages and published the very first articles in the wrong place ([[:phab:T420617|T420617]], [[:phab:T420649|T420649]]). We switched the orchestrator's composition language temporarily back to v1 ([[:phab:T418887|T418887]]), then made some quick fixes ([[:phab:T419833|T419833]]) and then re-enabled it — see below. We switched up a hard-coded link for policies to the new initial policy list. We fixed a bug that meant the creation workflow looked in the wrong place to make sure you didn't over-write an existing page ([[:phab:T420725|T420725]]), and it worked if you browsed directly to Special:CreateAbstract/Q123456 ([[:phab:T420916|T420916]]). We adjusted the display of previews to correctly set the language's RTL status too ([[:phab:T420687|T420687]]) and we added Help links for the pages to view and create Abstract articles.We're working now on improving performance and caching, fixing the /view/ links to work, making sure Abstract Wikipedia pages show up on the Tools database views, adding to the site statistics process, and a dozen other little things. Thank you for bearing with us! </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Keep giving us feedback! We really appreciate your willingness to try things out, and are very happy to see you accepting this early version of Abstract Wikipedia. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Status of Composition Language v2 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> A couple of weeks ago, we enabled composition language v2 in production. There were some minor bugs that the team was able to triage, but there was also a set of function calls that became categorically impossible to specify. An example case is [[:phab:T419833|here]]. These function calls worked in v1 because of 1) an extremely lazy execution model and 2) lax error handling. In v2, execution order is much stricter (and more comprehensible!), and error handling has become predictable. As a result, when a [[Z7|Z7/Function call]] will cause an error, that error is immediately returned in v2. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We have since added [https://gitlab.wikimedia.org/repos/abstract-wiki/wikifunctions/function-orchestrator/-/merge_requests/606 a temporary layer of indirection] (hereinafter the "scope hack") to the v2 composition language. This will cause affected functions to work much in the way they did in v1. However, this is a temporary measure. It is bad for performance and it makes the Wikifunctions language semantics a bit strange. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> In future, compositions that depend on error-handling functions (e.g. [[Z850|Z850/Try-catch]] and [[Z853|Z853/Get error]]) should wrap top-level [[Z7|Z7/Function calls]] in [[Z99|Z99/Quote]], then use [[Z899|Z899/Unquote]] inside of the composition. This technique is verified to work in all versions of the composition language, so it will be possible to migrate all existing functions. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Another unwanted side effect of v2 and its new strategy for error handling is that many of the failing function calls might return a different error type. While we will work to always return the most accurate and descriptive error type, it is possible that many calls that rely on [[Z850|Z850/Try-catch]] to catch a specific error type will now fail until the expected error type is corrected to the one thrown by v2. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We will document all the content issues that we come across and track their status here: [[Wikifunctions:Request for cleanup|Wikifunctions:Request for cleanup]]. Once these functions have been migrated, we will roll back the scope hack. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Recent Changes in the software === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> This week on Wikifunctions, we made the following changes: When you're editing an article with the visual editor with a Wikifunctions call that creates a reference, we now show the style more clearly. We also now show the standard MediaWiki warning box when you're editing an old version of a Wikifunctions Object page ([[:phab:T364318|T364318]]). </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Wikifunctions presentation at WikiCon Australia on 11 April 2026 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> [[User:99of9|Toby Hudson]] will be presenting [[:meta:Event:WikiCon Australia 2026/Submissions/Wikifunctions in Practice: Reusable Logic for Wikimedia|Wikifunctions in Practice: Reusable Logic for Wikimedia]] at [[:meta:Event:WikiCon Australia 2026|WikiCon Australia]] on 11 April 2026 at 12:00 local time at the [[:en:National Film and Sound Archive|National Film and Sound Archive of Australia]] in [[:en:Canberra|Kanbarra]]. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Here is the description of the talk: </div> : <span lang="en" dir="ltr" class="mw-content-ltr">''Wikifunctions promises something simple but ambitious: write logic once, and make it reusable across Wikimedia projects and languages. Small, well-chosen functions can have outsized impact and eliminate some updating, copy-pasting, or even translation.''</span> : <span lang="en" dir="ltr" class="mw-content-ltr">''This talk focuses on goals and practical usage rather than internals or programming, but will allow plenty of time for questions from the audience to dig into the details. We'll see what Wikifunctions is and what it's for. We will test a range of existing functions on Wikifunctions directly. We will see how to embed the result of a function call in a regular Wiki page elsewhere on a sister project. Then we will look ahead to how Wikifunctions will play a key role in the future Abstract Wikipedia.''</span> <div lang="en" dir="ltr" class="mw-content-ltr"> Thank you Toby for giving this presentation! And everyone have fun at WikiCon Australia! </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Volunteer’s Corner upcoming on 13 April 2026 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> The next Volunteers’ Corner will be on [https://zonestamp.toolforge.org/1776101400 Monday, 13 April 2026 at 17:30 UTC]. We plan to have the following agenda: there will be time to ask questions and discuss all matters arising. We will celebrate the launch of Abstract Wikipedia Beta. If we have time, we will either write a function together or work on an Abstract Wikipedia article together (volunteer-led). Everyone is welcome to join us on [https://meet.google.com/xuy-njxh-rkw Google Meet]. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Fresh Functions weekly: 76 new Functions === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> This week we had 76 (!) new functions. That’s a lot more than usual, driven by the launch of Abstract Wikipedia Beta. Here is an incomplete list of functions with implementations and passing tests to get a taste of what functions have been created. Thanks everybody for contributing! </div> * {{Z|Z32085}} * {{Z|Z32097}} * {{Z|Z32109}} * {{Z|Z32123}} * {{Z|Z32126}} * {{Z|Z32145}} * {{Z|Z32149}} * {{Z|Z32152}} * {{Z|Z32160}} * {{Z|Z32163}} * {{Z|Z32177}} * {{Z|Z32179}} * {{Z|Z32180}} * {{Z|Z32185}} * {{Z|Z32193}} * {{Z|Z32199}} * {{Z|Z32204}} * {{Z|Z32208}} * {{Z|Z32212}} * {{Z|Z32215}} * {{Z|Z32225}} * {{Z|Z32229}} * {{Z|Z32230}} * {{Z|Z32234}} * {{Z|Z32244}} * {{Z|Z32249}} * {{Z|Z32261}} * {{Z|Z32290}} * {{Z|Z32302}} * {{Z|Z32308}} * {{Z|Z32321}} * {{Z|Z32326}} * {{Z|Z32330}} * {{Z|Z32340}} * {{Z|Z32343}} * {{Z|Z32347}} * {{Z|Z32355}} * {{Z|Z32371}} * {{Z|Z32373}} <div lang="en" dir="ltr" class="mw-content-ltr"> A [https://www.wikifunctions.org/wiki/Special:ListObjectsByType?type=Z8&orderby=latest complete list of all functions sorted by when they were created] is available. </div> [[Category:Status updates{{#translation:}}|2026-03-26]] rwey6jl5yxhos44g70u0xi3aiwfcvuw 261179 261177 2026-03-27T11:59:49Z Ameisenigel 44 Created page with "Nächstes Update" 261179 wikitext text/x-wiki <languages/> {{Wikifunctions updates | prevlabel = Vorheriges Update | prev = 2026-03-19 | nextlabel = Nächstes Update | next = }} <div lang="en" dir="ltr" class="mw-content-ltr"> === First few days of Abstract Wikipedia Beta === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Last week we kicked off the Beta of Abstract Wikipedia, and many of you came to visit and some of you came to become part of a new community. We are very excited about how things are going! </div> <div lang="en" dir="ltr" class="mw-content-ltr"> The numbers are constantly changing, but so far already more than 120 articles have been started. [[User:ChaoticVermillion|ChaoticVermillion]] has created [https://abstract.wikipedia.org/wiki/User:ChaoticVermillion/First_Abstract_Wiki_pages a page to commemorate the first 25 articles]. One thing we are particularly happy about is that more than 75 volunteers have made contributions to the wiki, and the wiki has seen more than 1000 edits already. We understand that contributing to Abstract Wikipedia is currently not a very user-friendly experience, and a lot of things are broken. We have already fixed a whole slew of things (see the section on Recent Changes in the software below), and we are working on many more. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Based on the initial reaction and your feedback, we are changing our plans for the upcoming quarters, to focus on bugfixes, features, and capabilities that you are raising. We are monitoring the Phabricator board, the Project chat, and the Telegram / IRC chat, and collecting your feedback and suggestions. This will be our priority in the coming months. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We are also excited to see that Wikifunctions is seeing a significant increase in the pace of new functions being created. This week we report 79 new functions! Some of them are in languages that had no functions before, and some of them are providing functionality that helps with writing Abstract Wikipedia articles. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> By the way, here’s one tip: currently, caching for Abstract Wikipedia happens on the level of the “fragment”. This means that by putting several sentences into a single paragraph, the paragraph as a whole is being run, may cause time-outs, and will be cached. Instead, if, for now, you put one sentence into each fragment, caching and evaluation can be more spread out and should allow for more content. Eventually we want to fix that, but it may take a moment, so you can try out more by following this tip for now. This can be changed later again and pulled together into paragraphs if so wished. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> As you might have noticed, there have been a few bugs that we've fixed and tweaks that we've made. We fixed a bug that meant that the code mis-configured some namespaces, so broke talk and User pages and published the very first articles in the wrong place ([[:phab:T420617|T420617]], [[:phab:T420649|T420649]]). We switched the orchestrator's composition language temporarily back to v1 ([[:phab:T418887|T418887]]), then made some quick fixes ([[:phab:T419833|T419833]]) and then re-enabled it — see below. We switched up a hard-coded link for policies to the new initial policy list. We fixed a bug that meant the creation workflow looked in the wrong place to make sure you didn't over-write an existing page ([[:phab:T420725|T420725]]), and it worked if you browsed directly to Special:CreateAbstract/Q123456 ([[:phab:T420916|T420916]]). We adjusted the display of previews to correctly set the language's RTL status too ([[:phab:T420687|T420687]]) and we added Help links for the pages to view and create Abstract articles.We're working now on improving performance and caching, fixing the /view/ links to work, making sure Abstract Wikipedia pages show up on the Tools database views, adding to the site statistics process, and a dozen other little things. Thank you for bearing with us! </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Keep giving us feedback! We really appreciate your willingness to try things out, and are very happy to see you accepting this early version of Abstract Wikipedia. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Status of Composition Language v2 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> A couple of weeks ago, we enabled composition language v2 in production. There were some minor bugs that the team was able to triage, but there was also a set of function calls that became categorically impossible to specify. An example case is [[:phab:T419833|here]]. These function calls worked in v1 because of 1) an extremely lazy execution model and 2) lax error handling. In v2, execution order is much stricter (and more comprehensible!), and error handling has become predictable. As a result, when a [[Z7|Z7/Function call]] will cause an error, that error is immediately returned in v2. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We have since added [https://gitlab.wikimedia.org/repos/abstract-wiki/wikifunctions/function-orchestrator/-/merge_requests/606 a temporary layer of indirection] (hereinafter the "scope hack") to the v2 composition language. This will cause affected functions to work much in the way they did in v1. However, this is a temporary measure. It is bad for performance and it makes the Wikifunctions language semantics a bit strange. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> In future, compositions that depend on error-handling functions (e.g. [[Z850|Z850/Try-catch]] and [[Z853|Z853/Get error]]) should wrap top-level [[Z7|Z7/Function calls]] in [[Z99|Z99/Quote]], then use [[Z899|Z899/Unquote]] inside of the composition. This technique is verified to work in all versions of the composition language, so it will be possible to migrate all existing functions. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Another unwanted side effect of v2 and its new strategy for error handling is that many of the failing function calls might return a different error type. While we will work to always return the most accurate and descriptive error type, it is possible that many calls that rely on [[Z850|Z850/Try-catch]] to catch a specific error type will now fail until the expected error type is corrected to the one thrown by v2. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We will document all the content issues that we come across and track their status here: [[Wikifunctions:Request for cleanup|Wikifunctions:Request for cleanup]]. Once these functions have been migrated, we will roll back the scope hack. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Recent Changes in the software === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> This week on Wikifunctions, we made the following changes: When you're editing an article with the visual editor with a Wikifunctions call that creates a reference, we now show the style more clearly. We also now show the standard MediaWiki warning box when you're editing an old version of a Wikifunctions Object page ([[:phab:T364318|T364318]]). </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Wikifunctions presentation at WikiCon Australia on 11 April 2026 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> [[User:99of9|Toby Hudson]] will be presenting [[:meta:Event:WikiCon Australia 2026/Submissions/Wikifunctions in Practice: Reusable Logic for Wikimedia|Wikifunctions in Practice: Reusable Logic for Wikimedia]] at [[:meta:Event:WikiCon Australia 2026|WikiCon Australia]] on 11 April 2026 at 12:00 local time at the [[:en:National Film and Sound Archive|National Film and Sound Archive of Australia]] in [[:en:Canberra|Kanbarra]]. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Here is the description of the talk: </div> : <span lang="en" dir="ltr" class="mw-content-ltr">''Wikifunctions promises something simple but ambitious: write logic once, and make it reusable across Wikimedia projects and languages. Small, well-chosen functions can have outsized impact and eliminate some updating, copy-pasting, or even translation.''</span> : <span lang="en" dir="ltr" class="mw-content-ltr">''This talk focuses on goals and practical usage rather than internals or programming, but will allow plenty of time for questions from the audience to dig into the details. We'll see what Wikifunctions is and what it's for. We will test a range of existing functions on Wikifunctions directly. We will see how to embed the result of a function call in a regular Wiki page elsewhere on a sister project. Then we will look ahead to how Wikifunctions will play a key role in the future Abstract Wikipedia.''</span> <div lang="en" dir="ltr" class="mw-content-ltr"> Thank you Toby for giving this presentation! And everyone have fun at WikiCon Australia! </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Volunteer’s Corner upcoming on 13 April 2026 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> The next Volunteers’ Corner will be on [https://zonestamp.toolforge.org/1776101400 Monday, 13 April 2026 at 17:30 UTC]. We plan to have the following agenda: there will be time to ask questions and discuss all matters arising. We will celebrate the launch of Abstract Wikipedia Beta. If we have time, we will either write a function together or work on an Abstract Wikipedia article together (volunteer-led). Everyone is welcome to join us on [https://meet.google.com/xuy-njxh-rkw Google Meet]. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Fresh Functions weekly: 76 new Functions === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> This week we had 76 (!) new functions. That’s a lot more than usual, driven by the launch of Abstract Wikipedia Beta. Here is an incomplete list of functions with implementations and passing tests to get a taste of what functions have been created. Thanks everybody for contributing! </div> * {{Z|Z32085}} * {{Z|Z32097}} * {{Z|Z32109}} * {{Z|Z32123}} * {{Z|Z32126}} * {{Z|Z32145}} * {{Z|Z32149}} * {{Z|Z32152}} * {{Z|Z32160}} * {{Z|Z32163}} * {{Z|Z32177}} * {{Z|Z32179}} * {{Z|Z32180}} * {{Z|Z32185}} * {{Z|Z32193}} * {{Z|Z32199}} * {{Z|Z32204}} * {{Z|Z32208}} * {{Z|Z32212}} * {{Z|Z32215}} * {{Z|Z32225}} * {{Z|Z32229}} * {{Z|Z32230}} * {{Z|Z32234}} * {{Z|Z32244}} * {{Z|Z32249}} * {{Z|Z32261}} * {{Z|Z32290}} * {{Z|Z32302}} * {{Z|Z32308}} * {{Z|Z32321}} * {{Z|Z32326}} * {{Z|Z32330}} * {{Z|Z32340}} * {{Z|Z32343}} * {{Z|Z32347}} * {{Z|Z32355}} * {{Z|Z32371}} * {{Z|Z32373}} <div lang="en" dir="ltr" class="mw-content-ltr"> A [https://www.wikifunctions.org/wiki/Special:ListObjectsByType?type=Z8&orderby=latest complete list of all functions sorted by when they were created] is available. </div> [[Category:Status updates{{#translation:}}|2026-03-26]] 35jog9z45xa6lff8z1ddozs8n8sn6kn 261181 261179 2026-03-27T12:00:08Z Ameisenigel 44 Created page with "=== Erste Tage der Abstrakten Wikipedia Beta ===" 261181 wikitext text/x-wiki <languages/> {{Wikifunctions updates | prevlabel = Vorheriges Update | prev = 2026-03-19 | nextlabel = Nächstes Update | next = }} <span id="First_few_days_of_Abstract_Wikipedia_Beta"></span> === Erste Tage der Abstrakten Wikipedia Beta === <div lang="en" dir="ltr" class="mw-content-ltr"> Last week we kicked off the Beta of Abstract Wikipedia, and many of you came to visit and some of you came to become part of a new community. We are very excited about how things are going! </div> <div lang="en" dir="ltr" class="mw-content-ltr"> The numbers are constantly changing, but so far already more than 120 articles have been started. [[User:ChaoticVermillion|ChaoticVermillion]] has created [https://abstract.wikipedia.org/wiki/User:ChaoticVermillion/First_Abstract_Wiki_pages a page to commemorate the first 25 articles]. One thing we are particularly happy about is that more than 75 volunteers have made contributions to the wiki, and the wiki has seen more than 1000 edits already. We understand that contributing to Abstract Wikipedia is currently not a very user-friendly experience, and a lot of things are broken. We have already fixed a whole slew of things (see the section on Recent Changes in the software below), and we are working on many more. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Based on the initial reaction and your feedback, we are changing our plans for the upcoming quarters, to focus on bugfixes, features, and capabilities that you are raising. We are monitoring the Phabricator board, the Project chat, and the Telegram / IRC chat, and collecting your feedback and suggestions. This will be our priority in the coming months. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We are also excited to see that Wikifunctions is seeing a significant increase in the pace of new functions being created. This week we report 79 new functions! Some of them are in languages that had no functions before, and some of them are providing functionality that helps with writing Abstract Wikipedia articles. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> By the way, here’s one tip: currently, caching for Abstract Wikipedia happens on the level of the “fragment”. This means that by putting several sentences into a single paragraph, the paragraph as a whole is being run, may cause time-outs, and will be cached. Instead, if, for now, you put one sentence into each fragment, caching and evaluation can be more spread out and should allow for more content. Eventually we want to fix that, but it may take a moment, so you can try out more by following this tip for now. This can be changed later again and pulled together into paragraphs if so wished. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> As you might have noticed, there have been a few bugs that we've fixed and tweaks that we've made. We fixed a bug that meant that the code mis-configured some namespaces, so broke talk and User pages and published the very first articles in the wrong place ([[:phab:T420617|T420617]], [[:phab:T420649|T420649]]). We switched the orchestrator's composition language temporarily back to v1 ([[:phab:T418887|T418887]]), then made some quick fixes ([[:phab:T419833|T419833]]) and then re-enabled it — see below. We switched up a hard-coded link for policies to the new initial policy list. We fixed a bug that meant the creation workflow looked in the wrong place to make sure you didn't over-write an existing page ([[:phab:T420725|T420725]]), and it worked if you browsed directly to Special:CreateAbstract/Q123456 ([[:phab:T420916|T420916]]). We adjusted the display of previews to correctly set the language's RTL status too ([[:phab:T420687|T420687]]) and we added Help links for the pages to view and create Abstract articles.We're working now on improving performance and caching, fixing the /view/ links to work, making sure Abstract Wikipedia pages show up on the Tools database views, adding to the site statistics process, and a dozen other little things. Thank you for bearing with us! </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Keep giving us feedback! We really appreciate your willingness to try things out, and are very happy to see you accepting this early version of Abstract Wikipedia. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Status of Composition Language v2 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> A couple of weeks ago, we enabled composition language v2 in production. There were some minor bugs that the team was able to triage, but there was also a set of function calls that became categorically impossible to specify. An example case is [[:phab:T419833|here]]. These function calls worked in v1 because of 1) an extremely lazy execution model and 2) lax error handling. In v2, execution order is much stricter (and more comprehensible!), and error handling has become predictable. As a result, when a [[Z7|Z7/Function call]] will cause an error, that error is immediately returned in v2. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We have since added [https://gitlab.wikimedia.org/repos/abstract-wiki/wikifunctions/function-orchestrator/-/merge_requests/606 a temporary layer of indirection] (hereinafter the "scope hack") to the v2 composition language. This will cause affected functions to work much in the way they did in v1. However, this is a temporary measure. It is bad for performance and it makes the Wikifunctions language semantics a bit strange. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> In future, compositions that depend on error-handling functions (e.g. [[Z850|Z850/Try-catch]] and [[Z853|Z853/Get error]]) should wrap top-level [[Z7|Z7/Function calls]] in [[Z99|Z99/Quote]], then use [[Z899|Z899/Unquote]] inside of the composition. This technique is verified to work in all versions of the composition language, so it will be possible to migrate all existing functions. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Another unwanted side effect of v2 and its new strategy for error handling is that many of the failing function calls might return a different error type. While we will work to always return the most accurate and descriptive error type, it is possible that many calls that rely on [[Z850|Z850/Try-catch]] to catch a specific error type will now fail until the expected error type is corrected to the one thrown by v2. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We will document all the content issues that we come across and track their status here: [[Wikifunctions:Request for cleanup|Wikifunctions:Request for cleanup]]. Once these functions have been migrated, we will roll back the scope hack. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Recent Changes in the software === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> This week on Wikifunctions, we made the following changes: When you're editing an article with the visual editor with a Wikifunctions call that creates a reference, we now show the style more clearly. We also now show the standard MediaWiki warning box when you're editing an old version of a Wikifunctions Object page ([[:phab:T364318|T364318]]). </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Wikifunctions presentation at WikiCon Australia on 11 April 2026 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> [[User:99of9|Toby Hudson]] will be presenting [[:meta:Event:WikiCon Australia 2026/Submissions/Wikifunctions in Practice: Reusable Logic for Wikimedia|Wikifunctions in Practice: Reusable Logic for Wikimedia]] at [[:meta:Event:WikiCon Australia 2026|WikiCon Australia]] on 11 April 2026 at 12:00 local time at the [[:en:National Film and Sound Archive|National Film and Sound Archive of Australia]] in [[:en:Canberra|Kanbarra]]. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Here is the description of the talk: </div> : <span lang="en" dir="ltr" class="mw-content-ltr">''Wikifunctions promises something simple but ambitious: write logic once, and make it reusable across Wikimedia projects and languages. Small, well-chosen functions can have outsized impact and eliminate some updating, copy-pasting, or even translation.''</span> : <span lang="en" dir="ltr" class="mw-content-ltr">''This talk focuses on goals and practical usage rather than internals or programming, but will allow plenty of time for questions from the audience to dig into the details. We'll see what Wikifunctions is and what it's for. We will test a range of existing functions on Wikifunctions directly. We will see how to embed the result of a function call in a regular Wiki page elsewhere on a sister project. Then we will look ahead to how Wikifunctions will play a key role in the future Abstract Wikipedia.''</span> <div lang="en" dir="ltr" class="mw-content-ltr"> Thank you Toby for giving this presentation! And everyone have fun at WikiCon Australia! </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Volunteer’s Corner upcoming on 13 April 2026 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> The next Volunteers’ Corner will be on [https://zonestamp.toolforge.org/1776101400 Monday, 13 April 2026 at 17:30 UTC]. We plan to have the following agenda: there will be time to ask questions and discuss all matters arising. We will celebrate the launch of Abstract Wikipedia Beta. If we have time, we will either write a function together or work on an Abstract Wikipedia article together (volunteer-led). Everyone is welcome to join us on [https://meet.google.com/xuy-njxh-rkw Google Meet]. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Fresh Functions weekly: 76 new Functions === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> This week we had 76 (!) new functions. That’s a lot more than usual, driven by the launch of Abstract Wikipedia Beta. Here is an incomplete list of functions with implementations and passing tests to get a taste of what functions have been created. Thanks everybody for contributing! </div> * {{Z|Z32085}} * {{Z|Z32097}} * {{Z|Z32109}} * {{Z|Z32123}} * {{Z|Z32126}} * {{Z|Z32145}} * {{Z|Z32149}} * {{Z|Z32152}} * {{Z|Z32160}} * {{Z|Z32163}} * {{Z|Z32177}} * {{Z|Z32179}} * {{Z|Z32180}} * {{Z|Z32185}} * {{Z|Z32193}} * {{Z|Z32199}} * {{Z|Z32204}} * {{Z|Z32208}} * {{Z|Z32212}} * {{Z|Z32215}} * {{Z|Z32225}} * {{Z|Z32229}} * {{Z|Z32230}} * {{Z|Z32234}} * {{Z|Z32244}} * {{Z|Z32249}} * {{Z|Z32261}} * {{Z|Z32290}} * {{Z|Z32302}} * {{Z|Z32308}} * {{Z|Z32321}} * {{Z|Z32326}} * {{Z|Z32330}} * {{Z|Z32340}} * {{Z|Z32343}} * {{Z|Z32347}} * {{Z|Z32355}} * {{Z|Z32371}} * {{Z|Z32373}} <div lang="en" dir="ltr" class="mw-content-ltr"> A [https://www.wikifunctions.org/wiki/Special:ListObjectsByType?type=Z8&orderby=latest complete list of all functions sorted by when they were created] is available. </div> [[Category:Status updates{{#translation:}}|2026-03-26]] c32zysbf7lqy9p1yufus2hp0idjpb0p 261183 261181 2026-03-27T12:01:23Z Ameisenigel 44 Created page with "Letzte Woche starteten wir die Beta-Version der Abstrakten Wikipedia und viele von euch haben vorbeigeschaut, einige sind sogar Teil unserer neuen Community geworden. Wir freuen uns sehr über den bisherigen Verlauf!" 261183 wikitext text/x-wiki <languages/> {{Wikifunctions updates | prevlabel = Vorheriges Update | prev = 2026-03-19 | nextlabel = Nächstes Update | next = }} <span id="First_few_days_of_Abstract_Wikipedia_Beta"></span> === Erste Tage der Abstrakten Wikipedia Beta === Letzte Woche starteten wir die Beta-Version der Abstrakten Wikipedia und viele von euch haben vorbeigeschaut, einige sind sogar Teil unserer neuen Community geworden. Wir freuen uns sehr über den bisherigen Verlauf! <div lang="en" dir="ltr" class="mw-content-ltr"> The numbers are constantly changing, but so far already more than 120 articles have been started. [[User:ChaoticVermillion|ChaoticVermillion]] has created [https://abstract.wikipedia.org/wiki/User:ChaoticVermillion/First_Abstract_Wiki_pages a page to commemorate the first 25 articles]. One thing we are particularly happy about is that more than 75 volunteers have made contributions to the wiki, and the wiki has seen more than 1000 edits already. We understand that contributing to Abstract Wikipedia is currently not a very user-friendly experience, and a lot of things are broken. We have already fixed a whole slew of things (see the section on Recent Changes in the software below), and we are working on many more. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Based on the initial reaction and your feedback, we are changing our plans for the upcoming quarters, to focus on bugfixes, features, and capabilities that you are raising. We are monitoring the Phabricator board, the Project chat, and the Telegram / IRC chat, and collecting your feedback and suggestions. This will be our priority in the coming months. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We are also excited to see that Wikifunctions is seeing a significant increase in the pace of new functions being created. This week we report 79 new functions! Some of them are in languages that had no functions before, and some of them are providing functionality that helps with writing Abstract Wikipedia articles. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> By the way, here’s one tip: currently, caching for Abstract Wikipedia happens on the level of the “fragment”. This means that by putting several sentences into a single paragraph, the paragraph as a whole is being run, may cause time-outs, and will be cached. Instead, if, for now, you put one sentence into each fragment, caching and evaluation can be more spread out and should allow for more content. Eventually we want to fix that, but it may take a moment, so you can try out more by following this tip for now. This can be changed later again and pulled together into paragraphs if so wished. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> As you might have noticed, there have been a few bugs that we've fixed and tweaks that we've made. We fixed a bug that meant that the code mis-configured some namespaces, so broke talk and User pages and published the very first articles in the wrong place ([[:phab:T420617|T420617]], [[:phab:T420649|T420649]]). We switched the orchestrator's composition language temporarily back to v1 ([[:phab:T418887|T418887]]), then made some quick fixes ([[:phab:T419833|T419833]]) and then re-enabled it — see below. We switched up a hard-coded link for policies to the new initial policy list. We fixed a bug that meant the creation workflow looked in the wrong place to make sure you didn't over-write an existing page ([[:phab:T420725|T420725]]), and it worked if you browsed directly to Special:CreateAbstract/Q123456 ([[:phab:T420916|T420916]]). We adjusted the display of previews to correctly set the language's RTL status too ([[:phab:T420687|T420687]]) and we added Help links for the pages to view and create Abstract articles.We're working now on improving performance and caching, fixing the /view/ links to work, making sure Abstract Wikipedia pages show up on the Tools database views, adding to the site statistics process, and a dozen other little things. Thank you for bearing with us! </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Keep giving us feedback! We really appreciate your willingness to try things out, and are very happy to see you accepting this early version of Abstract Wikipedia. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Status of Composition Language v2 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> A couple of weeks ago, we enabled composition language v2 in production. There were some minor bugs that the team was able to triage, but there was also a set of function calls that became categorically impossible to specify. An example case is [[:phab:T419833|here]]. These function calls worked in v1 because of 1) an extremely lazy execution model and 2) lax error handling. In v2, execution order is much stricter (and more comprehensible!), and error handling has become predictable. As a result, when a [[Z7|Z7/Function call]] will cause an error, that error is immediately returned in v2. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We have since added [https://gitlab.wikimedia.org/repos/abstract-wiki/wikifunctions/function-orchestrator/-/merge_requests/606 a temporary layer of indirection] (hereinafter the "scope hack") to the v2 composition language. This will cause affected functions to work much in the way they did in v1. However, this is a temporary measure. It is bad for performance and it makes the Wikifunctions language semantics a bit strange. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> In future, compositions that depend on error-handling functions (e.g. [[Z850|Z850/Try-catch]] and [[Z853|Z853/Get error]]) should wrap top-level [[Z7|Z7/Function calls]] in [[Z99|Z99/Quote]], then use [[Z899|Z899/Unquote]] inside of the composition. This technique is verified to work in all versions of the composition language, so it will be possible to migrate all existing functions. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Another unwanted side effect of v2 and its new strategy for error handling is that many of the failing function calls might return a different error type. While we will work to always return the most accurate and descriptive error type, it is possible that many calls that rely on [[Z850|Z850/Try-catch]] to catch a specific error type will now fail until the expected error type is corrected to the one thrown by v2. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We will document all the content issues that we come across and track their status here: [[Wikifunctions:Request for cleanup|Wikifunctions:Request for cleanup]]. Once these functions have been migrated, we will roll back the scope hack. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Recent Changes in the software === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> This week on Wikifunctions, we made the following changes: When you're editing an article with the visual editor with a Wikifunctions call that creates a reference, we now show the style more clearly. We also now show the standard MediaWiki warning box when you're editing an old version of a Wikifunctions Object page ([[:phab:T364318|T364318]]). </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Wikifunctions presentation at WikiCon Australia on 11 April 2026 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> [[User:99of9|Toby Hudson]] will be presenting [[:meta:Event:WikiCon Australia 2026/Submissions/Wikifunctions in Practice: Reusable Logic for Wikimedia|Wikifunctions in Practice: Reusable Logic for Wikimedia]] at [[:meta:Event:WikiCon Australia 2026|WikiCon Australia]] on 11 April 2026 at 12:00 local time at the [[:en:National Film and Sound Archive|National Film and Sound Archive of Australia]] in [[:en:Canberra|Kanbarra]]. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Here is the description of the talk: </div> : <span lang="en" dir="ltr" class="mw-content-ltr">''Wikifunctions promises something simple but ambitious: write logic once, and make it reusable across Wikimedia projects and languages. Small, well-chosen functions can have outsized impact and eliminate some updating, copy-pasting, or even translation.''</span> : <span lang="en" dir="ltr" class="mw-content-ltr">''This talk focuses on goals and practical usage rather than internals or programming, but will allow plenty of time for questions from the audience to dig into the details. We'll see what Wikifunctions is and what it's for. We will test a range of existing functions on Wikifunctions directly. We will see how to embed the result of a function call in a regular Wiki page elsewhere on a sister project. Then we will look ahead to how Wikifunctions will play a key role in the future Abstract Wikipedia.''</span> <div lang="en" dir="ltr" class="mw-content-ltr"> Thank you Toby for giving this presentation! And everyone have fun at WikiCon Australia! </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Volunteer’s Corner upcoming on 13 April 2026 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> The next Volunteers’ Corner will be on [https://zonestamp.toolforge.org/1776101400 Monday, 13 April 2026 at 17:30 UTC]. We plan to have the following agenda: there will be time to ask questions and discuss all matters arising. We will celebrate the launch of Abstract Wikipedia Beta. If we have time, we will either write a function together or work on an Abstract Wikipedia article together (volunteer-led). Everyone is welcome to join us on [https://meet.google.com/xuy-njxh-rkw Google Meet]. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Fresh Functions weekly: 76 new Functions === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> This week we had 76 (!) new functions. That’s a lot more than usual, driven by the launch of Abstract Wikipedia Beta. Here is an incomplete list of functions with implementations and passing tests to get a taste of what functions have been created. Thanks everybody for contributing! </div> * {{Z|Z32085}} * {{Z|Z32097}} * {{Z|Z32109}} * {{Z|Z32123}} * {{Z|Z32126}} * {{Z|Z32145}} * {{Z|Z32149}} * {{Z|Z32152}} * {{Z|Z32160}} * {{Z|Z32163}} * {{Z|Z32177}} * {{Z|Z32179}} * {{Z|Z32180}} * {{Z|Z32185}} * {{Z|Z32193}} * {{Z|Z32199}} * {{Z|Z32204}} * {{Z|Z32208}} * {{Z|Z32212}} * {{Z|Z32215}} * {{Z|Z32225}} * {{Z|Z32229}} * {{Z|Z32230}} * {{Z|Z32234}} * {{Z|Z32244}} * {{Z|Z32249}} * {{Z|Z32261}} * {{Z|Z32290}} * {{Z|Z32302}} * {{Z|Z32308}} * {{Z|Z32321}} * {{Z|Z32326}} * {{Z|Z32330}} * {{Z|Z32340}} * {{Z|Z32343}} * {{Z|Z32347}} * {{Z|Z32355}} * {{Z|Z32371}} * {{Z|Z32373}} <div lang="en" dir="ltr" class="mw-content-ltr"> A [https://www.wikifunctions.org/wiki/Special:ListObjectsByType?type=Z8&orderby=latest complete list of all functions sorted by when they were created] is available. </div> [[Category:Status updates{{#translation:}}|2026-03-26]] r3gecwezz4dx9ilzjayd1fweel8x9on 261187 261183 2026-03-27T12:04:02Z Ameisenigel 44 Created page with "Die Zahlen ändern sich ständig, aber bisher wurden bereits über 120 Artikel begonnen. [[$1|ChaoticVermillion]] hat [$2 eine Seite erstellt, um die ersten 25 Artikel zu würdigen]. Besonders erfreulich ist, dass über 75 Freiwillige zum Wiki beigetragen haben und es bereits über 1000 Bearbeitungen gab. Uns ist bewusst, dass das Mitwirken an der Abstrakten Wikipedia derzeit nicht sehr benutzerfreundlich ist und viele Dinge nicht funktionieren. Wir haben bereits zahlrei..." 261187 wikitext text/x-wiki <languages/> {{Wikifunctions updates | prevlabel = Vorheriges Update | prev = 2026-03-19 | nextlabel = Nächstes Update | next = }} <span id="First_few_days_of_Abstract_Wikipedia_Beta"></span> === Erste Tage der Abstrakten Wikipedia Beta === Letzte Woche starteten wir die Beta-Version der Abstrakten Wikipedia und viele von euch haben vorbeigeschaut, einige sind sogar Teil unserer neuen Community geworden. Wir freuen uns sehr über den bisherigen Verlauf! Die Zahlen ändern sich ständig, aber bisher wurden bereits über 120 Artikel begonnen. [[User:ChaoticVermillion|ChaoticVermillion]] hat [https://abstract.wikipedia.org/wiki/User:ChaoticVermillion/First_Abstract_Wiki_pages eine Seite erstellt, um die ersten 25 Artikel zu würdigen]. Besonders erfreulich ist, dass über 75 Freiwillige zum Wiki beigetragen haben und es bereits über 1000 Bearbeitungen gab. Uns ist bewusst, dass das Mitwirken an der Abstrakten Wikipedia derzeit nicht sehr benutzerfreundlich ist und viele Dinge nicht funktionieren. Wir haben bereits zahlreiche Fehler behoben (siehe den Abschnitt zu Letzten Änderungen an der Software weiter unten) und arbeiten an vielen weiteren. <div lang="en" dir="ltr" class="mw-content-ltr"> Based on the initial reaction and your feedback, we are changing our plans for the upcoming quarters, to focus on bugfixes, features, and capabilities that you are raising. We are monitoring the Phabricator board, the Project chat, and the Telegram / IRC chat, and collecting your feedback and suggestions. This will be our priority in the coming months. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We are also excited to see that Wikifunctions is seeing a significant increase in the pace of new functions being created. This week we report 79 new functions! Some of them are in languages that had no functions before, and some of them are providing functionality that helps with writing Abstract Wikipedia articles. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> By the way, here’s one tip: currently, caching for Abstract Wikipedia happens on the level of the “fragment”. This means that by putting several sentences into a single paragraph, the paragraph as a whole is being run, may cause time-outs, and will be cached. Instead, if, for now, you put one sentence into each fragment, caching and evaluation can be more spread out and should allow for more content. Eventually we want to fix that, but it may take a moment, so you can try out more by following this tip for now. This can be changed later again and pulled together into paragraphs if so wished. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> As you might have noticed, there have been a few bugs that we've fixed and tweaks that we've made. We fixed a bug that meant that the code mis-configured some namespaces, so broke talk and User pages and published the very first articles in the wrong place ([[:phab:T420617|T420617]], [[:phab:T420649|T420649]]). We switched the orchestrator's composition language temporarily back to v1 ([[:phab:T418887|T418887]]), then made some quick fixes ([[:phab:T419833|T419833]]) and then re-enabled it — see below. We switched up a hard-coded link for policies to the new initial policy list. We fixed a bug that meant the creation workflow looked in the wrong place to make sure you didn't over-write an existing page ([[:phab:T420725|T420725]]), and it worked if you browsed directly to Special:CreateAbstract/Q123456 ([[:phab:T420916|T420916]]). We adjusted the display of previews to correctly set the language's RTL status too ([[:phab:T420687|T420687]]) and we added Help links for the pages to view and create Abstract articles.We're working now on improving performance and caching, fixing the /view/ links to work, making sure Abstract Wikipedia pages show up on the Tools database views, adding to the site statistics process, and a dozen other little things. Thank you for bearing with us! </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Keep giving us feedback! We really appreciate your willingness to try things out, and are very happy to see you accepting this early version of Abstract Wikipedia. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Status of Composition Language v2 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> A couple of weeks ago, we enabled composition language v2 in production. There were some minor bugs that the team was able to triage, but there was also a set of function calls that became categorically impossible to specify. An example case is [[:phab:T419833|here]]. These function calls worked in v1 because of 1) an extremely lazy execution model and 2) lax error handling. In v2, execution order is much stricter (and more comprehensible!), and error handling has become predictable. As a result, when a [[Z7|Z7/Function call]] will cause an error, that error is immediately returned in v2. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We have since added [https://gitlab.wikimedia.org/repos/abstract-wiki/wikifunctions/function-orchestrator/-/merge_requests/606 a temporary layer of indirection] (hereinafter the "scope hack") to the v2 composition language. This will cause affected functions to work much in the way they did in v1. However, this is a temporary measure. It is bad for performance and it makes the Wikifunctions language semantics a bit strange. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> In future, compositions that depend on error-handling functions (e.g. [[Z850|Z850/Try-catch]] and [[Z853|Z853/Get error]]) should wrap top-level [[Z7|Z7/Function calls]] in [[Z99|Z99/Quote]], then use [[Z899|Z899/Unquote]] inside of the composition. This technique is verified to work in all versions of the composition language, so it will be possible to migrate all existing functions. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Another unwanted side effect of v2 and its new strategy for error handling is that many of the failing function calls might return a different error type. While we will work to always return the most accurate and descriptive error type, it is possible that many calls that rely on [[Z850|Z850/Try-catch]] to catch a specific error type will now fail until the expected error type is corrected to the one thrown by v2. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We will document all the content issues that we come across and track their status here: [[Wikifunctions:Request for cleanup|Wikifunctions:Request for cleanup]]. Once these functions have been migrated, we will roll back the scope hack. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Recent Changes in the software === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> This week on Wikifunctions, we made the following changes: When you're editing an article with the visual editor with a Wikifunctions call that creates a reference, we now show the style more clearly. We also now show the standard MediaWiki warning box when you're editing an old version of a Wikifunctions Object page ([[:phab:T364318|T364318]]). </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Wikifunctions presentation at WikiCon Australia on 11 April 2026 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> [[User:99of9|Toby Hudson]] will be presenting [[:meta:Event:WikiCon Australia 2026/Submissions/Wikifunctions in Practice: Reusable Logic for Wikimedia|Wikifunctions in Practice: Reusable Logic for Wikimedia]] at [[:meta:Event:WikiCon Australia 2026|WikiCon Australia]] on 11 April 2026 at 12:00 local time at the [[:en:National Film and Sound Archive|National Film and Sound Archive of Australia]] in [[:en:Canberra|Kanbarra]]. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Here is the description of the talk: </div> : <span lang="en" dir="ltr" class="mw-content-ltr">''Wikifunctions promises something simple but ambitious: write logic once, and make it reusable across Wikimedia projects and languages. Small, well-chosen functions can have outsized impact and eliminate some updating, copy-pasting, or even translation.''</span> : <span lang="en" dir="ltr" class="mw-content-ltr">''This talk focuses on goals and practical usage rather than internals or programming, but will allow plenty of time for questions from the audience to dig into the details. We'll see what Wikifunctions is and what it's for. We will test a range of existing functions on Wikifunctions directly. We will see how to embed the result of a function call in a regular Wiki page elsewhere on a sister project. Then we will look ahead to how Wikifunctions will play a key role in the future Abstract Wikipedia.''</span> <div lang="en" dir="ltr" class="mw-content-ltr"> Thank you Toby for giving this presentation! And everyone have fun at WikiCon Australia! </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Volunteer’s Corner upcoming on 13 April 2026 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> The next Volunteers’ Corner will be on [https://zonestamp.toolforge.org/1776101400 Monday, 13 April 2026 at 17:30 UTC]. We plan to have the following agenda: there will be time to ask questions and discuss all matters arising. We will celebrate the launch of Abstract Wikipedia Beta. If we have time, we will either write a function together or work on an Abstract Wikipedia article together (volunteer-led). Everyone is welcome to join us on [https://meet.google.com/xuy-njxh-rkw Google Meet]. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Fresh Functions weekly: 76 new Functions === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> This week we had 76 (!) new functions. That’s a lot more than usual, driven by the launch of Abstract Wikipedia Beta. Here is an incomplete list of functions with implementations and passing tests to get a taste of what functions have been created. Thanks everybody for contributing! </div> * {{Z|Z32085}} * {{Z|Z32097}} * {{Z|Z32109}} * {{Z|Z32123}} * {{Z|Z32126}} * {{Z|Z32145}} * {{Z|Z32149}} * {{Z|Z32152}} * {{Z|Z32160}} * {{Z|Z32163}} * {{Z|Z32177}} * {{Z|Z32179}} * {{Z|Z32180}} * {{Z|Z32185}} * {{Z|Z32193}} * {{Z|Z32199}} * {{Z|Z32204}} * {{Z|Z32208}} * {{Z|Z32212}} * {{Z|Z32215}} * {{Z|Z32225}} * {{Z|Z32229}} * {{Z|Z32230}} * {{Z|Z32234}} * {{Z|Z32244}} * {{Z|Z32249}} * {{Z|Z32261}} * {{Z|Z32290}} * {{Z|Z32302}} * {{Z|Z32308}} * {{Z|Z32321}} * {{Z|Z32326}} * {{Z|Z32330}} * {{Z|Z32340}} * {{Z|Z32343}} * {{Z|Z32347}} * {{Z|Z32355}} * {{Z|Z32371}} * {{Z|Z32373}} <div lang="en" dir="ltr" class="mw-content-ltr"> A [https://www.wikifunctions.org/wiki/Special:ListObjectsByType?type=Z8&orderby=latest complete list of all functions sorted by when they were created] is available. </div> [[Category:Status updates{{#translation:}}|2026-03-26]] a5cidy2d5pqwvqsmfkxuersngk59m3f 261189 261187 2026-03-27T12:05:15Z Ameisenigel 44 Created page with "Aufgrund der ersten Reaktionen und eurer Rückmeldungen ändern wir unsere Pläne für die kommenden Quartale und konzentrieren uns künftig auf die von euch angesprochenen Fehlerbehebungen, Funktionen und Möglichkeiten. Wir beobachten das Phabricator-Board, die Projektdiskussion und den Telegram-/IRC-Chat und sammeln eure Rückmeldungen und Vorschläge. Dies wird in den nächsten Monaten unsere Priorität sein." 261189 wikitext text/x-wiki <languages/> {{Wikifunctions updates | prevlabel = Vorheriges Update | prev = 2026-03-19 | nextlabel = Nächstes Update | next = }} <span id="First_few_days_of_Abstract_Wikipedia_Beta"></span> === Erste Tage der Abstrakten Wikipedia Beta === Letzte Woche starteten wir die Beta-Version der Abstrakten Wikipedia und viele von euch haben vorbeigeschaut, einige sind sogar Teil unserer neuen Community geworden. Wir freuen uns sehr über den bisherigen Verlauf! Die Zahlen ändern sich ständig, aber bisher wurden bereits über 120 Artikel begonnen. [[User:ChaoticVermillion|ChaoticVermillion]] hat [https://abstract.wikipedia.org/wiki/User:ChaoticVermillion/First_Abstract_Wiki_pages eine Seite erstellt, um die ersten 25 Artikel zu würdigen]. Besonders erfreulich ist, dass über 75 Freiwillige zum Wiki beigetragen haben und es bereits über 1000 Bearbeitungen gab. Uns ist bewusst, dass das Mitwirken an der Abstrakten Wikipedia derzeit nicht sehr benutzerfreundlich ist und viele Dinge nicht funktionieren. Wir haben bereits zahlreiche Fehler behoben (siehe den Abschnitt zu Letzten Änderungen an der Software weiter unten) und arbeiten an vielen weiteren. Aufgrund der ersten Reaktionen und eurer Rückmeldungen ändern wir unsere Pläne für die kommenden Quartale und konzentrieren uns künftig auf die von euch angesprochenen Fehlerbehebungen, Funktionen und Möglichkeiten. Wir beobachten das Phabricator-Board, die Projektdiskussion und den Telegram-/IRC-Chat und sammeln eure Rückmeldungen und Vorschläge. Dies wird in den nächsten Monaten unsere Priorität sein. <div lang="en" dir="ltr" class="mw-content-ltr"> We are also excited to see that Wikifunctions is seeing a significant increase in the pace of new functions being created. This week we report 79 new functions! Some of them are in languages that had no functions before, and some of them are providing functionality that helps with writing Abstract Wikipedia articles. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> By the way, here’s one tip: currently, caching for Abstract Wikipedia happens on the level of the “fragment”. This means that by putting several sentences into a single paragraph, the paragraph as a whole is being run, may cause time-outs, and will be cached. Instead, if, for now, you put one sentence into each fragment, caching and evaluation can be more spread out and should allow for more content. Eventually we want to fix that, but it may take a moment, so you can try out more by following this tip for now. This can be changed later again and pulled together into paragraphs if so wished. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> As you might have noticed, there have been a few bugs that we've fixed and tweaks that we've made. We fixed a bug that meant that the code mis-configured some namespaces, so broke talk and User pages and published the very first articles in the wrong place ([[:phab:T420617|T420617]], [[:phab:T420649|T420649]]). We switched the orchestrator's composition language temporarily back to v1 ([[:phab:T418887|T418887]]), then made some quick fixes ([[:phab:T419833|T419833]]) and then re-enabled it — see below. We switched up a hard-coded link for policies to the new initial policy list. We fixed a bug that meant the creation workflow looked in the wrong place to make sure you didn't over-write an existing page ([[:phab:T420725|T420725]]), and it worked if you browsed directly to Special:CreateAbstract/Q123456 ([[:phab:T420916|T420916]]). We adjusted the display of previews to correctly set the language's RTL status too ([[:phab:T420687|T420687]]) and we added Help links for the pages to view and create Abstract articles.We're working now on improving performance and caching, fixing the /view/ links to work, making sure Abstract Wikipedia pages show up on the Tools database views, adding to the site statistics process, and a dozen other little things. Thank you for bearing with us! </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Keep giving us feedback! We really appreciate your willingness to try things out, and are very happy to see you accepting this early version of Abstract Wikipedia. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Status of Composition Language v2 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> A couple of weeks ago, we enabled composition language v2 in production. There were some minor bugs that the team was able to triage, but there was also a set of function calls that became categorically impossible to specify. An example case is [[:phab:T419833|here]]. These function calls worked in v1 because of 1) an extremely lazy execution model and 2) lax error handling. In v2, execution order is much stricter (and more comprehensible!), and error handling has become predictable. As a result, when a [[Z7|Z7/Function call]] will cause an error, that error is immediately returned in v2. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We have since added [https://gitlab.wikimedia.org/repos/abstract-wiki/wikifunctions/function-orchestrator/-/merge_requests/606 a temporary layer of indirection] (hereinafter the "scope hack") to the v2 composition language. This will cause affected functions to work much in the way they did in v1. However, this is a temporary measure. It is bad for performance and it makes the Wikifunctions language semantics a bit strange. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> In future, compositions that depend on error-handling functions (e.g. [[Z850|Z850/Try-catch]] and [[Z853|Z853/Get error]]) should wrap top-level [[Z7|Z7/Function calls]] in [[Z99|Z99/Quote]], then use [[Z899|Z899/Unquote]] inside of the composition. This technique is verified to work in all versions of the composition language, so it will be possible to migrate all existing functions. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Another unwanted side effect of v2 and its new strategy for error handling is that many of the failing function calls might return a different error type. While we will work to always return the most accurate and descriptive error type, it is possible that many calls that rely on [[Z850|Z850/Try-catch]] to catch a specific error type will now fail until the expected error type is corrected to the one thrown by v2. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We will document all the content issues that we come across and track their status here: [[Wikifunctions:Request for cleanup|Wikifunctions:Request for cleanup]]. Once these functions have been migrated, we will roll back the scope hack. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Recent Changes in the software === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> This week on Wikifunctions, we made the following changes: When you're editing an article with the visual editor with a Wikifunctions call that creates a reference, we now show the style more clearly. We also now show the standard MediaWiki warning box when you're editing an old version of a Wikifunctions Object page ([[:phab:T364318|T364318]]). </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Wikifunctions presentation at WikiCon Australia on 11 April 2026 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> [[User:99of9|Toby Hudson]] will be presenting [[:meta:Event:WikiCon Australia 2026/Submissions/Wikifunctions in Practice: Reusable Logic for Wikimedia|Wikifunctions in Practice: Reusable Logic for Wikimedia]] at [[:meta:Event:WikiCon Australia 2026|WikiCon Australia]] on 11 April 2026 at 12:00 local time at the [[:en:National Film and Sound Archive|National Film and Sound Archive of Australia]] in [[:en:Canberra|Kanbarra]]. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Here is the description of the talk: </div> : <span lang="en" dir="ltr" class="mw-content-ltr">''Wikifunctions promises something simple but ambitious: write logic once, and make it reusable across Wikimedia projects and languages. Small, well-chosen functions can have outsized impact and eliminate some updating, copy-pasting, or even translation.''</span> : <span lang="en" dir="ltr" class="mw-content-ltr">''This talk focuses on goals and practical usage rather than internals or programming, but will allow plenty of time for questions from the audience to dig into the details. We'll see what Wikifunctions is and what it's for. We will test a range of existing functions on Wikifunctions directly. We will see how to embed the result of a function call in a regular Wiki page elsewhere on a sister project. Then we will look ahead to how Wikifunctions will play a key role in the future Abstract Wikipedia.''</span> <div lang="en" dir="ltr" class="mw-content-ltr"> Thank you Toby for giving this presentation! And everyone have fun at WikiCon Australia! </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Volunteer’s Corner upcoming on 13 April 2026 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> The next Volunteers’ Corner will be on [https://zonestamp.toolforge.org/1776101400 Monday, 13 April 2026 at 17:30 UTC]. We plan to have the following agenda: there will be time to ask questions and discuss all matters arising. We will celebrate the launch of Abstract Wikipedia Beta. If we have time, we will either write a function together or work on an Abstract Wikipedia article together (volunteer-led). Everyone is welcome to join us on [https://meet.google.com/xuy-njxh-rkw Google Meet]. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Fresh Functions weekly: 76 new Functions === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> This week we had 76 (!) new functions. That’s a lot more than usual, driven by the launch of Abstract Wikipedia Beta. Here is an incomplete list of functions with implementations and passing tests to get a taste of what functions have been created. Thanks everybody for contributing! </div> * {{Z|Z32085}} * {{Z|Z32097}} * {{Z|Z32109}} * {{Z|Z32123}} * {{Z|Z32126}} * {{Z|Z32145}} * {{Z|Z32149}} * {{Z|Z32152}} * {{Z|Z32160}} * {{Z|Z32163}} * {{Z|Z32177}} * {{Z|Z32179}} * {{Z|Z32180}} * {{Z|Z32185}} * {{Z|Z32193}} * {{Z|Z32199}} * {{Z|Z32204}} * {{Z|Z32208}} * {{Z|Z32212}} * {{Z|Z32215}} * {{Z|Z32225}} * {{Z|Z32229}} * {{Z|Z32230}} * {{Z|Z32234}} * {{Z|Z32244}} * {{Z|Z32249}} * {{Z|Z32261}} * {{Z|Z32290}} * {{Z|Z32302}} * {{Z|Z32308}} * {{Z|Z32321}} * {{Z|Z32326}} * {{Z|Z32330}} * {{Z|Z32340}} * {{Z|Z32343}} * {{Z|Z32347}} * {{Z|Z32355}} * {{Z|Z32371}} * {{Z|Z32373}} <div lang="en" dir="ltr" class="mw-content-ltr"> A [https://www.wikifunctions.org/wiki/Special:ListObjectsByType?type=Z8&orderby=latest complete list of all functions sorted by when they were created] is available. </div> [[Category:Status updates{{#translation:}}|2026-03-26]] qdekv8ulcdq6u1mbx7q4g47luzob3pa 261193 261189 2026-03-27T12:11:19Z FuzzyBot 207 Updating to match new version of source page 261193 wikitext text/x-wiki <languages/> {{Wikifunctions updates | prevlabel = Vorheriges Update | prev = 2026-03-19 | nextlabel = Nächstes Update | next = }} <span id="First_few_days_of_Abstract_Wikipedia_Beta"></span> === Erste Tage der Abstrakten Wikipedia Beta === Letzte Woche starteten wir die Beta-Version der Abstrakten Wikipedia und viele von euch haben vorbeigeschaut, einige sind sogar Teil unserer neuen Community geworden. Wir freuen uns sehr über den bisherigen Verlauf! Die Zahlen ändern sich ständig, aber bisher wurden bereits über 120 Artikel begonnen. [[User:ChaoticVermillion|ChaoticVermillion]] hat [https://abstract.wikipedia.org/wiki/User:ChaoticVermillion/First_Abstract_Wiki_pages eine Seite erstellt, um die ersten 25 Artikel zu würdigen]. Besonders erfreulich ist, dass über 75 Freiwillige zum Wiki beigetragen haben und es bereits über 1000 Bearbeitungen gab. Uns ist bewusst, dass das Mitwirken an der Abstrakten Wikipedia derzeit nicht sehr benutzerfreundlich ist und viele Dinge nicht funktionieren. Wir haben bereits zahlreiche Fehler behoben (siehe den Abschnitt zu Letzten Änderungen an der Software weiter unten) und arbeiten an vielen weiteren. Aufgrund der ersten Reaktionen und eurer Rückmeldungen ändern wir unsere Pläne für die kommenden Quartale und konzentrieren uns künftig auf die von euch angesprochenen Fehlerbehebungen, Funktionen und Möglichkeiten. Wir beobachten das Phabricator-Board, die Projektdiskussion und den Telegram-/IRC-Chat und sammeln eure Rückmeldungen und Vorschläge. Dies wird in den nächsten Monaten unsere Priorität sein. <div lang="en" dir="ltr" class="mw-content-ltr"> We are also excited to see that Wikifunctions is seeing a significant increase in the pace of new functions being created. This week we report 79 new functions! Some of them are in languages that had no functions before, and some of them are providing functionality that helps with writing Abstract Wikipedia articles. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> By the way, here’s one tip: currently, caching for Abstract Wikipedia happens on the level of the “fragment”. This means that by putting several sentences into a single paragraph, the paragraph as a whole is being run, may cause time-outs, and will be cached. Instead, if, for now, you put one sentence into each fragment, caching and evaluation can be more spread out and should allow for more content. Eventually we want to fix that, but it may take a moment, so you can try out more by following this tip for now. This can be changed later again and pulled together into paragraphs if so wished. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> As you might have noticed, there have been a few bugs that we've fixed and tweaks that we've made. We fixed a bug that meant that the code mis-configured some namespaces, so broke talk and User pages and published the very first articles in the wrong place ([[:phab:T420617|T420617]], [[:phab:T420649|T420649]]). We switched the orchestrator's composition language temporarily back to v1 ([[:phab:T418887|T418887]]), then made some quick fixes ([[:phab:T419833|T419833]]) and then re-enabled it — see below. We switched up a hard-coded link for policies to the new initial policy list. We fixed a bug that meant the creation workflow looked in the wrong place to make sure you didn't over-write an existing page ([[:phab:T420725|T420725]]), and it worked if you browsed directly to Special:CreateAbstract/Q123456 ([[:phab:T420916|T420916]]). We adjusted the display of previews to correctly set the language's RTL status too ([[:phab:T420687|T420687]]) and we added Help links for the pages to view and create Abstract articles.We're working now on improving performance and caching, fixing the /view/ links to work, making sure Abstract Wikipedia pages show up on the Tools database views, adding to the site statistics process, and a dozen other little things. Thank you for bearing with us! </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Keep giving us feedback! We really appreciate your willingness to try things out, and are very happy to see you accepting this early version of Abstract Wikipedia. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Status of Composition Language v2 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> A couple of weeks ago, we enabled composition language v2 in production. There were some minor bugs that the team was able to triage, but there was also a set of function calls that became categorically impossible to specify. An example case is [[:phab:T419833|here]]. These function calls worked in v1 because of 1) an extremely lazy execution model and 2) lax error handling. In v2, execution order is much stricter (and more comprehensible!), and error handling has become predictable. As a result, when a [[Z7|Z7/Function call]] will cause an error, that error is immediately returned in v2. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We have since added [https://gitlab.wikimedia.org/repos/abstract-wiki/wikifunctions/function-orchestrator/-/merge_requests/606 a temporary layer of indirection] (hereinafter the "scope hack") to the v2 composition language. This will cause affected functions to work much in the way they did in v1. However, this is a temporary measure. It is bad for performance and it makes the Wikifunctions language semantics a bit strange. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> In future, compositions that depend on error-handling functions (e.g. [[Z850|Z850/Try-catch]] and [[Z853|Z853/Get error]]) should wrap top-level [[Z7|Z7/Function calls]] in [[Z99|Z99/Quote]], then use [[Z899|Z899/Unquote]] inside of the composition. This technique is verified to work in all versions of the composition language, so it will be possible to migrate all existing functions. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Another unwanted side effect of v2 and its new strategy for error handling is that many of the failing function calls might return a different error type. While we will work to always return the most accurate and descriptive error type, it is possible that many calls that rely on [[Z850|Z850/Try-catch]] to catch a specific error type will now fail until the expected error type is corrected to the one thrown by v2. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We will document all the content issues that we come across and track their status here: [[Wikifunctions:Request for cleanup|Wikifunctions:Request for cleanup]]. Once these functions have been migrated, we will roll back the scope hack. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Recent Changes in the software === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> This week on Wikifunctions, we made the following changes: When you're editing an article with the visual editor with a Wikifunctions call that creates a reference, we now show the style more clearly. We also now show the standard MediaWiki warning box when you're editing an old version of a Wikifunctions Object page ([[:phab:T364318|T364318]]). </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Wikifunctions presentation at WikiCon Australia on 11 April 2026 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> [[User:99of9|Toby Hudson]] will be presenting [[:meta:Event:WikiCon Australia 2026/Submissions/Wikifunctions in Practice: Reusable Logic for Wikimedia|Wikifunctions in Practice: Reusable Logic for Wikimedia]] at [[:meta:Event:WikiCon Australia 2026|WikiCon Australia]] on 11 April 2026 at 12:00 local time at the [[:en:National Film and Sound Archive|National Film and Sound Archive of Australia]] in [[:en:Canberra|Canberra]]. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Here is the description of the talk: </div> : <span lang="en" dir="ltr" class="mw-content-ltr">''Wikifunctions promises something simple but ambitious: write logic once, and make it reusable across Wikimedia projects and languages. Small, well-chosen functions can have outsized impact and eliminate some updating, copy-pasting, or even translation.''</span> : <span lang="en" dir="ltr" class="mw-content-ltr">''This talk focuses on goals and practical usage rather than internals or programming, but will allow plenty of time for questions from the audience to dig into the details. We'll see what Wikifunctions is and what it's for. We will test a range of existing functions on Wikifunctions directly. We will see how to embed the result of a function call in a regular Wiki page elsewhere on a sister project. Then we will look ahead to how Wikifunctions will play a key role in the future Abstract Wikipedia.''</span> <div lang="en" dir="ltr" class="mw-content-ltr"> Thank you Toby for giving this presentation! And everyone have fun at WikiCon Australia! </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Volunteer’s Corner upcoming on 13 April 2026 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> The next Volunteers’ Corner will be on [https://zonestamp.toolforge.org/1776101400 Monday, 13 April 2026 at 17:30 UTC]. We plan to have the following agenda: there will be time to ask questions and discuss all matters arising. We will celebrate the launch of Abstract Wikipedia Beta. If we have time, we will either write a function together or work on an Abstract Wikipedia article together (volunteer-led). Everyone is welcome to join us on [https://meet.google.com/xuy-njxh-rkw Google Meet]. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Fresh Functions weekly: 76 new Functions === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> This week we had 76 (!) new functions. That’s a lot more than usual, driven by the launch of Abstract Wikipedia Beta. Here is an incomplete list of functions with implementations and passing tests to get a taste of what functions have been created. Thanks everybody for contributing! </div> * {{Z|Z32085}} * {{Z|Z32097}} * {{Z|Z32109}} * {{Z|Z32123}} * {{Z|Z32126}} * {{Z|Z32145}} * {{Z|Z32149}} * {{Z|Z32152}} * {{Z|Z32160}} * {{Z|Z32163}} * {{Z|Z32177}} * {{Z|Z32179}} * {{Z|Z32180}} * {{Z|Z32185}} * {{Z|Z32193}} * {{Z|Z32199}} * {{Z|Z32204}} * {{Z|Z32208}} * {{Z|Z32212}} * {{Z|Z32215}} * {{Z|Z32225}} * {{Z|Z32229}} * {{Z|Z32230}} * {{Z|Z32234}} * {{Z|Z32244}} * {{Z|Z32249}} * {{Z|Z32261}} * {{Z|Z32290}} * {{Z|Z32302}} * {{Z|Z32308}} * {{Z|Z32321}} * {{Z|Z32326}} * {{Z|Z32330}} * {{Z|Z32340}} * {{Z|Z32343}} * {{Z|Z32347}} * {{Z|Z32355}} * {{Z|Z32371}} * {{Z|Z32373}} <div lang="en" dir="ltr" class="mw-content-ltr"> A [https://www.wikifunctions.org/wiki/Special:ListObjectsByType?type=Z8&orderby=latest complete list of all functions sorted by when they were created] is available. </div> [[Category:Status updates{{#translation:}}|2026-03-26]] 0g2jvdv2cfuoje9noqremaxcjcd44c9 261197 261193 2026-03-27T12:38:37Z Ameisenigel 44 Created page with "Wir freuen uns sehr über die deutlich gestiegene Anzahl neuer Funktionen auf Wikifunctions. Diese Woche konnten wir 79 neue Funktionen vermelden! Einige davon sind für Sprachen gedacht, für die es bisher keine solchen Funktionen gab, und andere bieten Funktionen, die das Schreiben von Artikeln für die Abstrakte Wikipedia erleichtern." 261197 wikitext text/x-wiki <languages/> {{Wikifunctions updates | prevlabel = Vorheriges Update | prev = 2026-03-19 | nextlabel = Nächstes Update | next = }} <span id="First_few_days_of_Abstract_Wikipedia_Beta"></span> === Erste Tage der Abstrakten Wikipedia Beta === Letzte Woche starteten wir die Beta-Version der Abstrakten Wikipedia und viele von euch haben vorbeigeschaut, einige sind sogar Teil unserer neuen Community geworden. Wir freuen uns sehr über den bisherigen Verlauf! Die Zahlen ändern sich ständig, aber bisher wurden bereits über 120 Artikel begonnen. [[User:ChaoticVermillion|ChaoticVermillion]] hat [https://abstract.wikipedia.org/wiki/User:ChaoticVermillion/First_Abstract_Wiki_pages eine Seite erstellt, um die ersten 25 Artikel zu würdigen]. Besonders erfreulich ist, dass über 75 Freiwillige zum Wiki beigetragen haben und es bereits über 1000 Bearbeitungen gab. Uns ist bewusst, dass das Mitwirken an der Abstrakten Wikipedia derzeit nicht sehr benutzerfreundlich ist und viele Dinge nicht funktionieren. Wir haben bereits zahlreiche Fehler behoben (siehe den Abschnitt zu Letzten Änderungen an der Software weiter unten) und arbeiten an vielen weiteren. Aufgrund der ersten Reaktionen und eurer Rückmeldungen ändern wir unsere Pläne für die kommenden Quartale und konzentrieren uns künftig auf die von euch angesprochenen Fehlerbehebungen, Funktionen und Möglichkeiten. Wir beobachten das Phabricator-Board, die Projektdiskussion und den Telegram-/IRC-Chat und sammeln eure Rückmeldungen und Vorschläge. Dies wird in den nächsten Monaten unsere Priorität sein. Wir freuen uns sehr über die deutlich gestiegene Anzahl neuer Funktionen auf Wikifunctions. Diese Woche konnten wir 79 neue Funktionen vermelden! Einige davon sind für Sprachen gedacht, für die es bisher keine solchen Funktionen gab, und andere bieten Funktionen, die das Schreiben von Artikeln für die Abstrakte Wikipedia erleichtern. <div lang="en" dir="ltr" class="mw-content-ltr"> By the way, here’s one tip: currently, caching for Abstract Wikipedia happens on the level of the “fragment”. This means that by putting several sentences into a single paragraph, the paragraph as a whole is being run, may cause time-outs, and will be cached. Instead, if, for now, you put one sentence into each fragment, caching and evaluation can be more spread out and should allow for more content. Eventually we want to fix that, but it may take a moment, so you can try out more by following this tip for now. This can be changed later again and pulled together into paragraphs if so wished. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> As you might have noticed, there have been a few bugs that we've fixed and tweaks that we've made. We fixed a bug that meant that the code mis-configured some namespaces, so broke talk and User pages and published the very first articles in the wrong place ([[:phab:T420617|T420617]], [[:phab:T420649|T420649]]). We switched the orchestrator's composition language temporarily back to v1 ([[:phab:T418887|T418887]]), then made some quick fixes ([[:phab:T419833|T419833]]) and then re-enabled it — see below. We switched up a hard-coded link for policies to the new initial policy list. We fixed a bug that meant the creation workflow looked in the wrong place to make sure you didn't over-write an existing page ([[:phab:T420725|T420725]]), and it worked if you browsed directly to Special:CreateAbstract/Q123456 ([[:phab:T420916|T420916]]). We adjusted the display of previews to correctly set the language's RTL status too ([[:phab:T420687|T420687]]) and we added Help links for the pages to view and create Abstract articles.We're working now on improving performance and caching, fixing the /view/ links to work, making sure Abstract Wikipedia pages show up on the Tools database views, adding to the site statistics process, and a dozen other little things. Thank you for bearing with us! </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Keep giving us feedback! We really appreciate your willingness to try things out, and are very happy to see you accepting this early version of Abstract Wikipedia. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Status of Composition Language v2 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> A couple of weeks ago, we enabled composition language v2 in production. There were some minor bugs that the team was able to triage, but there was also a set of function calls that became categorically impossible to specify. An example case is [[:phab:T419833|here]]. These function calls worked in v1 because of 1) an extremely lazy execution model and 2) lax error handling. In v2, execution order is much stricter (and more comprehensible!), and error handling has become predictable. As a result, when a [[Z7|Z7/Function call]] will cause an error, that error is immediately returned in v2. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We have since added [https://gitlab.wikimedia.org/repos/abstract-wiki/wikifunctions/function-orchestrator/-/merge_requests/606 a temporary layer of indirection] (hereinafter the "scope hack") to the v2 composition language. This will cause affected functions to work much in the way they did in v1. However, this is a temporary measure. It is bad for performance and it makes the Wikifunctions language semantics a bit strange. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> In future, compositions that depend on error-handling functions (e.g. [[Z850|Z850/Try-catch]] and [[Z853|Z853/Get error]]) should wrap top-level [[Z7|Z7/Function calls]] in [[Z99|Z99/Quote]], then use [[Z899|Z899/Unquote]] inside of the composition. This technique is verified to work in all versions of the composition language, so it will be possible to migrate all existing functions. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Another unwanted side effect of v2 and its new strategy for error handling is that many of the failing function calls might return a different error type. While we will work to always return the most accurate and descriptive error type, it is possible that many calls that rely on [[Z850|Z850/Try-catch]] to catch a specific error type will now fail until the expected error type is corrected to the one thrown by v2. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We will document all the content issues that we come across and track their status here: [[Wikifunctions:Request for cleanup|Wikifunctions:Request for cleanup]]. Once these functions have been migrated, we will roll back the scope hack. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Recent Changes in the software === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> This week on Wikifunctions, we made the following changes: When you're editing an article with the visual editor with a Wikifunctions call that creates a reference, we now show the style more clearly. We also now show the standard MediaWiki warning box when you're editing an old version of a Wikifunctions Object page ([[:phab:T364318|T364318]]). </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Wikifunctions presentation at WikiCon Australia on 11 April 2026 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> [[User:99of9|Toby Hudson]] will be presenting [[:meta:Event:WikiCon Australia 2026/Submissions/Wikifunctions in Practice: Reusable Logic for Wikimedia|Wikifunctions in Practice: Reusable Logic for Wikimedia]] at [[:meta:Event:WikiCon Australia 2026|WikiCon Australia]] on 11 April 2026 at 12:00 local time at the [[:en:National Film and Sound Archive|National Film and Sound Archive of Australia]] in [[:en:Canberra|Canberra]]. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Here is the description of the talk: </div> : <span lang="en" dir="ltr" class="mw-content-ltr">''Wikifunctions promises something simple but ambitious: write logic once, and make it reusable across Wikimedia projects and languages. Small, well-chosen functions can have outsized impact and eliminate some updating, copy-pasting, or even translation.''</span> : <span lang="en" dir="ltr" class="mw-content-ltr">''This talk focuses on goals and practical usage rather than internals or programming, but will allow plenty of time for questions from the audience to dig into the details. We'll see what Wikifunctions is and what it's for. We will test a range of existing functions on Wikifunctions directly. We will see how to embed the result of a function call in a regular Wiki page elsewhere on a sister project. Then we will look ahead to how Wikifunctions will play a key role in the future Abstract Wikipedia.''</span> <div lang="en" dir="ltr" class="mw-content-ltr"> Thank you Toby for giving this presentation! And everyone have fun at WikiCon Australia! </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Volunteer’s Corner upcoming on 13 April 2026 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> The next Volunteers’ Corner will be on [https://zonestamp.toolforge.org/1776101400 Monday, 13 April 2026 at 17:30 UTC]. We plan to have the following agenda: there will be time to ask questions and discuss all matters arising. We will celebrate the launch of Abstract Wikipedia Beta. If we have time, we will either write a function together or work on an Abstract Wikipedia article together (volunteer-led). Everyone is welcome to join us on [https://meet.google.com/xuy-njxh-rkw Google Meet]. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Fresh Functions weekly: 76 new Functions === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> This week we had 76 (!) new functions. That’s a lot more than usual, driven by the launch of Abstract Wikipedia Beta. Here is an incomplete list of functions with implementations and passing tests to get a taste of what functions have been created. Thanks everybody for contributing! </div> * {{Z|Z32085}} * {{Z|Z32097}} * {{Z|Z32109}} * {{Z|Z32123}} * {{Z|Z32126}} * {{Z|Z32145}} * {{Z|Z32149}} * {{Z|Z32152}} * {{Z|Z32160}} * {{Z|Z32163}} * {{Z|Z32177}} * {{Z|Z32179}} * {{Z|Z32180}} * {{Z|Z32185}} * {{Z|Z32193}} * {{Z|Z32199}} * {{Z|Z32204}} * {{Z|Z32208}} * {{Z|Z32212}} * {{Z|Z32215}} * {{Z|Z32225}} * {{Z|Z32229}} * {{Z|Z32230}} * {{Z|Z32234}} * {{Z|Z32244}} * {{Z|Z32249}} * {{Z|Z32261}} * {{Z|Z32290}} * {{Z|Z32302}} * {{Z|Z32308}} * {{Z|Z32321}} * {{Z|Z32326}} * {{Z|Z32330}} * {{Z|Z32340}} * {{Z|Z32343}} * {{Z|Z32347}} * {{Z|Z32355}} * {{Z|Z32371}} * {{Z|Z32373}} <div lang="en" dir="ltr" class="mw-content-ltr"> A [https://www.wikifunctions.org/wiki/Special:ListObjectsByType?type=Z8&orderby=latest complete list of all functions sorted by when they were created] is available. </div> [[Category:Status updates{{#translation:}}|2026-03-26]] ls2e6psorht0vo8daz833wahf6pqbx3 261200 261197 2026-03-27T12:40:07Z Ameisenigel 44 Created page with "Übrigens, hier ein Tipp: Aktuell erfolgt das Caching für die Abstrakte Wikipedia auf “Fragment“-Ebene. Das bedeutet: Wenn du mehrere Sätze in einen Absatz einfügst, wird der gesamte Absatz ausgeführt, was zu Zeitüberschreitungen führen kann und im Cache gespeichert wird. Wenn du stattdessen vorerst in jedes Fragment einen Satz einfügst, verteilen sich das Caching und die Auswertung gleichmäßiger, wodurch mehr Inhalte verarbeitet werden können. Wir planen,..." 261200 wikitext text/x-wiki <languages/> {{Wikifunctions updates | prevlabel = Vorheriges Update | prev = 2026-03-19 | nextlabel = Nächstes Update | next = }} <span id="First_few_days_of_Abstract_Wikipedia_Beta"></span> === Erste Tage der Abstrakten Wikipedia Beta === Letzte Woche starteten wir die Beta-Version der Abstrakten Wikipedia und viele von euch haben vorbeigeschaut, einige sind sogar Teil unserer neuen Community geworden. Wir freuen uns sehr über den bisherigen Verlauf! Die Zahlen ändern sich ständig, aber bisher wurden bereits über 120 Artikel begonnen. [[User:ChaoticVermillion|ChaoticVermillion]] hat [https://abstract.wikipedia.org/wiki/User:ChaoticVermillion/First_Abstract_Wiki_pages eine Seite erstellt, um die ersten 25 Artikel zu würdigen]. Besonders erfreulich ist, dass über 75 Freiwillige zum Wiki beigetragen haben und es bereits über 1000 Bearbeitungen gab. Uns ist bewusst, dass das Mitwirken an der Abstrakten Wikipedia derzeit nicht sehr benutzerfreundlich ist und viele Dinge nicht funktionieren. Wir haben bereits zahlreiche Fehler behoben (siehe den Abschnitt zu Letzten Änderungen an der Software weiter unten) und arbeiten an vielen weiteren. Aufgrund der ersten Reaktionen und eurer Rückmeldungen ändern wir unsere Pläne für die kommenden Quartale und konzentrieren uns künftig auf die von euch angesprochenen Fehlerbehebungen, Funktionen und Möglichkeiten. Wir beobachten das Phabricator-Board, die Projektdiskussion und den Telegram-/IRC-Chat und sammeln eure Rückmeldungen und Vorschläge. Dies wird in den nächsten Monaten unsere Priorität sein. Wir freuen uns sehr über die deutlich gestiegene Anzahl neuer Funktionen auf Wikifunctions. Diese Woche konnten wir 79 neue Funktionen vermelden! Einige davon sind für Sprachen gedacht, für die es bisher keine solchen Funktionen gab, und andere bieten Funktionen, die das Schreiben von Artikeln für die Abstrakte Wikipedia erleichtern. Übrigens, hier ein Tipp: Aktuell erfolgt das Caching für die Abstrakte Wikipedia auf “Fragment“-Ebene. Das bedeutet: Wenn du mehrere Sätze in einen Absatz einfügst, wird der gesamte Absatz ausgeführt, was zu Zeitüberschreitungen führen kann und im Cache gespeichert wird. Wenn du stattdessen vorerst in jedes Fragment einen Satz einfügst, verteilen sich das Caching und die Auswertung gleichmäßiger, wodurch mehr Inhalte verarbeitet werden können. Wir planen, dies zukünftig zu beheben, aber es kann noch etwas dauern. Probiere daher vorerst diesen Tipp aus. Du kannst dies später jederzeit wieder ändern und die Sätze bei Bedarf zu Absätzen zusammenfassen. <div lang="en" dir="ltr" class="mw-content-ltr"> As you might have noticed, there have been a few bugs that we've fixed and tweaks that we've made. We fixed a bug that meant that the code mis-configured some namespaces, so broke talk and User pages and published the very first articles in the wrong place ([[:phab:T420617|T420617]], [[:phab:T420649|T420649]]). We switched the orchestrator's composition language temporarily back to v1 ([[:phab:T418887|T418887]]), then made some quick fixes ([[:phab:T419833|T419833]]) and then re-enabled it — see below. We switched up a hard-coded link for policies to the new initial policy list. We fixed a bug that meant the creation workflow looked in the wrong place to make sure you didn't over-write an existing page ([[:phab:T420725|T420725]]), and it worked if you browsed directly to Special:CreateAbstract/Q123456 ([[:phab:T420916|T420916]]). We adjusted the display of previews to correctly set the language's RTL status too ([[:phab:T420687|T420687]]) and we added Help links for the pages to view and create Abstract articles.We're working now on improving performance and caching, fixing the /view/ links to work, making sure Abstract Wikipedia pages show up on the Tools database views, adding to the site statistics process, and a dozen other little things. Thank you for bearing with us! </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Keep giving us feedback! We really appreciate your willingness to try things out, and are very happy to see you accepting this early version of Abstract Wikipedia. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Status of Composition Language v2 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> A couple of weeks ago, we enabled composition language v2 in production. There were some minor bugs that the team was able to triage, but there was also a set of function calls that became categorically impossible to specify. An example case is [[:phab:T419833|here]]. These function calls worked in v1 because of 1) an extremely lazy execution model and 2) lax error handling. In v2, execution order is much stricter (and more comprehensible!), and error handling has become predictable. As a result, when a [[Z7|Z7/Function call]] will cause an error, that error is immediately returned in v2. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We have since added [https://gitlab.wikimedia.org/repos/abstract-wiki/wikifunctions/function-orchestrator/-/merge_requests/606 a temporary layer of indirection] (hereinafter the "scope hack") to the v2 composition language. This will cause affected functions to work much in the way they did in v1. However, this is a temporary measure. It is bad for performance and it makes the Wikifunctions language semantics a bit strange. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> In future, compositions that depend on error-handling functions (e.g. [[Z850|Z850/Try-catch]] and [[Z853|Z853/Get error]]) should wrap top-level [[Z7|Z7/Function calls]] in [[Z99|Z99/Quote]], then use [[Z899|Z899/Unquote]] inside of the composition. This technique is verified to work in all versions of the composition language, so it will be possible to migrate all existing functions. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Another unwanted side effect of v2 and its new strategy for error handling is that many of the failing function calls might return a different error type. While we will work to always return the most accurate and descriptive error type, it is possible that many calls that rely on [[Z850|Z850/Try-catch]] to catch a specific error type will now fail until the expected error type is corrected to the one thrown by v2. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We will document all the content issues that we come across and track their status here: [[Wikifunctions:Request for cleanup|Wikifunctions:Request for cleanup]]. Once these functions have been migrated, we will roll back the scope hack. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Recent Changes in the software === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> This week on Wikifunctions, we made the following changes: When you're editing an article with the visual editor with a Wikifunctions call that creates a reference, we now show the style more clearly. We also now show the standard MediaWiki warning box when you're editing an old version of a Wikifunctions Object page ([[:phab:T364318|T364318]]). </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Wikifunctions presentation at WikiCon Australia on 11 April 2026 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> [[User:99of9|Toby Hudson]] will be presenting [[:meta:Event:WikiCon Australia 2026/Submissions/Wikifunctions in Practice: Reusable Logic for Wikimedia|Wikifunctions in Practice: Reusable Logic for Wikimedia]] at [[:meta:Event:WikiCon Australia 2026|WikiCon Australia]] on 11 April 2026 at 12:00 local time at the [[:en:National Film and Sound Archive|National Film and Sound Archive of Australia]] in [[:en:Canberra|Canberra]]. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Here is the description of the talk: </div> : <span lang="en" dir="ltr" class="mw-content-ltr">''Wikifunctions promises something simple but ambitious: write logic once, and make it reusable across Wikimedia projects and languages. Small, well-chosen functions can have outsized impact and eliminate some updating, copy-pasting, or even translation.''</span> : <span lang="en" dir="ltr" class="mw-content-ltr">''This talk focuses on goals and practical usage rather than internals or programming, but will allow plenty of time for questions from the audience to dig into the details. We'll see what Wikifunctions is and what it's for. We will test a range of existing functions on Wikifunctions directly. We will see how to embed the result of a function call in a regular Wiki page elsewhere on a sister project. Then we will look ahead to how Wikifunctions will play a key role in the future Abstract Wikipedia.''</span> <div lang="en" dir="ltr" class="mw-content-ltr"> Thank you Toby for giving this presentation! And everyone have fun at WikiCon Australia! </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Volunteer’s Corner upcoming on 13 April 2026 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> The next Volunteers’ Corner will be on [https://zonestamp.toolforge.org/1776101400 Monday, 13 April 2026 at 17:30 UTC]. We plan to have the following agenda: there will be time to ask questions and discuss all matters arising. We will celebrate the launch of Abstract Wikipedia Beta. If we have time, we will either write a function together or work on an Abstract Wikipedia article together (volunteer-led). Everyone is welcome to join us on [https://meet.google.com/xuy-njxh-rkw Google Meet]. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Fresh Functions weekly: 76 new Functions === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> This week we had 76 (!) new functions. That’s a lot more than usual, driven by the launch of Abstract Wikipedia Beta. Here is an incomplete list of functions with implementations and passing tests to get a taste of what functions have been created. Thanks everybody for contributing! </div> * {{Z|Z32085}} * {{Z|Z32097}} * {{Z|Z32109}} * {{Z|Z32123}} * {{Z|Z32126}} * {{Z|Z32145}} * {{Z|Z32149}} * {{Z|Z32152}} * {{Z|Z32160}} * {{Z|Z32163}} * {{Z|Z32177}} * {{Z|Z32179}} * {{Z|Z32180}} * {{Z|Z32185}} * {{Z|Z32193}} * {{Z|Z32199}} * {{Z|Z32204}} * {{Z|Z32208}} * {{Z|Z32212}} * {{Z|Z32215}} * {{Z|Z32225}} * {{Z|Z32229}} * {{Z|Z32230}} * {{Z|Z32234}} * {{Z|Z32244}} * {{Z|Z32249}} * {{Z|Z32261}} * {{Z|Z32290}} * {{Z|Z32302}} * {{Z|Z32308}} * {{Z|Z32321}} * {{Z|Z32326}} * {{Z|Z32330}} * {{Z|Z32340}} * {{Z|Z32343}} * {{Z|Z32347}} * {{Z|Z32355}} * {{Z|Z32371}} * {{Z|Z32373}} <div lang="en" dir="ltr" class="mw-content-ltr"> A [https://www.wikifunctions.org/wiki/Special:ListObjectsByType?type=Z8&orderby=latest complete list of all functions sorted by when they were created] is available. </div> [[Category:Status updates{{#translation:}}|2026-03-26]] rv96b43bj80ma8dj0b7hkqcnmeo2b7q 261202 261200 2026-03-27T12:44:07Z Ameisenigel 44 Created page with "Wie du vielleicht bemerkt hast, haben wir einige Fehler behoben und Verbesserungen vorgenommen. Wir haben einen Fehler behoben, der zu einer fehlerhaften Konfiguration einiger Namensräume führte, wodurch die Diskussions- und Benutzerseiten nicht mehr funktionierten und die ersten Artikel am falschen Ort veröffentlicht wurden ($1, $2). Wir haben die Kompositionssprache des Orchestrierers vorübergehend auf v1 zurückgesetzt $3, anschließend einige schnelle Korrekturen..." 261202 wikitext text/x-wiki <languages/> {{Wikifunctions updates | prevlabel = Vorheriges Update | prev = 2026-03-19 | nextlabel = Nächstes Update | next = }} <span id="First_few_days_of_Abstract_Wikipedia_Beta"></span> === Erste Tage der Abstrakten Wikipedia Beta === Letzte Woche starteten wir die Beta-Version der Abstrakten Wikipedia und viele von euch haben vorbeigeschaut, einige sind sogar Teil unserer neuen Community geworden. Wir freuen uns sehr über den bisherigen Verlauf! Die Zahlen ändern sich ständig, aber bisher wurden bereits über 120 Artikel begonnen. [[User:ChaoticVermillion|ChaoticVermillion]] hat [https://abstract.wikipedia.org/wiki/User:ChaoticVermillion/First_Abstract_Wiki_pages eine Seite erstellt, um die ersten 25 Artikel zu würdigen]. Besonders erfreulich ist, dass über 75 Freiwillige zum Wiki beigetragen haben und es bereits über 1000 Bearbeitungen gab. Uns ist bewusst, dass das Mitwirken an der Abstrakten Wikipedia derzeit nicht sehr benutzerfreundlich ist und viele Dinge nicht funktionieren. Wir haben bereits zahlreiche Fehler behoben (siehe den Abschnitt zu Letzten Änderungen an der Software weiter unten) und arbeiten an vielen weiteren. Aufgrund der ersten Reaktionen und eurer Rückmeldungen ändern wir unsere Pläne für die kommenden Quartale und konzentrieren uns künftig auf die von euch angesprochenen Fehlerbehebungen, Funktionen und Möglichkeiten. Wir beobachten das Phabricator-Board, die Projektdiskussion und den Telegram-/IRC-Chat und sammeln eure Rückmeldungen und Vorschläge. Dies wird in den nächsten Monaten unsere Priorität sein. Wir freuen uns sehr über die deutlich gestiegene Anzahl neuer Funktionen auf Wikifunctions. Diese Woche konnten wir 79 neue Funktionen vermelden! Einige davon sind für Sprachen gedacht, für die es bisher keine solchen Funktionen gab, und andere bieten Funktionen, die das Schreiben von Artikeln für die Abstrakte Wikipedia erleichtern. Übrigens, hier ein Tipp: Aktuell erfolgt das Caching für die Abstrakte Wikipedia auf “Fragment“-Ebene. Das bedeutet: Wenn du mehrere Sätze in einen Absatz einfügst, wird der gesamte Absatz ausgeführt, was zu Zeitüberschreitungen führen kann und im Cache gespeichert wird. Wenn du stattdessen vorerst in jedes Fragment einen Satz einfügst, verteilen sich das Caching und die Auswertung gleichmäßiger, wodurch mehr Inhalte verarbeitet werden können. Wir planen, dies zukünftig zu beheben, aber es kann noch etwas dauern. Probiere daher vorerst diesen Tipp aus. Du kannst dies später jederzeit wieder ändern und die Sätze bei Bedarf zu Absätzen zusammenfassen. Wie du vielleicht bemerkt hast, haben wir einige Fehler behoben und Verbesserungen vorgenommen. Wir haben einen Fehler behoben, der zu einer fehlerhaften Konfiguration einiger Namensräume führte, wodurch die Diskussions- und Benutzerseiten nicht mehr funktionierten und die ersten Artikel am falschen Ort veröffentlicht wurden ([[:phab:T420617|T420617]], [[:phab:T420649|T420649]]). Wir haben die Kompositionssprache des Orchestrierers vorübergehend auf v1 zurückgesetzt ([[:phab:T418887|T418887]]), anschließend einige schnelle Korrekturen vorgenommen ([[:phab:T419833|T419833]]) und sie dann wieder aktiviert — siehe unten. Wir haben einen fest codierten Link für Richtlinien auf die neue Liste der initialen Richtlinien geändert. Wir haben einen Fehler behoben, der dazu führte, dass der Arbeitsablauf zur Artikelerstellung an der falschen Stelle suchte, um sicherzustellen, dass du keine bestehende Seite überschreibst ([[:phab:T420725|T420725]]). Er funktionierte, wenn du direkt zu Special:CreateAbstract/Q123456 navigierst ([[:phab:T420916|T420916]]). Wir haben die Vorschauansicht angepasst, um den RTL-Status der Sprache korrekt anzuzeigen ([[:phab:T420687|T420687]]), und Hilfelinks für die Seiten zum Anzeigen und Erstellen von abstrakten Artikeln hinzugefügt. Aktuell arbeiten wir an der Verbesserung der Leistung und des Caching, der Behebung der Probleme mit den /view/-Links, der Anzeige von Seiten der Abstrakten Wikipedia in den Datenbankansichten der Tools, der Erweiterung der Website-Statistiken und einigen weiteren kleineren Optimierungen. Vielen Dank für eure Geduld! <div lang="en" dir="ltr" class="mw-content-ltr"> Keep giving us feedback! We really appreciate your willingness to try things out, and are very happy to see you accepting this early version of Abstract Wikipedia. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Status of Composition Language v2 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> A couple of weeks ago, we enabled composition language v2 in production. There were some minor bugs that the team was able to triage, but there was also a set of function calls that became categorically impossible to specify. An example case is [[:phab:T419833|here]]. These function calls worked in v1 because of 1) an extremely lazy execution model and 2) lax error handling. In v2, execution order is much stricter (and more comprehensible!), and error handling has become predictable. As a result, when a [[Z7|Z7/Function call]] will cause an error, that error is immediately returned in v2. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We have since added [https://gitlab.wikimedia.org/repos/abstract-wiki/wikifunctions/function-orchestrator/-/merge_requests/606 a temporary layer of indirection] (hereinafter the "scope hack") to the v2 composition language. This will cause affected functions to work much in the way they did in v1. However, this is a temporary measure. It is bad for performance and it makes the Wikifunctions language semantics a bit strange. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> In future, compositions that depend on error-handling functions (e.g. [[Z850|Z850/Try-catch]] and [[Z853|Z853/Get error]]) should wrap top-level [[Z7|Z7/Function calls]] in [[Z99|Z99/Quote]], then use [[Z899|Z899/Unquote]] inside of the composition. This technique is verified to work in all versions of the composition language, so it will be possible to migrate all existing functions. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Another unwanted side effect of v2 and its new strategy for error handling is that many of the failing function calls might return a different error type. While we will work to always return the most accurate and descriptive error type, it is possible that many calls that rely on [[Z850|Z850/Try-catch]] to catch a specific error type will now fail until the expected error type is corrected to the one thrown by v2. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We will document all the content issues that we come across and track their status here: [[Wikifunctions:Request for cleanup|Wikifunctions:Request for cleanup]]. Once these functions have been migrated, we will roll back the scope hack. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Recent Changes in the software === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> This week on Wikifunctions, we made the following changes: When you're editing an article with the visual editor with a Wikifunctions call that creates a reference, we now show the style more clearly. We also now show the standard MediaWiki warning box when you're editing an old version of a Wikifunctions Object page ([[:phab:T364318|T364318]]). </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Wikifunctions presentation at WikiCon Australia on 11 April 2026 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> [[User:99of9|Toby Hudson]] will be presenting [[:meta:Event:WikiCon Australia 2026/Submissions/Wikifunctions in Practice: Reusable Logic for Wikimedia|Wikifunctions in Practice: Reusable Logic for Wikimedia]] at [[:meta:Event:WikiCon Australia 2026|WikiCon Australia]] on 11 April 2026 at 12:00 local time at the [[:en:National Film and Sound Archive|National Film and Sound Archive of Australia]] in [[:en:Canberra|Canberra]]. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Here is the description of the talk: </div> : <span lang="en" dir="ltr" class="mw-content-ltr">''Wikifunctions promises something simple but ambitious: write logic once, and make it reusable across Wikimedia projects and languages. Small, well-chosen functions can have outsized impact and eliminate some updating, copy-pasting, or even translation.''</span> : <span lang="en" dir="ltr" class="mw-content-ltr">''This talk focuses on goals and practical usage rather than internals or programming, but will allow plenty of time for questions from the audience to dig into the details. We'll see what Wikifunctions is and what it's for. We will test a range of existing functions on Wikifunctions directly. We will see how to embed the result of a function call in a regular Wiki page elsewhere on a sister project. Then we will look ahead to how Wikifunctions will play a key role in the future Abstract Wikipedia.''</span> <div lang="en" dir="ltr" class="mw-content-ltr"> Thank you Toby for giving this presentation! And everyone have fun at WikiCon Australia! </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Volunteer’s Corner upcoming on 13 April 2026 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> The next Volunteers’ Corner will be on [https://zonestamp.toolforge.org/1776101400 Monday, 13 April 2026 at 17:30 UTC]. We plan to have the following agenda: there will be time to ask questions and discuss all matters arising. We will celebrate the launch of Abstract Wikipedia Beta. If we have time, we will either write a function together or work on an Abstract Wikipedia article together (volunteer-led). Everyone is welcome to join us on [https://meet.google.com/xuy-njxh-rkw Google Meet]. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Fresh Functions weekly: 76 new Functions === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> This week we had 76 (!) new functions. That’s a lot more than usual, driven by the launch of Abstract Wikipedia Beta. Here is an incomplete list of functions with implementations and passing tests to get a taste of what functions have been created. Thanks everybody for contributing! </div> * {{Z|Z32085}} * {{Z|Z32097}} * {{Z|Z32109}} * {{Z|Z32123}} * {{Z|Z32126}} * {{Z|Z32145}} * {{Z|Z32149}} * {{Z|Z32152}} * {{Z|Z32160}} * {{Z|Z32163}} * {{Z|Z32177}} * {{Z|Z32179}} * {{Z|Z32180}} * {{Z|Z32185}} * {{Z|Z32193}} * {{Z|Z32199}} * {{Z|Z32204}} * {{Z|Z32208}} * {{Z|Z32212}} * {{Z|Z32215}} * {{Z|Z32225}} * {{Z|Z32229}} * {{Z|Z32230}} * {{Z|Z32234}} * {{Z|Z32244}} * {{Z|Z32249}} * {{Z|Z32261}} * {{Z|Z32290}} * {{Z|Z32302}} * {{Z|Z32308}} * {{Z|Z32321}} * {{Z|Z32326}} * {{Z|Z32330}} * {{Z|Z32340}} * {{Z|Z32343}} * {{Z|Z32347}} * {{Z|Z32355}} * {{Z|Z32371}} * {{Z|Z32373}} <div lang="en" dir="ltr" class="mw-content-ltr"> A [https://www.wikifunctions.org/wiki/Special:ListObjectsByType?type=Z8&orderby=latest complete list of all functions sorted by when they were created] is available. </div> [[Category:Status updates{{#translation:}}|2026-03-26]] bfk1lc1jieeobh5fw2jv0hrvxinsf20 261271 261202 2026-03-27T17:49:10Z Ameisenigel 44 Created page with "Gibt uns weiterhin Rückmeldung! Wir wissen eure Bereitschaft, Dinge auszuprobieren, sehr zu schätzen und freuen uns, dass ihr diese frühe Version der Abstrakten Wikipedia akzeptiert." 261271 wikitext text/x-wiki <languages/> {{Wikifunctions updates | prevlabel = Vorheriges Update | prev = 2026-03-19 | nextlabel = Nächstes Update | next = }} <span id="First_few_days_of_Abstract_Wikipedia_Beta"></span> === Erste Tage der Abstrakten Wikipedia Beta === Letzte Woche starteten wir die Beta-Version der Abstrakten Wikipedia und viele von euch haben vorbeigeschaut, einige sind sogar Teil unserer neuen Community geworden. Wir freuen uns sehr über den bisherigen Verlauf! Die Zahlen ändern sich ständig, aber bisher wurden bereits über 120 Artikel begonnen. [[User:ChaoticVermillion|ChaoticVermillion]] hat [https://abstract.wikipedia.org/wiki/User:ChaoticVermillion/First_Abstract_Wiki_pages eine Seite erstellt, um die ersten 25 Artikel zu würdigen]. Besonders erfreulich ist, dass über 75 Freiwillige zum Wiki beigetragen haben und es bereits über 1000 Bearbeitungen gab. Uns ist bewusst, dass das Mitwirken an der Abstrakten Wikipedia derzeit nicht sehr benutzerfreundlich ist und viele Dinge nicht funktionieren. Wir haben bereits zahlreiche Fehler behoben (siehe den Abschnitt zu Letzten Änderungen an der Software weiter unten) und arbeiten an vielen weiteren. Aufgrund der ersten Reaktionen und eurer Rückmeldungen ändern wir unsere Pläne für die kommenden Quartale und konzentrieren uns künftig auf die von euch angesprochenen Fehlerbehebungen, Funktionen und Möglichkeiten. Wir beobachten das Phabricator-Board, die Projektdiskussion und den Telegram-/IRC-Chat und sammeln eure Rückmeldungen und Vorschläge. Dies wird in den nächsten Monaten unsere Priorität sein. Wir freuen uns sehr über die deutlich gestiegene Anzahl neuer Funktionen auf Wikifunctions. Diese Woche konnten wir 79 neue Funktionen vermelden! Einige davon sind für Sprachen gedacht, für die es bisher keine solchen Funktionen gab, und andere bieten Funktionen, die das Schreiben von Artikeln für die Abstrakte Wikipedia erleichtern. Übrigens, hier ein Tipp: Aktuell erfolgt das Caching für die Abstrakte Wikipedia auf “Fragment“-Ebene. Das bedeutet: Wenn du mehrere Sätze in einen Absatz einfügst, wird der gesamte Absatz ausgeführt, was zu Zeitüberschreitungen führen kann und im Cache gespeichert wird. Wenn du stattdessen vorerst in jedes Fragment einen Satz einfügst, verteilen sich das Caching und die Auswertung gleichmäßiger, wodurch mehr Inhalte verarbeitet werden können. Wir planen, dies zukünftig zu beheben, aber es kann noch etwas dauern. Probiere daher vorerst diesen Tipp aus. Du kannst dies später jederzeit wieder ändern und die Sätze bei Bedarf zu Absätzen zusammenfassen. Wie du vielleicht bemerkt hast, haben wir einige Fehler behoben und Verbesserungen vorgenommen. Wir haben einen Fehler behoben, der zu einer fehlerhaften Konfiguration einiger Namensräume führte, wodurch die Diskussions- und Benutzerseiten nicht mehr funktionierten und die ersten Artikel am falschen Ort veröffentlicht wurden ([[:phab:T420617|T420617]], [[:phab:T420649|T420649]]). Wir haben die Kompositionssprache des Orchestrierers vorübergehend auf v1 zurückgesetzt ([[:phab:T418887|T418887]]), anschließend einige schnelle Korrekturen vorgenommen ([[:phab:T419833|T419833]]) und sie dann wieder aktiviert — siehe unten. Wir haben einen fest codierten Link für Richtlinien auf die neue Liste der initialen Richtlinien geändert. Wir haben einen Fehler behoben, der dazu führte, dass der Arbeitsablauf zur Artikelerstellung an der falschen Stelle suchte, um sicherzustellen, dass du keine bestehende Seite überschreibst ([[:phab:T420725|T420725]]). Er funktionierte, wenn du direkt zu Special:CreateAbstract/Q123456 navigierst ([[:phab:T420916|T420916]]). Wir haben die Vorschauansicht angepasst, um den RTL-Status der Sprache korrekt anzuzeigen ([[:phab:T420687|T420687]]), und Hilfelinks für die Seiten zum Anzeigen und Erstellen von abstrakten Artikeln hinzugefügt. Aktuell arbeiten wir an der Verbesserung der Leistung und des Caching, der Behebung der Probleme mit den /view/-Links, der Anzeige von Seiten der Abstrakten Wikipedia in den Datenbankansichten der Tools, der Erweiterung der Website-Statistiken und einigen weiteren kleineren Optimierungen. Vielen Dank für eure Geduld! Gibt uns weiterhin Rückmeldung! Wir wissen eure Bereitschaft, Dinge auszuprobieren, sehr zu schätzen und freuen uns, dass ihr diese frühe Version der Abstrakten Wikipedia akzeptiert. <div lang="en" dir="ltr" class="mw-content-ltr"> === Status of Composition Language v2 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> A couple of weeks ago, we enabled composition language v2 in production. There were some minor bugs that the team was able to triage, but there was also a set of function calls that became categorically impossible to specify. An example case is [[:phab:T419833|here]]. These function calls worked in v1 because of 1) an extremely lazy execution model and 2) lax error handling. In v2, execution order is much stricter (and more comprehensible!), and error handling has become predictable. As a result, when a [[Z7|Z7/Function call]] will cause an error, that error is immediately returned in v2. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We have since added [https://gitlab.wikimedia.org/repos/abstract-wiki/wikifunctions/function-orchestrator/-/merge_requests/606 a temporary layer of indirection] (hereinafter the "scope hack") to the v2 composition language. This will cause affected functions to work much in the way they did in v1. However, this is a temporary measure. It is bad for performance and it makes the Wikifunctions language semantics a bit strange. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> In future, compositions that depend on error-handling functions (e.g. [[Z850|Z850/Try-catch]] and [[Z853|Z853/Get error]]) should wrap top-level [[Z7|Z7/Function calls]] in [[Z99|Z99/Quote]], then use [[Z899|Z899/Unquote]] inside of the composition. This technique is verified to work in all versions of the composition language, so it will be possible to migrate all existing functions. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Another unwanted side effect of v2 and its new strategy for error handling is that many of the failing function calls might return a different error type. While we will work to always return the most accurate and descriptive error type, it is possible that many calls that rely on [[Z850|Z850/Try-catch]] to catch a specific error type will now fail until the expected error type is corrected to the one thrown by v2. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We will document all the content issues that we come across and track their status here: [[Wikifunctions:Request for cleanup|Wikifunctions:Request for cleanup]]. Once these functions have been migrated, we will roll back the scope hack. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Recent Changes in the software === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> This week on Wikifunctions, we made the following changes: When you're editing an article with the visual editor with a Wikifunctions call that creates a reference, we now show the style more clearly. We also now show the standard MediaWiki warning box when you're editing an old version of a Wikifunctions Object page ([[:phab:T364318|T364318]]). </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Wikifunctions presentation at WikiCon Australia on 11 April 2026 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> [[User:99of9|Toby Hudson]] will be presenting [[:meta:Event:WikiCon Australia 2026/Submissions/Wikifunctions in Practice: Reusable Logic for Wikimedia|Wikifunctions in Practice: Reusable Logic for Wikimedia]] at [[:meta:Event:WikiCon Australia 2026|WikiCon Australia]] on 11 April 2026 at 12:00 local time at the [[:en:National Film and Sound Archive|National Film and Sound Archive of Australia]] in [[:en:Canberra|Canberra]]. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> Here is the description of the talk: </div> : <span lang="en" dir="ltr" class="mw-content-ltr">''Wikifunctions promises something simple but ambitious: write logic once, and make it reusable across Wikimedia projects and languages. Small, well-chosen functions can have outsized impact and eliminate some updating, copy-pasting, or even translation.''</span> : <span lang="en" dir="ltr" class="mw-content-ltr">''This talk focuses on goals and practical usage rather than internals or programming, but will allow plenty of time for questions from the audience to dig into the details. We'll see what Wikifunctions is and what it's for. We will test a range of existing functions on Wikifunctions directly. We will see how to embed the result of a function call in a regular Wiki page elsewhere on a sister project. Then we will look ahead to how Wikifunctions will play a key role in the future Abstract Wikipedia.''</span> <div lang="en" dir="ltr" class="mw-content-ltr"> Thank you Toby for giving this presentation! And everyone have fun at WikiCon Australia! </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Volunteer’s Corner upcoming on 13 April 2026 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> The next Volunteers’ Corner will be on [https://zonestamp.toolforge.org/1776101400 Monday, 13 April 2026 at 17:30 UTC]. We plan to have the following agenda: there will be time to ask questions and discuss all matters arising. We will celebrate the launch of Abstract Wikipedia Beta. If we have time, we will either write a function together or work on an Abstract Wikipedia article together (volunteer-led). Everyone is welcome to join us on [https://meet.google.com/xuy-njxh-rkw Google Meet]. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Fresh Functions weekly: 76 new Functions === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> This week we had 76 (!) new functions. That’s a lot more than usual, driven by the launch of Abstract Wikipedia Beta. Here is an incomplete list of functions with implementations and passing tests to get a taste of what functions have been created. Thanks everybody for contributing! </div> * {{Z|Z32085}} * {{Z|Z32097}} * {{Z|Z32109}} * {{Z|Z32123}} * {{Z|Z32126}} * {{Z|Z32145}} * {{Z|Z32149}} * {{Z|Z32152}} * {{Z|Z32160}} * {{Z|Z32163}} * {{Z|Z32177}} * {{Z|Z32179}} * {{Z|Z32180}} * {{Z|Z32185}} * {{Z|Z32193}} * {{Z|Z32199}} * {{Z|Z32204}} * {{Z|Z32208}} * {{Z|Z32212}} * {{Z|Z32215}} * {{Z|Z32225}} * {{Z|Z32229}} * {{Z|Z32230}} * {{Z|Z32234}} * {{Z|Z32244}} * {{Z|Z32249}} * {{Z|Z32261}} * {{Z|Z32290}} * {{Z|Z32302}} * {{Z|Z32308}} * {{Z|Z32321}} * {{Z|Z32326}} * {{Z|Z32330}} * {{Z|Z32340}} * {{Z|Z32343}} * {{Z|Z32347}} * {{Z|Z32355}} * {{Z|Z32371}} * {{Z|Z32373}} <div lang="en" dir="ltr" class="mw-content-ltr"> A [https://www.wikifunctions.org/wiki/Special:ListObjectsByType?type=Z8&orderby=latest complete list of all functions sorted by when they were created] is available. </div> [[Category:Status updates{{#translation:}}|2026-03-26]] ttz6ojbhj27ckentchxsclhfdmyyw2a Translations:Wikifunctions:Status updates/2026-03-26/1/de 1198 79212 261176 2026-03-27T11:59:35Z Ameisenigel 44 Created page with "Vorheriges Update" 261176 wikitext text/x-wiki Vorheriges Update gip3hi7u0wf8jv7dena73ndlrx52ohv Translations:Wikifunctions:Status updates/2026-03-26/2/de 1198 79213 261178 2026-03-27T11:59:49Z Ameisenigel 44 Created page with "Nächstes Update" 261178 wikitext text/x-wiki Nächstes Update srj2pwwjkwr7a3zol9puxaaqvo0drwd Translations:Wikifunctions:Status updates/2026-03-26/3/de 1198 79214 261180 2026-03-27T12:00:08Z Ameisenigel 44 Created page with "=== Erste Tage der Abstrakten Wikipedia Beta ===" 261180 wikitext text/x-wiki === Erste Tage der Abstrakten Wikipedia Beta === pvikf1l57vjd61prxkurbzyudiu3rzd Translations:Wikifunctions:Status updates/2026-03-26/24/de 1198 79215 261182 2026-03-27T12:01:22Z Ameisenigel 44 Created page with "Letzte Woche starteten wir die Beta-Version der Abstrakten Wikipedia und viele von euch haben vorbeigeschaut, einige sind sogar Teil unserer neuen Community geworden. Wir freuen uns sehr über den bisherigen Verlauf!" 261182 wikitext text/x-wiki Letzte Woche starteten wir die Beta-Version der Abstrakten Wikipedia und viele von euch haben vorbeigeschaut, einige sind sogar Teil unserer neuen Community geworden. Wir freuen uns sehr über den bisherigen Verlauf! dfi2c2n7najlv2593usfmwj24k8h0zw Translations:Wikifunctions:Status updates/2026-03-26/4/de 1198 79216 261186 2026-03-27T12:04:01Z Ameisenigel 44 Created page with "Die Zahlen ändern sich ständig, aber bisher wurden bereits über 120 Artikel begonnen. [[$1|ChaoticVermillion]] hat [$2 eine Seite erstellt, um die ersten 25 Artikel zu würdigen]. Besonders erfreulich ist, dass über 75 Freiwillige zum Wiki beigetragen haben und es bereits über 1000 Bearbeitungen gab. Uns ist bewusst, dass das Mitwirken an der Abstrakten Wikipedia derzeit nicht sehr benutzerfreundlich ist und viele Dinge nicht funktionieren. Wir haben bereits zahlrei..." 261186 wikitext text/x-wiki Die Zahlen ändern sich ständig, aber bisher wurden bereits über 120 Artikel begonnen. [[$1|ChaoticVermillion]] hat [$2 eine Seite erstellt, um die ersten 25 Artikel zu würdigen]. Besonders erfreulich ist, dass über 75 Freiwillige zum Wiki beigetragen haben und es bereits über 1000 Bearbeitungen gab. Uns ist bewusst, dass das Mitwirken an der Abstrakten Wikipedia derzeit nicht sehr benutzerfreundlich ist und viele Dinge nicht funktionieren. Wir haben bereits zahlreiche Fehler behoben (siehe den Abschnitt zu Letzten Änderungen an der Software weiter unten) und arbeiten an vielen weiteren. 6zfvr9mgqp6jcq6le1ie4ktoxcp5gpg Translations:Wikifunctions:Status updates/2026-03-26/5/de 1198 79217 261188 2026-03-27T12:05:14Z Ameisenigel 44 Created page with "Aufgrund der ersten Reaktionen und eurer Rückmeldungen ändern wir unsere Pläne für die kommenden Quartale und konzentrieren uns künftig auf die von euch angesprochenen Fehlerbehebungen, Funktionen und Möglichkeiten. Wir beobachten das Phabricator-Board, die Projektdiskussion und den Telegram-/IRC-Chat und sammeln eure Rückmeldungen und Vorschläge. Dies wird in den nächsten Monaten unsere Priorität sein." 261188 wikitext text/x-wiki Aufgrund der ersten Reaktionen und eurer Rückmeldungen ändern wir unsere Pläne für die kommenden Quartale und konzentrieren uns künftig auf die von euch angesprochenen Fehlerbehebungen, Funktionen und Möglichkeiten. Wir beobachten das Phabricator-Board, die Projektdiskussion und den Telegram-/IRC-Chat und sammeln eure Rückmeldungen und Vorschläge. Dies wird in den nächsten Monaten unsere Priorität sein. c19ro241vi449z064uecse1aq93gyu5 Translations:Wikifunctions:Status updates/2026-03-26/6/de 1198 79218 261196 2026-03-27T12:38:37Z Ameisenigel 44 Created page with "Wir freuen uns sehr über die deutlich gestiegene Anzahl neuer Funktionen auf Wikifunctions. Diese Woche konnten wir 79 neue Funktionen vermelden! Einige davon sind für Sprachen gedacht, für die es bisher keine solchen Funktionen gab, und andere bieten Funktionen, die das Schreiben von Artikeln für die Abstrakte Wikipedia erleichtern." 261196 wikitext text/x-wiki Wir freuen uns sehr über die deutlich gestiegene Anzahl neuer Funktionen auf Wikifunctions. Diese Woche konnten wir 79 neue Funktionen vermelden! Einige davon sind für Sprachen gedacht, für die es bisher keine solchen Funktionen gab, und andere bieten Funktionen, die das Schreiben von Artikeln für die Abstrakte Wikipedia erleichtern. o5fomsf030v79vaiq546bq009yik72w Translations:Wikifunctions:Status updates/2026-03-26/7/de 1198 79219 261199 2026-03-27T12:40:06Z Ameisenigel 44 Created page with "Übrigens, hier ein Tipp: Aktuell erfolgt das Caching für die Abstrakte Wikipedia auf “Fragment“-Ebene. Das bedeutet: Wenn du mehrere Sätze in einen Absatz einfügst, wird der gesamte Absatz ausgeführt, was zu Zeitüberschreitungen führen kann und im Cache gespeichert wird. Wenn du stattdessen vorerst in jedes Fragment einen Satz einfügst, verteilen sich das Caching und die Auswertung gleichmäßiger, wodurch mehr Inhalte verarbeitet werden können. Wir planen,..." 261199 wikitext text/x-wiki Übrigens, hier ein Tipp: Aktuell erfolgt das Caching für die Abstrakte Wikipedia auf “Fragment“-Ebene. Das bedeutet: Wenn du mehrere Sätze in einen Absatz einfügst, wird der gesamte Absatz ausgeführt, was zu Zeitüberschreitungen führen kann und im Cache gespeichert wird. Wenn du stattdessen vorerst in jedes Fragment einen Satz einfügst, verteilen sich das Caching und die Auswertung gleichmäßiger, wodurch mehr Inhalte verarbeitet werden können. Wir planen, dies zukünftig zu beheben, aber es kann noch etwas dauern. Probiere daher vorerst diesen Tipp aus. Du kannst dies später jederzeit wieder ändern und die Sätze bei Bedarf zu Absätzen zusammenfassen. lbs3zxg6a8095dzx0tjw0uf9ae1kplt Translations:Wikifunctions:Status updates/2026-03-26/8/de 1198 79220 261201 2026-03-27T12:44:06Z Ameisenigel 44 Created page with "Wie du vielleicht bemerkt hast, haben wir einige Fehler behoben und Verbesserungen vorgenommen. Wir haben einen Fehler behoben, der zu einer fehlerhaften Konfiguration einiger Namensräume führte, wodurch die Diskussions- und Benutzerseiten nicht mehr funktionierten und die ersten Artikel am falschen Ort veröffentlicht wurden ($1, $2). Wir haben die Kompositionssprache des Orchestrierers vorübergehend auf v1 zurückgesetzt $3, anschließend einige schnelle Korrekturen..." 261201 wikitext text/x-wiki Wie du vielleicht bemerkt hast, haben wir einige Fehler behoben und Verbesserungen vorgenommen. Wir haben einen Fehler behoben, der zu einer fehlerhaften Konfiguration einiger Namensräume führte, wodurch die Diskussions- und Benutzerseiten nicht mehr funktionierten und die ersten Artikel am falschen Ort veröffentlicht wurden ($1, $2). Wir haben die Kompositionssprache des Orchestrierers vorübergehend auf v1 zurückgesetzt $3, anschließend einige schnelle Korrekturen vorgenommen ($4) und sie dann wieder aktiviert — siehe unten. Wir haben einen fest codierten Link für Richtlinien auf die neue Liste der initialen Richtlinien geändert. Wir haben einen Fehler behoben, der dazu führte, dass der Arbeitsablauf zur Artikelerstellung an der falschen Stelle suchte, um sicherzustellen, dass du keine bestehende Seite überschreibst ($5). Er funktionierte, wenn du direkt zu Special:CreateAbstract/Q123456 navigierst ($6). Wir haben die Vorschauansicht angepasst, um den RTL-Status der Sprache korrekt anzuzeigen ($7), und Hilfelinks für die Seiten zum Anzeigen und Erstellen von abstrakten Artikeln hinzugefügt. Aktuell arbeiten wir an der Verbesserung der Leistung und des Caching, der Behebung der Probleme mit den /view/-Links, der Anzeige von Seiten der Abstrakten Wikipedia in den Datenbankansichten der Tools, der Erweiterung der Website-Statistiken und einigen weiteren kleineren Optimierungen. Vielen Dank für eure Geduld! hd4us1gtit1x2clccitgile5wmlhe6o Z32793 0 79221 261203 2026-03-27T13:40:51Z YoshiRulz 10156 Create function 261203 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32793" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z32793K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "text (kana only)" } ] } } ], "Z8K2": "Z6", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32793" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "IPA transcription from Japanese kana text" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 9x1m07s9byw956ofv9nne7btx1s5ft8 261212 261203 2026-03-27T13:51:04Z YoshiRulz 10156 Added Z32795, Z32796, Z32797, Z32798, Z32799, Z32800 and Z32801 to the approved list of test cases 261212 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32793" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z32793K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "text (kana only)" } ] } } ], "Z8K2": "Z6", "Z8K3": [ "Z20", "Z32795", "Z32796", "Z32797", "Z32798", "Z32799", "Z32800", "Z32801" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32793" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "IPA transcription from Japanese kana text" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } qbjdm0zbr2aluyxdzrh1csbagkw96xb 261215 261212 2026-03-27T13:57:17Z YoshiRulz 10156 Added Z32794 to the approved list of implementations 261215 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32793" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z32793K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "text (kana only)" } ] } } ], "Z8K2": "Z6", "Z8K3": [ "Z20", "Z32795", "Z32796", "Z32797", "Z32798", "Z32799", "Z32800", "Z32801" ], "Z8K4": [ "Z14", "Z32794" ], "Z8K5": "Z32793" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "IPA transcription from Japanese kana text" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 0hd4lo4ytlra6gdmhg42qfjxtmycqz8 Z32794 0 79222 261204 2026-03-27T13:44:28Z YoshiRulz 10156 Create implementation 261204 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32794" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32793", "Z14K3": { "Z1K1": "Z16", "Z16K1": "Z600", "Z16K2": "// https://github.com/amanoese/kana2ipa/tree/263a862500794c21a8146365b0aa7f148146dd15\n/* Copyright 2019 Seito Taka\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nlet ipa = {\n \"ア\" :\"a\",\n \"イ\" :\"i\",\n \"ウ\" :\"ɯ\",\n \"エ\" :\"e\",\n \"オ\" :\"o\",\n \"ャ\" :\"ja\",\n \"ュ\" :\"jɯ\",\n \"ョ\" :\"jo\",\n \"カ\" :\"ka\",\n \"キ\" :\"kʲi\",\n \"ク\" :\"kɯ\",\n \"ケ\" :\"ke\",\n \"コ\" :\"ko\",\n \"サ\" :\"sa\",\n \"シ\" :\"ɕi\",\n \"ス\" :\"sɯ\",\n \"セ\" :\"se\",\n \"ソ\" :\"so\",\n \"タ\" :\"ta\",\n \"チ\" :\"t͡ɕi\",\n \"ツ\" :\"tsɯ\",\n \"テ\" :\"te\",\n \"ト\" :\"to\",\n \"ナ\" :\"na\",\n \"ニ\" :\"ɲi\",\n \"ヌ\" :\"nɯ\",\n \"ネ\" :\"ne\",\n \"ノ\" :\"no\",\n \"ハ\" :\"ha\",\n \"ヒ\" :\"çʲi\",\n \"フ\" :\"ɸɯ\",\n \"ヘ\" :\"he\",\n \"ホ\" :\"ho\",\n \"マ\" :\"ma\",\n \"ミ\" :\"mʲi\",\n \"ム\" :\"mɯ\",\n \"メ\" :\"me\",\n \"モ\" :\"mo\",\n \"ヤ\" :\"ja\",\n \"ユ\" :\"jɯ\",\n \"ヨ\" :\"jo\",\n \"ラ\" :\"ɾa\",\n \"リ\" :\"ɾʲi\",\n \"ル\" :\"ɾɯ\",\n \"レ\" :\"ɾe\",\n \"ロ\" :\"ɾo\",\n \"ワ\" :\"ɰa\",\n \"ヰ\" :\"i\",\n \"ヱ\" :\"e\",\n \"ヲ\" :\"o\",\n \"ン\" :\"N\",\n \"ガ\" :\"ɡa\",\n \"ギ\" :\"ɡʲi\",\n \"グ\" :\"ɡɯ\",\n \"ゲ\" :\"ɡe\",\n \"ゴ\" :\"ɡo\",\n \"ザ\" :\"dza\",\n \"ジ\" :\"ʤi\",\n \"ズ\" :\"dzɯ\",\n \"ゼ\" :\"dze\",\n \"ゾ\" :\"dzo\",\n \"ダ\" :\"da\",\n \"ヂ\" :\"ʤi\",\n \"ヅ\" :\"dzɯ\",\n \"デ\" :\"de\",\n \"ド\" :\"do\",\n \"バ\" :\"ba\",\n \"ビ\" :\"bʲi\",\n \"ブ\" :\"bɯ\",\n \"ベ\" :\"be\",\n \"ボ\" :\"bo\",\n \"パ\" :\"pa\",\n \"ピ\" :\"pʲi\",\n \"プ\" :\"pɯ\",\n \"ペ\" :\"pe\",\n \"ポ\" :\"po\"\n}\nlet ipa_small = {\n \"キャ\" :\"kʲa\",\n \"キュ\" :\"kʲɯ\",\n \"キョ\" :\"kʲo\",\n \"シャ\" :\"ʃa\",\n \"シュ\" :\"ʃɯ\",\n \"ショ\" :\"ʃo\",\n \"チャ\" :\"t͡ɕa\",\n \"チュ\" :\"t͡ɕɯ\",\n \"チョ\" :\"t͡ɕo\",\n \"ニャ\" :\"ɲa\",\n \"ニュ\" :\"ɲɯ\",\n \"ニョ\" :\"ɲo\",\n \"ヒャ\" :\"ça\",\n \"ヒュ\" :\"çɯ\",\n \"ヒョ\" :\"ço\",\n \"ミャ\" :\"mʲa\",\n \"ミュ\" :\"mʲɯ\",\n \"ミョ\" :\"mʲo\",\n \"リャ\" :\"ɾʲa\",\n \"リュ\" :\"ɾʲɯ\",\n \"リョ\" :\"ɾʲo\",\n \"ギャ\" :\"ɡʲa\",\n \"ギュ\" :\"ɡʲɯ\",\n \"ギョ\" :\"ɡʲo\",\n \"ジャ\" :\"ʤa\",\n \"ジュ\" :\"ʤɯ\",\n \"ジョ\" :\"ʤo\",\n \"ヂャ\" :\"ʤa\",\n \"ヂュ\" :\"ʤɯ\",\n \"ヂョ\" :\"ʤo\",\n \"ビャ\" :\"bʲa\",\n \"ビュ\" :\"bʲɯ\",\n \"ビョ\" :\"bʲo\",\n \"ピャ\" :\"pʲa\",\n \"ピュ\" :\"pʲɯ\",\n \"ピョ\" :\"pʲo\",\n \"ファ\" :\"ɸa\",\n \"フィ\" :\"ɸi\",\n \"フゥ\" :\"ɸɯ\",\n \"フェ\" :\"ɸe\",\n \"フォ\" :\"ɸo\",\n \"チェ\" :\"t͡ɕe\"\n}\n\nfunction hiragana2katakana(text) {\n const _regexp = /\\p{Hiragana}/gu\n return text.replace(_regexp,v=\u003E String.fromCharCode(+v.charCodeAt(0) + 0x60))\n}\nfunction kana2ipa(inText) {\n if (inText.length \u003C= 0) {\n return inText\n }\n let ipa_small_match = Object.keys(ipa_small).join('|').replace(/.*/,'($\u0026)')\n\n let katakanaText = this.hiragana2katakana(inText)\n // replace Basic Word\n let bIpaString = katakanaText\n .normalize('NFKC') // harf size to wide size\n .replace(new RegExp(ipa_small_match,'g'),v=\u003E(ipa_small[v]||v))\n .match(/./ug)\n .map(v=\u003Eipa[v]||v)\n .join('')\n\n //important ん is Specialy word\n let nIpaString = bIpaString\n .replace(/N(p|b|m)/g,'m$1')\n .replace(/N(t|d|t͡s|n)/gu,'n$1')\n .replace(/N(k|ɡ)/g,'ŋ$1')\n .replace(/N(ɽ)/g,'ṉ$1')\n .replace(/(.)N(a|i|ɯ|e|o|s|h|j|w)/ug,'$1$1\\u0303$2')\n .replace(/N/ug,'ɴ')\n .normalize('NFC')\n\n //convert Specialy word\n let mIpaString = nIpaString\n .replace(/ッ(.)/ug,'$1$1')\n .replace(/mm/ug,'mː') // んの後にpの発音が来たとき用?\n .replace(/nn/ug,'nː') // これはよくわかんない\n .replace(/oɯ/ug,'oː') // おう の発音はオーになる?\n .replace(/(.)ー/ug,'$1ː')\n .normalize('NFC')\n\n return mIpaString\n}\n\nfunction Z32793( Z32793K1 ) {\n\treturn kana2ipa(Z32793K1)\n}" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "IPA transcription from Japanese kana text, JS" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } q7azx4l8ku55bop62u04i0mxscesjy3 261213 261204 2026-03-27T13:55:48Z YoshiRulz 10156 Hardcode code points in RegEx in lieu of script support 261213 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32794" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32793", "Z14K3": { "Z1K1": "Z16", "Z16K1": "Z600", "Z16K2": "// https://github.com/amanoese/kana2ipa/tree/263a862500794c21a8146365b0aa7f148146dd15\n/* Copyright 2019 Seito Taka\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nlet ipa = {\n \"ア\" :\"a\",\n \"イ\" :\"i\",\n \"ウ\" :\"ɯ\",\n \"エ\" :\"e\",\n \"オ\" :\"o\",\n \"ャ\" :\"ja\",\n \"ュ\" :\"jɯ\",\n \"ョ\" :\"jo\",\n \"カ\" :\"ka\",\n \"キ\" :\"kʲi\",\n \"ク\" :\"kɯ\",\n \"ケ\" :\"ke\",\n \"コ\" :\"ko\",\n \"サ\" :\"sa\",\n \"シ\" :\"ɕi\",\n \"ス\" :\"sɯ\",\n \"セ\" :\"se\",\n \"ソ\" :\"so\",\n \"タ\" :\"ta\",\n \"チ\" :\"t͡ɕi\",\n \"ツ\" :\"tsɯ\",\n \"テ\" :\"te\",\n \"ト\" :\"to\",\n \"ナ\" :\"na\",\n \"ニ\" :\"ɲi\",\n \"ヌ\" :\"nɯ\",\n \"ネ\" :\"ne\",\n \"ノ\" :\"no\",\n \"ハ\" :\"ha\",\n \"ヒ\" :\"çʲi\",\n \"フ\" :\"ɸɯ\",\n \"ヘ\" :\"he\",\n \"ホ\" :\"ho\",\n \"マ\" :\"ma\",\n \"ミ\" :\"mʲi\",\n \"ム\" :\"mɯ\",\n \"メ\" :\"me\",\n \"モ\" :\"mo\",\n \"ヤ\" :\"ja\",\n \"ユ\" :\"jɯ\",\n \"ヨ\" :\"jo\",\n \"ラ\" :\"ɾa\",\n \"リ\" :\"ɾʲi\",\n \"ル\" :\"ɾɯ\",\n \"レ\" :\"ɾe\",\n \"ロ\" :\"ɾo\",\n \"ワ\" :\"ɰa\",\n \"ヰ\" :\"i\",\n \"ヱ\" :\"e\",\n \"ヲ\" :\"o\",\n \"ン\" :\"N\",\n \"ガ\" :\"ɡa\",\n \"ギ\" :\"ɡʲi\",\n \"グ\" :\"ɡɯ\",\n \"ゲ\" :\"ɡe\",\n \"ゴ\" :\"ɡo\",\n \"ザ\" :\"dza\",\n \"ジ\" :\"ʤi\",\n \"ズ\" :\"dzɯ\",\n \"ゼ\" :\"dze\",\n \"ゾ\" :\"dzo\",\n \"ダ\" :\"da\",\n \"ヂ\" :\"ʤi\",\n \"ヅ\" :\"dzɯ\",\n \"デ\" :\"de\",\n \"ド\" :\"do\",\n \"バ\" :\"ba\",\n \"ビ\" :\"bʲi\",\n \"ブ\" :\"bɯ\",\n \"ベ\" :\"be\",\n \"ボ\" :\"bo\",\n \"パ\" :\"pa\",\n \"ピ\" :\"pʲi\",\n \"プ\" :\"pɯ\",\n \"ペ\" :\"pe\",\n \"ポ\" :\"po\"\n}\nlet ipa_small = {\n \"キャ\" :\"kʲa\",\n \"キュ\" :\"kʲɯ\",\n \"キョ\" :\"kʲo\",\n \"シャ\" :\"ʃa\",\n \"シュ\" :\"ʃɯ\",\n \"ショ\" :\"ʃo\",\n \"チャ\" :\"t͡ɕa\",\n \"チュ\" :\"t͡ɕɯ\",\n \"チョ\" :\"t͡ɕo\",\n \"ニャ\" :\"ɲa\",\n \"ニュ\" :\"ɲɯ\",\n \"ニョ\" :\"ɲo\",\n \"ヒャ\" :\"ça\",\n \"ヒュ\" :\"çɯ\",\n \"ヒョ\" :\"ço\",\n \"ミャ\" :\"mʲa\",\n \"ミュ\" :\"mʲɯ\",\n \"ミョ\" :\"mʲo\",\n \"リャ\" :\"ɾʲa\",\n \"リュ\" :\"ɾʲɯ\",\n \"リョ\" :\"ɾʲo\",\n \"ギャ\" :\"ɡʲa\",\n \"ギュ\" :\"ɡʲɯ\",\n \"ギョ\" :\"ɡʲo\",\n \"ジャ\" :\"ʤa\",\n \"ジュ\" :\"ʤɯ\",\n \"ジョ\" :\"ʤo\",\n \"ヂャ\" :\"ʤa\",\n \"ヂュ\" :\"ʤɯ\",\n \"ヂョ\" :\"ʤo\",\n \"ビャ\" :\"bʲa\",\n \"ビュ\" :\"bʲɯ\",\n \"ビョ\" :\"bʲo\",\n \"ピャ\" :\"pʲa\",\n \"ピュ\" :\"pʲɯ\",\n \"ピョ\" :\"pʲo\",\n \"ファ\" :\"ɸa\",\n \"フィ\" :\"ɸi\",\n \"フゥ\" :\"ɸɯ\",\n \"フェ\" :\"ɸe\",\n \"フォ\" :\"ɸo\",\n \"チェ\" :\"t͡ɕe\"\n}\n\nfunction hiragana2katakana(text) {\n//const _regexp = /\\p{Hiragana}/gu\n /*\n3041..3096 ; Hiragana # Lo [86] HIRAGANA LETTER SMALL A..HIRAGANA LETTER SMALL KE\n309D..309E ; Hiragana # Lm [2] HIRAGANA ITERATION MARK..HIRAGANA VOICED ITERATION MARK\n309F ; Hiragana # Lo HIRAGANA DIGRAPH YORI\n1B001..1B11F ; Hiragana # Lo [287] HIRAGANA LETTER ARCHAIC YE..HIRAGANA LETTER ARCHAIC WU\n1B132 ; Hiragana # Lo HIRAGANA LETTER SMALL KO\n1B150..1B152 ; Hiragana # Lo [3] HIRAGANA LETTER SMALL WI..HIRAGANA LETTER SMALL WO\n1F200 ; Hiragana # So SQUARE HIRAGANA HOKA\n */\n const _regexp = /[\\u3041-\\u3096\\u309D-\\u309E\\u309F\\u{1B001}-\\u{1B11F}\\u{1B132}\\u{1B150}-\\u{1B152}\\u{1F200}]/gu\n return text.replace(_regexp,v=\u003E String.fromCharCode(+v.charCodeAt(0) + 0x60))\n}\nfunction kana2ipa(inText) {\n if (inText.length \u003C= 0) {\n return inText\n }\n let ipa_small_match = Object.keys(ipa_small).join('|').replace(/.*/,'($\u0026)')\n\n let katakanaText = this.hiragana2katakana(inText)\n // replace Basic Word\n let bIpaString = katakanaText\n .normalize('NFKC') // harf size to wide size\n .replace(new RegExp(ipa_small_match,'g'),v=\u003E(ipa_small[v]||v))\n .match(/./ug)\n .map(v=\u003Eipa[v]||v)\n .join('')\n\n //important ん is Specialy word\n let nIpaString = bIpaString\n .replace(/N(p|b|m)/g,'m$1')\n .replace(/N(t|d|t͡s|n)/gu,'n$1')\n .replace(/N(k|ɡ)/g,'ŋ$1')\n .replace(/N(ɽ)/g,'ṉ$1')\n .replace(/(.)N(a|i|ɯ|e|o|s|h|j|w)/ug,'$1$1\\u0303$2')\n .replace(/N/ug,'ɴ')\n .normalize('NFC')\n\n //convert Specialy word\n let mIpaString = nIpaString\n .replace(/ッ(.)/ug,'$1$1')\n .replace(/mm/ug,'mː') // んの後にpの発音が来たとき用?\n .replace(/nn/ug,'nː') // これはよくわかんない\n .replace(/oɯ/ug,'oː') // おう の発音はオーになる?\n .replace(/(.)ー/ug,'$1ː')\n .normalize('NFC')\n\n return mIpaString\n}\n\nfunction Z32793( Z32793K1 ) {\n\treturn kana2ipa(Z32793K1)\n}" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "IPA transcription from Japanese kana text, JS" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 2dbz6bd9h9kmd76mcn3ohdl5u1y5592 261214 261213 2026-03-27T13:57:03Z YoshiRulz 10156 Fix typo from de-OOP conversion 261214 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32794" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32793", "Z14K3": { "Z1K1": "Z16", "Z16K1": "Z600", "Z16K2": "// https://github.com/amanoese/kana2ipa/tree/263a862500794c21a8146365b0aa7f148146dd15\n/* Copyright 2019 Seito Taka\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nlet ipa = {\n \"ア\" :\"a\",\n \"イ\" :\"i\",\n \"ウ\" :\"ɯ\",\n \"エ\" :\"e\",\n \"オ\" :\"o\",\n \"ャ\" :\"ja\",\n \"ュ\" :\"jɯ\",\n \"ョ\" :\"jo\",\n \"カ\" :\"ka\",\n \"キ\" :\"kʲi\",\n \"ク\" :\"kɯ\",\n \"ケ\" :\"ke\",\n \"コ\" :\"ko\",\n \"サ\" :\"sa\",\n \"シ\" :\"ɕi\",\n \"ス\" :\"sɯ\",\n \"セ\" :\"se\",\n \"ソ\" :\"so\",\n \"タ\" :\"ta\",\n \"チ\" :\"t͡ɕi\",\n \"ツ\" :\"tsɯ\",\n \"テ\" :\"te\",\n \"ト\" :\"to\",\n \"ナ\" :\"na\",\n \"ニ\" :\"ɲi\",\n \"ヌ\" :\"nɯ\",\n \"ネ\" :\"ne\",\n \"ノ\" :\"no\",\n \"ハ\" :\"ha\",\n \"ヒ\" :\"çʲi\",\n \"フ\" :\"ɸɯ\",\n \"ヘ\" :\"he\",\n \"ホ\" :\"ho\",\n \"マ\" :\"ma\",\n \"ミ\" :\"mʲi\",\n \"ム\" :\"mɯ\",\n \"メ\" :\"me\",\n \"モ\" :\"mo\",\n \"ヤ\" :\"ja\",\n \"ユ\" :\"jɯ\",\n \"ヨ\" :\"jo\",\n \"ラ\" :\"ɾa\",\n \"リ\" :\"ɾʲi\",\n \"ル\" :\"ɾɯ\",\n \"レ\" :\"ɾe\",\n \"ロ\" :\"ɾo\",\n \"ワ\" :\"ɰa\",\n \"ヰ\" :\"i\",\n \"ヱ\" :\"e\",\n \"ヲ\" :\"o\",\n \"ン\" :\"N\",\n \"ガ\" :\"ɡa\",\n \"ギ\" :\"ɡʲi\",\n \"グ\" :\"ɡɯ\",\n \"ゲ\" :\"ɡe\",\n \"ゴ\" :\"ɡo\",\n \"ザ\" :\"dza\",\n \"ジ\" :\"ʤi\",\n \"ズ\" :\"dzɯ\",\n \"ゼ\" :\"dze\",\n \"ゾ\" :\"dzo\",\n \"ダ\" :\"da\",\n \"ヂ\" :\"ʤi\",\n \"ヅ\" :\"dzɯ\",\n \"デ\" :\"de\",\n \"ド\" :\"do\",\n \"バ\" :\"ba\",\n \"ビ\" :\"bʲi\",\n \"ブ\" :\"bɯ\",\n \"ベ\" :\"be\",\n \"ボ\" :\"bo\",\n \"パ\" :\"pa\",\n \"ピ\" :\"pʲi\",\n \"プ\" :\"pɯ\",\n \"ペ\" :\"pe\",\n \"ポ\" :\"po\"\n}\nlet ipa_small = {\n \"キャ\" :\"kʲa\",\n \"キュ\" :\"kʲɯ\",\n \"キョ\" :\"kʲo\",\n \"シャ\" :\"ʃa\",\n \"シュ\" :\"ʃɯ\",\n \"ショ\" :\"ʃo\",\n \"チャ\" :\"t͡ɕa\",\n \"チュ\" :\"t͡ɕɯ\",\n \"チョ\" :\"t͡ɕo\",\n \"ニャ\" :\"ɲa\",\n \"ニュ\" :\"ɲɯ\",\n \"ニョ\" :\"ɲo\",\n \"ヒャ\" :\"ça\",\n \"ヒュ\" :\"çɯ\",\n \"ヒョ\" :\"ço\",\n \"ミャ\" :\"mʲa\",\n \"ミュ\" :\"mʲɯ\",\n \"ミョ\" :\"mʲo\",\n \"リャ\" :\"ɾʲa\",\n \"リュ\" :\"ɾʲɯ\",\n \"リョ\" :\"ɾʲo\",\n \"ギャ\" :\"ɡʲa\",\n \"ギュ\" :\"ɡʲɯ\",\n \"ギョ\" :\"ɡʲo\",\n \"ジャ\" :\"ʤa\",\n \"ジュ\" :\"ʤɯ\",\n \"ジョ\" :\"ʤo\",\n \"ヂャ\" :\"ʤa\",\n \"ヂュ\" :\"ʤɯ\",\n \"ヂョ\" :\"ʤo\",\n \"ビャ\" :\"bʲa\",\n \"ビュ\" :\"bʲɯ\",\n \"ビョ\" :\"bʲo\",\n \"ピャ\" :\"pʲa\",\n \"ピュ\" :\"pʲɯ\",\n \"ピョ\" :\"pʲo\",\n \"ファ\" :\"ɸa\",\n \"フィ\" :\"ɸi\",\n \"フゥ\" :\"ɸɯ\",\n \"フェ\" :\"ɸe\",\n \"フォ\" :\"ɸo\",\n \"チェ\" :\"t͡ɕe\"\n}\n\nfunction hiragana2katakana(text) {\n//const _regexp = /\\p{Hiragana}/gu\n /*\n3041..3096 ; Hiragana # Lo [86] HIRAGANA LETTER SMALL A..HIRAGANA LETTER SMALL KE\n309D..309E ; Hiragana # Lm [2] HIRAGANA ITERATION MARK..HIRAGANA VOICED ITERATION MARK\n309F ; Hiragana # Lo HIRAGANA DIGRAPH YORI\n1B001..1B11F ; Hiragana # Lo [287] HIRAGANA LETTER ARCHAIC YE..HIRAGANA LETTER ARCHAIC WU\n1B132 ; Hiragana # Lo HIRAGANA LETTER SMALL KO\n1B150..1B152 ; Hiragana # Lo [3] HIRAGANA LETTER SMALL WI..HIRAGANA LETTER SMALL WO\n1F200 ; Hiragana # So SQUARE HIRAGANA HOKA\n */\n const _regexp = /[\\u3041-\\u3096\\u309D-\\u309E\\u309F\\u{1B001}-\\u{1B11F}\\u{1B132}\\u{1B150}-\\u{1B152}\\u{1F200}]/gu\n return text.replace(_regexp,v=\u003E String.fromCharCode(+v.charCodeAt(0) + 0x60))\n}\nfunction kana2ipa(inText) {\n if (inText.length \u003C= 0) {\n return inText\n }\n let ipa_small_match = Object.keys(ipa_small).join('|').replace(/.*/,'($\u0026)')\n\n let katakanaText = hiragana2katakana(inText)\n // replace Basic Word\n let bIpaString = katakanaText\n .normalize('NFKC') // harf size to wide size\n .replace(new RegExp(ipa_small_match,'g'),v=\u003E(ipa_small[v]||v))\n .match(/./ug)\n .map(v=\u003Eipa[v]||v)\n .join('')\n\n //important ん is Specialy word\n let nIpaString = bIpaString\n .replace(/N(p|b|m)/g,'m$1')\n .replace(/N(t|d|t͡s|n)/gu,'n$1')\n .replace(/N(k|ɡ)/g,'ŋ$1')\n .replace(/N(ɽ)/g,'ṉ$1')\n .replace(/(.)N(a|i|ɯ|e|o|s|h|j|w)/ug,'$1$1\\u0303$2')\n .replace(/N/ug,'ɴ')\n .normalize('NFC')\n\n //convert Specialy word\n let mIpaString = nIpaString\n .replace(/ッ(.)/ug,'$1$1')\n .replace(/mm/ug,'mː') // んの後にpの発音が来たとき用?\n .replace(/nn/ug,'nː') // これはよくわかんない\n .replace(/oɯ/ug,'oː') // おう の発音はオーになる?\n .replace(/(.)ー/ug,'$1ː')\n .normalize('NFC')\n\n return mIpaString\n}\n\nfunction Z32793( Z32793K1 ) {\n\treturn kana2ipa(Z32793K1)\n}" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "IPA transcription from Japanese kana text, JS" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 9w5ut6rh9tczfhrb8aqmmcjc3i9efh4 Z32795 0 79223 261205 2026-03-27T13:48:44Z YoshiRulz 10156 Create test 261205 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32795" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32793", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32793", "Z32793K1": "カンパン" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z866", "Z866K2": "kampaɴ" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "\"カンパン\" =\u003E /kampaɴ/" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } heb5h1rbtg9rhfaxmgu1oboxcfmjc3g Z32796 0 79224 261206 2026-03-27T13:48:59Z YoshiRulz 10156 Create test 261206 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32796" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32793", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32793", "Z32793K1": "テンマド" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z866", "Z866K2": "temːado" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "\"テンマド\" =\u003E /temːado/" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } d74mahujbvoxfmvblwo61i4l1v504pk Z32797 0 79225 261207 2026-03-27T13:49:16Z YoshiRulz 10156 Create test 261207 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32797" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32793", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32793", "Z32793K1": "ボンタン" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z866", "Z866K2": "bontaɴ" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "\"ボンタン\" =\u003E /bontaɴ/" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 56zzaxya1efjiz1e65a0bipzihad8qj Z32798 0 79226 261208 2026-03-27T13:49:34Z YoshiRulz 10156 Create test 261208 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32798" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32793", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32793", "Z32793K1": "ハンノウ" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z866", "Z866K2": "hanːoː" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "\"ハンノウ\" =\u003E /hanːoː/" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } ti78qzpzxqaitkpvuqdwb81hacq0fmc Z32799 0 79227 261209 2026-03-27T13:49:57Z YoshiRulz 10156 Create test 261209 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32799" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32793", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32793", "Z32793K1": "ビンカン" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z866", "Z866K2": "bʲiŋkaɴ" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "\"ビンカン\" =\u003E /bʲiŋkaɴ/" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } tdqc59sp37ayg02dyuc51fp6n4lfc3h Z32800 0 79228 261210 2026-03-27T13:50:28Z YoshiRulz 10156 Create test 261210 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32800" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32793", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32793", "Z32793K1": "シンゴウ" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z866", "Z866K2": "ɕiŋɡoː" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "\"シンゴウ\" =\u003E /ɕiŋɡoː/" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 6li1vau54ez29z0czfdh4k8fr4hqzik Z32801 0 79229 261211 2026-03-27T13:50:45Z YoshiRulz 10156 Create test 261211 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32801" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32793", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32793", "Z32793K1": "ケンイチ" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z866", "Z866K2": "keẽit͡ɕi" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "\"ケンイチ\" =\u003E /keẽit͡ɕi/" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } nsinmu8jyu9t3e8qsefpq5qmngug6i6 Talk:Z32793 1 79230 261216 2026-03-27T13:57:51Z YoshiRulz 10156 Add to categories 261216 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] [[Category:Japanese]] tldn1spmo8mvl7u7nx14w3rldqqsus1 Z32802 0 79231 261217 2026-03-27T13:58:59Z YoshiRulz 10156 Create test 261217 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32802" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32787", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32787", "Z32787K1": { "Z1K1": "Z7", "Z7K1": "Z6824", "Z6824K1": { "Z1K1": "Z6094", "Z6094K1": "L1375120-F2" } } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z889", "Z889K2": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "kompeitoː" } ], "Z889K3": "Z14392" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "ja:\"こんぺいとう\" =\u003E /kompeitoː/" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } cddovqoc7njnibzzs6arxbukidysh11 261222 261217 2026-03-27T14:07:24Z YoshiRulz 10156 Use the lexeme's first form 261222 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32802" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32787", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32787", "Z32787K1": { "Z1K1": "Z7", "Z7K1": "Z6824", "Z6824K1": { "Z1K1": "Z6094", "Z6094K1": "L1375120-F1" } } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z889", "Z889K2": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "kompeitoː" } ], "Z889K3": "Z14392" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "ja:\"こんぺいとう\" =\u003E /kompeitoː/" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 81f5n04l43b5xwvf5w1s2fhm5w4o45m Z32803 0 79232 261223 2026-03-27T14:20:57Z YoshiRulz 10156 Create implementation 261223 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32803" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32787", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z19601", "Z19601K1": [ "Z40", { "Z1K1": "Z7", "Z7K1": "Z14326", "Z14326K1": { "Z1K1": "Z7", "Z7K1": "Z19295", "Z19295K1": { "Z1K1": "Z7", "Z7K1": "Z6825", "Z6825K1": { "Z1K1": "Z7", "Z7K1": "Z22483", "Z22483K1": { "Z1K1": "Z18", "Z18K1": "Z32787K1" } } } }, "Z14326K2": "Z1830" } ], "Z19601K2": [ "Z1", { "Z1K1": "Z7", "Z7K1": "Z14046", "Z14046K1": { "Z1K1": "Z7", "Z7K1": "Z26107", "Z26107K1": "Z1830", "Z26107K2": { "Z1K1": "Z7", "Z7K1": "Z32793", "Z32793K1": { "Z1K1": "Z7", "Z7K1": "Z14396", "Z14396K1": { "Z1K1": "Z7", "Z7K1": "Z16273", "Z16273K1": { "Z1K1": "Z7", "Z7K1": "Z22399", "Z22399K1": { "Z1K1": "Z18", "Z18K1": "Z32787K1" } }, "Z16273K2": { "Z1K1": "Z60", "Z60K1": "ja-kana", "Z60K2": [ "Z6" ] } } } } } }, [ "Z11" ] ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "synthesise IPA transcription for Form, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 1hzkp9z1tcx9fpt1bb89di5zmle3sdw 261231 261223 2026-03-27T14:53:34Z YoshiRulz 10156 Fix monolingual text construction 261231 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32803" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32787", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z19601", "Z19601K1": [ "Z40", { "Z1K1": "Z7", "Z7K1": "Z14326", "Z14326K1": { "Z1K1": "Z7", "Z7K1": "Z19295", "Z19295K1": { "Z1K1": "Z7", "Z7K1": "Z6825", "Z6825K1": { "Z1K1": "Z7", "Z7K1": "Z22483", "Z22483K1": { "Z1K1": "Z18", "Z18K1": "Z32787K1" } } } }, "Z14326K2": "Z1830" } ], "Z19601K2": [ "Z1", { "Z1K1": "Z7", "Z7K1": "Z14046", "Z14046K1": { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": { "Z1K1": "Z7", "Z7K1": "Z32793", "Z32793K1": { "Z1K1": "Z7", "Z7K1": "Z14396", "Z14396K1": { "Z1K1": "Z7", "Z7K1": "Z16273", "Z16273K1": { "Z1K1": "Z7", "Z7K1": "Z22399", "Z22399K1": { "Z1K1": "Z18", "Z18K1": "Z32787K1" } }, "Z16273K2": { "Z1K1": "Z60", "Z60K1": "ja-kana", "Z60K2": [ "Z6" ] } } } } } }, [ "Z11" ] ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "synthesise IPA transcription for Form, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } i3fm5fdhppdn2sq7zudkeyee7dzzm8c Z32804 0 79233 261225 2026-03-27T14:34:12Z YoshiRulz 10156 Create test 261225 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32804" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z14046", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z14046", "Z14046K1": { "Z1K1": "Z7", "Z7K1": "Z26107", "Z26107K1": "Z1002", "Z26107K2": "hmm" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z889", "Z889K2": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "hmm" } ], "Z889K3": "Z14392" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "singleton list of Monolingual text" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 4493x418gigogqti9kmfhz6eyfra5ry 261230 261225 2026-03-27T14:53:05Z YoshiRulz 10156 Add comment 261230 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32804" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z14046", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z14046", "Z14046K1": { "Z1K1": "Z7", "Z7K1": "Z26107", "Z26107K1": "Z1002", "Z26107K2": "hmm" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z889", "Z889K2": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "hmm" } ], "Z889K3": "Z14392" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "singleton list of Monolingual text" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "disconnected because the fault appears to be in Z26107" } ] } } or11g7dpe8b19nes3r2koae722778qx Z32805 0 79234 261233 2026-03-27T15:15:15Z YoshiRulz 10156 Create test 261233 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32805" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32734", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32734", "Z32734K1": { "Z1K1": "Z7", "Z7K1": "Z801", "Z801K1": [ { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z89" }, [ "Z89", { "Z1K1": "Z89", "Z89K1": "" }, { "Z1K1": "Z89", "Z89K1": "A" }, { "Z1K1": "Z89", "Z89K1": "B" } ], [ "Z89", { "Z1K1": "Z89", "Z89K1": "1" }, { "Z1K1": "Z89", "Z89K1": "A1" }, { "Z1K1": "Z89", "Z89K1": "B1" } ], [ "Z89", { "Z1K1": "Z89", "Z89K1": "2" }, { "Z1K1": "Z89", "Z89K1": "A2" }, { "Z1K1": "Z89", "Z89K1": "B2" } ] ] }, "Z32734K2": { "Z1K1": "Z7", "Z7K1": "Z801", "Z801K1": [ { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z40" }, [ "Z40", { "Z1K1": "Z40", "Z40K1": "Z42" }, { "Z1K1": "Z40", "Z40K1": "Z41" }, { "Z1K1": "Z40", "Z40K1": "Z41" } ], [ "Z40", { "Z1K1": "Z40", "Z40K1": "Z41" }, { "Z1K1": "Z40", "Z40K1": "Z42" }, { "Z1K1": "Z40", "Z40K1": "Z42" } ], [ "Z40", { "Z1K1": "Z40", "Z40K1": "Z41" }, { "Z1K1": "Z40", "Z40K1": "Z42" }, { "Z1K1": "Z40", "Z40K1": "Z42" } ] ] } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z889", "Z889K2": [ { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z89" }, [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z27861", "Z27861K1": "\u003Ctd\u003E\u003C/td\u003E" }, { "Z1K1": "Z7", "Z7K1": "Z27861", "Z27861K1": "\u003Cth\u003EA\u003C/th\u003E" }, { "Z1K1": "Z7", "Z7K1": "Z27861", "Z27861K1": "\u003Cth\u003EB\u003C/th\u003E" } ], [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z27861", "Z27861K1": "\u003Cth\u003E1\u003C/th\u003E" }, { "Z1K1": "Z7", "Z7K1": "Z27861", "Z27861K1": "\u003Ctd\u003EA1\u003C/td\u003E" }, { "Z1K1": "Z7", "Z7K1": "Z27861", "Z27861K1": "\u003Ctd\u003EB1\u003C/td\u003E" } ], [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z27861", "Z27861K1": "\u003Cth\u003E2\u003C/th\u003E" }, { "Z1K1": "Z7", "Z7K1": "Z27861", "Z27861K1": "\u003Ctd\u003EA2\u003C/td\u003E" }, { "Z1K1": "Z7", "Z7K1": "Z27861", "Z27861K1": "\u003Ctd\u003EB2\u003C/td\u003E" } ] ], "Z889K3": "Z877" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "simple 3x3 test for cells from contents + isHeader" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } qilwjuhnsas6ghghc36btxa3ea6pzpk Z32806 0 79235 261237 2026-03-27T16:30:14Z YoshiRulz 10156 Create function 261237 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32806" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z8", "Z17K2": "Z32806K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "transformation function" } ] } }, { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" } }, "Z17K2": "Z32806K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "matrix" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" } }, "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32806" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "transform elements of list of lists" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "transform elements of matrix", "map function over elements of list of lists", "map function over elements of matrix", "apply unary function to elements of list of lists", "apply unary function to elements of matrix" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 5kq6q3mareea76f16nguqojbjufx1tn 261258 261237 2026-03-27T17:14:59Z YoshiRulz 10156 Added Z32811 to the approved list of test cases 261258 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32806" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z8", "Z17K2": "Z32806K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "transformation function" } ] } }, { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" } }, "Z17K2": "Z32806K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "matrix" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" } }, "Z8K3": [ "Z20", "Z32811" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32806" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "transform elements of list of lists" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "transform elements of matrix", "map function over elements of list of lists", "map function over elements of matrix", "apply unary function to elements of list of lists", "apply unary function to elements of matrix" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } e65xcdg98w1wymfhvq2dsoanqywxflu 261272 261258 2026-03-27T17:52:45Z YoshiRulz 10156 Added Z32810 to the approved list of implementations 261272 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32806" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z8", "Z17K2": "Z32806K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "transformation function" } ] } }, { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" } }, "Z17K2": "Z32806K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "matrix" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" } }, "Z8K3": [ "Z20", "Z32811" ], "Z8K4": [ "Z14", "Z32810" ], "Z8K5": "Z32806" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "transform elements of list of lists" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "transform elements of matrix", "map function over elements of list of lists", "map function over elements of matrix", "apply unary function to elements of list of lists", "apply unary function to elements of matrix" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } krvat1zjco0dkzh7nnm4awjy3cyf6mw Z32807 0 79236 261238 2026-03-27T16:46:37Z YoshiRulz 10156 Create function 261238 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32807" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z13518", "Z17K2": "Z32807K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "depth" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z8", "Z17K2": "Z32807K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "transformation function" } ] } }, { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z32807K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "tensor" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32807" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "transform elements of list of lists at depth" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "transform elements of tensor at depth", "transform elements of multidimensional array at depth", "map function over elements of list of lists at depth", "map function over elements of tensor at depth", "map function over elements of multidimensional array at depth", "apply unary function to elements of list of lists at depth", "apply unary function to elements of tensor at depth", "apply unary function to elements of multidimensional array at depth" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "depth of 0 is equivalent to Z13036/apply; depth 1 is equivalent to Z873/map; depth 2 is equivalent to Z32806/mapMatrix etc." } ] } } lz3dw7h6q30sq2jd0v837tov9xpylhf 261241 261238 2026-03-27T16:58:09Z YoshiRulz 10156 Added Z32809 to the approved list of test cases 261241 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32807" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z13518", "Z17K2": "Z32807K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "depth" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z8", "Z17K2": "Z32807K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "transformation function" } ] } }, { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z32807K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "tensor" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z8K3": [ "Z20", "Z32809" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32807" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "transform elements of list of lists at depth" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "transform elements of tensor at depth", "transform elements of multidimensional array at depth", "map function over elements of list of lists at depth", "map function over elements of tensor at depth", "map function over elements of multidimensional array at depth", "apply unary function to elements of list of lists at depth", "apply unary function to elements of tensor at depth", "apply unary function to elements of multidimensional array at depth" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "depth of 0 is equivalent to Z13036/apply; depth 1 is equivalent to Z873/map; depth 2 is equivalent to Z32806/mapMatrix etc." } ] } } 3sw9oquaz31bpounc12gx3t27hi2dfq 261242 261241 2026-03-27T16:58:12Z YoshiRulz 10156 Added Z32808 to the approved list of implementations 261242 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32807" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z13518", "Z17K2": "Z32807K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "depth" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z8", "Z17K2": "Z32807K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "transformation function" } ] } }, { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z32807K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "tensor" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z8K3": [ "Z20", "Z32809" ], "Z8K4": [ "Z14", "Z32808" ], "Z8K5": "Z32807" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "transform elements of list of lists at depth" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "transform elements of tensor at depth", "transform elements of multidimensional array at depth", "map function over elements of list of lists at depth", "map function over elements of tensor at depth", "map function over elements of multidimensional array at depth", "apply unary function to elements of list of lists at depth", "apply unary function to elements of tensor at depth", "apply unary function to elements of multidimensional array at depth" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "depth of 0 is equivalent to Z13036/apply; depth 1 is equivalent to Z873/map; depth 2 is equivalent to Z32806/mapMatrix etc." } ] } } erlan2zx0cr7huhaavnldww6hnzueyb 261243 261242 2026-03-27T16:59:11Z YoshiRulz 10156 Removed Z32808 from the approved list of implementations 261243 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32807" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z13518", "Z17K2": "Z32807K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "depth" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z8", "Z17K2": "Z32807K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "transformation function" } ] } }, { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z32807K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "tensor" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z8K3": [ "Z20", "Z32809" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32807" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "transform elements of list of lists at depth" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "transform elements of tensor at depth", "transform elements of multidimensional array at depth", "map function over elements of list of lists at depth", "map function over elements of tensor at depth", "map function over elements of multidimensional array at depth", "apply unary function to elements of list of lists at depth", "apply unary function to elements of tensor at depth", "apply unary function to elements of multidimensional array at depth" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "depth of 0 is equivalent to Z13036/apply; depth 1 is equivalent to Z873/map; depth 2 is equivalent to Z32806/mapMatrix etc." } ] } } 3sw9oquaz31bpounc12gx3t27hi2dfq 261245 261243 2026-03-27T17:00:01Z YoshiRulz 10156 Removed Z32809 from the approved list of test cases 261245 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32807" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z13518", "Z17K2": "Z32807K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "depth" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z8", "Z17K2": "Z32807K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "transformation function" } ] } }, { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z32807K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "tensor" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32807" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "transform elements of list of lists at depth" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "transform elements of tensor at depth", "transform elements of multidimensional array at depth", "map function over elements of list of lists at depth", "map function over elements of tensor at depth", "map function over elements of multidimensional array at depth", "apply unary function to elements of list of lists at depth", "apply unary function to elements of tensor at depth", "apply unary function to elements of multidimensional array at depth" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "depth of 0 is equivalent to Z13036/apply; depth 1 is equivalent to Z873/map; depth 2 is equivalent to Z32806/mapMatrix etc." } ] } } lz3dw7h6q30sq2jd0v837tov9xpylhf 261246 261245 2026-03-27T17:00:30Z YoshiRulz 10156 Change return type (not necessarily a list at depth 0) 261246 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32807" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z13518", "Z17K2": "Z32807K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "depth" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z8", "Z17K2": "Z32807K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "transformation function" } ] } }, { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z32807K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "tensor" } ] } } ], "Z8K2": "Z1", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32807" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "transform elements of list of lists at depth" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "transform elements of tensor at depth", "transform elements of multidimensional array at depth", "map function over elements of list of lists at depth", "map function over elements of tensor at depth", "map function over elements of multidimensional array at depth", "apply unary function to elements of list of lists at depth", "apply unary function to elements of tensor at depth", "apply unary function to elements of multidimensional array at depth" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "depth of 0 is equivalent to Z13036/apply; depth 1 is equivalent to Z873/map; depth 2 is equivalent to Z32806/mapMatrix etc." } ] } } fm9fzvoga4v1avdxgs0q7tkz2exwszc 261247 261246 2026-03-27T17:00:37Z YoshiRulz 10156 Added Z32809 to the approved list of test cases 261247 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32807" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z13518", "Z17K2": "Z32807K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "depth" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z8", "Z17K2": "Z32807K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "transformation function" } ] } }, { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z32807K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "tensor" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z8K3": [ "Z20", "Z32809" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32807" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "transform elements of list of lists at depth" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "transform elements of tensor at depth", "transform elements of multidimensional array at depth", "map function over elements of list of lists at depth", "map function over elements of tensor at depth", "map function over elements of multidimensional array at depth", "apply unary function to elements of list of lists at depth", "apply unary function to elements of tensor at depth", "apply unary function to elements of multidimensional array at depth" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "depth of 0 is equivalent to Z13036/apply; depth 1 is equivalent to Z873/map; depth 2 is equivalent to Z32806/mapMatrix etc." } ] } } 3sw9oquaz31bpounc12gx3t27hi2dfq 261248 261247 2026-03-27T17:00:46Z YoshiRulz 10156 Added Z32808 to the approved list of implementations 261248 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32807" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z13518", "Z17K2": "Z32807K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "depth" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z8", "Z17K2": "Z32807K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "transformation function" } ] } }, { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z32807K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "tensor" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z8K3": [ "Z20", "Z32809" ], "Z8K4": [ "Z14", "Z32808" ], "Z8K5": "Z32807" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "transform elements of list of lists at depth" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "transform elements of tensor at depth", "transform elements of multidimensional array at depth", "map function over elements of list of lists at depth", "map function over elements of tensor at depth", "map function over elements of multidimensional array at depth", "apply unary function to elements of list of lists at depth", "apply unary function to elements of tensor at depth", "apply unary function to elements of multidimensional array at depth" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "depth of 0 is equivalent to Z13036/apply; depth 1 is equivalent to Z873/map; depth 2 is equivalent to Z32806/mapMatrix etc." } ] } } erlan2zx0cr7huhaavnldww6hnzueyb 261250 261248 2026-03-27T17:02:22Z YoshiRulz 10156 Removed Z32808 from the approved list of implementations 261250 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32807" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z13518", "Z17K2": "Z32807K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "depth" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z8", "Z17K2": "Z32807K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "transformation function" } ] } }, { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z32807K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "tensor" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z8K3": [ "Z20", "Z32809" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32807" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "transform elements of list of lists at depth" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "transform elements of tensor at depth", "transform elements of multidimensional array at depth", "map function over elements of list of lists at depth", "map function over elements of tensor at depth", "map function over elements of multidimensional array at depth", "apply unary function to elements of list of lists at depth", "apply unary function to elements of tensor at depth", "apply unary function to elements of multidimensional array at depth" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "depth of 0 is equivalent to Z13036/apply; depth 1 is equivalent to Z873/map; depth 2 is equivalent to Z32806/mapMatrix etc." } ] } } 3sw9oquaz31bpounc12gx3t27hi2dfq 261251 261250 2026-03-27T17:02:25Z YoshiRulz 10156 Removed Z32809 from the approved list of test cases 261251 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32807" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z13518", "Z17K2": "Z32807K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "depth" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z8", "Z17K2": "Z32807K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "transformation function" } ] } }, { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z32807K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "tensor" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32807" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "transform elements of list of lists at depth" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "transform elements of tensor at depth", "transform elements of multidimensional array at depth", "map function over elements of list of lists at depth", "map function over elements of tensor at depth", "map function over elements of multidimensional array at depth", "apply unary function to elements of list of lists at depth", "apply unary function to elements of tensor at depth", "apply unary function to elements of multidimensional array at depth" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "depth of 0 is equivalent to Z13036/apply; depth 1 is equivalent to Z873/map; depth 2 is equivalent to Z32806/mapMatrix etc." } ] } } lz3dw7h6q30sq2jd0v837tov9xpylhf 261252 261251 2026-03-27T17:02:46Z YoshiRulz 10156 Change return type (not necessarily a list at depth 0) 261252 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32807" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z13518", "Z17K2": "Z32807K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "depth" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z8", "Z17K2": "Z32807K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "transformation function" } ] } }, { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z32807K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "tensor" } ] } } ], "Z8K2": "Z1", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32807" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "transform elements of list of lists at depth" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "transform elements of tensor at depth", "transform elements of multidimensional array at depth", "map function over elements of list of lists at depth", "map function over elements of tensor at depth", "map function over elements of multidimensional array at depth", "apply unary function to elements of list of lists at depth", "apply unary function to elements of tensor at depth", "apply unary function to elements of multidimensional array at depth" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "depth of 0 is equivalent to Z13036/apply; depth 1 is equivalent to Z873/map; depth 2 is equivalent to Z32806/mapMatrix etc." } ] } } fm9fzvoga4v1avdxgs0q7tkz2exwszc 261253 261252 2026-03-27T17:02:54Z YoshiRulz 10156 Added Z32809 to the approved list of test cases 261253 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32807" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z13518", "Z17K2": "Z32807K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "depth" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z8", "Z17K2": "Z32807K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "transformation function" } ] } }, { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z32807K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "tensor" } ] } } ], "Z8K2": "Z1", "Z8K3": [ "Z20", "Z32809" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32807" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "transform elements of list of lists at depth" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "transform elements of tensor at depth", "transform elements of multidimensional array at depth", "map function over elements of list of lists at depth", "map function over elements of tensor at depth", "map function over elements of multidimensional array at depth", "apply unary function to elements of list of lists at depth", "apply unary function to elements of tensor at depth", "apply unary function to elements of multidimensional array at depth" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "depth of 0 is equivalent to Z13036/apply; depth 1 is equivalent to Z873/map; depth 2 is equivalent to Z32806/mapMatrix etc." } ] } } lk96t0wu9jwxv4sclmp0q52dizybb4d 261254 261253 2026-03-27T17:02:58Z YoshiRulz 10156 Added Z32808 to the approved list of implementations 261254 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32807" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z13518", "Z17K2": "Z32807K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "depth" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z8", "Z17K2": "Z32807K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "transformation function" } ] } }, { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z32807K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "tensor" } ] } } ], "Z8K2": "Z1", "Z8K3": [ "Z20", "Z32809" ], "Z8K4": [ "Z14", "Z32808" ], "Z8K5": "Z32807" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "transform elements of list of lists at depth" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "transform elements of tensor at depth", "transform elements of multidimensional array at depth", "map function over elements of list of lists at depth", "map function over elements of tensor at depth", "map function over elements of multidimensional array at depth", "apply unary function to elements of list of lists at depth", "apply unary function to elements of tensor at depth", "apply unary function to elements of multidimensional array at depth" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "depth of 0 is equivalent to Z13036/apply; depth 1 is equivalent to Z873/map; depth 2 is equivalent to Z32806/mapMatrix etc." } ] } } ccnrs0ek7iwlyfere15qp3quaw4o4w8 Z32808 0 79237 261239 2026-03-27T16:48:54Z YoshiRulz 10156 Create implementation 261239 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32808" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32807", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z23883", "Z23883K1": { "Z1K1": "Z18", "Z18K1": "Z32807K1" } }, "Z802K2": { "Z1K1": "Z7", "Z7K1": "Z13036", "Z13036K1": { "Z1K1": "Z18", "Z18K1": "Z32807K2" }, "Z13036K2": { "Z1K1": "Z18", "Z18K1": "Z32807K3" } }, "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z29370", "Z29370K1": "Z32807", "Z29370K2": { "Z1K1": "Z7", "Z7K1": "Z13582", "Z13582K1": { "Z1K1": "Z18", "Z18K1": "Z32807K1" } }, "Z29370K3": { "Z1K1": "Z18", "Z18K1": "Z32807K2" }, "Z29370K4": { "Z1K1": "Z18", "Z18K1": "Z32807K3" } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "map over tensor at depth, recursive composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } fmtpnu65mobywpok323l4vcl3kzacu5 261244 261239 2026-03-27T16:59:52Z YoshiRulz 10156 Fix list typing 261244 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32808" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32807", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z23883", "Z23883K1": { "Z1K1": "Z18", "Z18K1": "Z32807K1" } }, "Z802K2": { "Z1K1": "Z7", "Z7K1": "Z13036", "Z13036K1": { "Z1K1": "Z18", "Z18K1": "Z32807K2" }, "Z13036K2": { "Z1K1": "Z18", "Z18K1": "Z32807K3" } }, "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z18475", "Z18475K1": { "Z1K1": "Z7", "Z7K1": "Z29370", "Z29370K1": "Z32807", "Z29370K2": { "Z1K1": "Z7", "Z7K1": "Z13582", "Z13582K1": { "Z1K1": "Z18", "Z18K1": "Z32807K1" } }, "Z29370K3": { "Z1K1": "Z18", "Z18K1": "Z32807K2" }, "Z29370K4": { "Z1K1": "Z18", "Z18K1": "Z32807K3" } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "map over tensor at depth, recursive composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } ikqnpbhqs9lbihlm8wb0mc86xby41an Z32809 0 79238 261240 2026-03-27T16:57:54Z YoshiRulz 10156 Create test 261240 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32809" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32807", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32807", "Z32807K1": { "Z1K1": "Z13518", "Z13518K1": "2" }, "Z32807K2": "Z12681", "Z32807K3": [ { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z6" } } }, [ { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z6" } }, [ { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z6" }, [ "Z6", "A", "B", "C", "D" ], [ "Z6", "E", "F", "G", "H" ], [ "Z6", "I", "J", "K", "L" ] ], [ { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z6" }, [ "Z6", "M", "N", "O", "P" ], [ "Z6", "Q", "R", "S", "T" ], [ "Z6", "U", "V", "W", "X" ] ] ] ] }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z889", "Z889K2": [ { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z13518" }, [ "Z13518", { "Z1K1": "Z13518", "Z13518K1": "3" }, { "Z1K1": "Z13518", "Z13518K1": "3" } ] ], "Z889K3": "Z13522" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "transforms at given depth" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 19p3u4hbe4sgz0mx9r50zqe438d39k2 Z32810 0 79239 261255 2026-03-27T17:06:10Z YoshiRulz 10156 Create implementation 261255 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32810" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32806", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z32807", "Z32807K1": { "Z1K1": "Z13518", "Z13518K1": "2" }, "Z32807K2": { "Z1K1": "Z18", "Z18K1": "Z32806K1" }, "Z32807K3": { "Z1K1": "Z18", "Z18K1": "Z32806K2" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "map over elements of matrix, as tensor composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } oepf159xj9b5ihped1ea6vez3l15kb6 Z32811 0 79240 261257 2026-03-27T17:13:17Z YoshiRulz 10156 Create test 261257 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32811" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32806", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32806", "Z32806K1": "Z19711", "Z32806K2": { "Z1K1": "Z7", "Z7K1": "Z801", "Z801K1": [ { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z19677" }, [ "Z19677", { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "1" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "2" } }, { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "3" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "4" } } ], [ "Z19677", { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "5" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "6" } }, { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "7" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "8" } } ] ] } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z24171", "Z24171K2": { "Z1K1": "Z7", "Z7K1": "Z801", "Z801K1": [ { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z19677" }, [ "Z19677", { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "2" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "1" } }, { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "4" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "3" } } ], [ "Z19677", { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "6" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "5" } }, { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "8" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "7" } } ] ] } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "take reciprocals of elements of Rational matrix" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 7jy0ugzvyvxib27c2lq6v8cjvt1ckzm Z32812 0 79241 261259 2026-03-27T17:22:23Z YoshiRulz 10156 Create test 261259 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32812" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z31098", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z31098", "Z31098K1": "Z15175", "Z31098K2": [ "Z6", "A", "X" ], "Z31098K3": [ "Z6", "C", "Z" ], "Z31098K4": [ "Z6", "B", "Y" ] }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z889", "Z889K2": [ "Z6", "ABC", "XYZ" ], "Z889K3": "Z866" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "(Z15175, [\"A\",\"X\"], [\"C\",\"Z\"], [\"B\",\"Y\"]) =\u003E [...]" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } btypb61vmjdwthx41vati1z708i0tmg Z32813 0 79242 261263 2026-03-27T17:28:48Z YoshiRulz 10156 Create test 261263 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32813" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z29370", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z29370", "Z29370K1": "Z15175", "Z29370K2": "A", "Z29370K3": "Z", "Z29370K4": [ "Z6", "-", ":", "+", "." ] }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z889", "Z889K2": [ "Z6", "A-Z", "A:Z", "A+Z", "A.Z" ], "Z889K3": "Z866" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "apply3LLO(Z15175, \"A\", \"Z\", [\"-\", \":\", \"+\", \".\"])" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 9043dabouuonoy1gqkolou4wc7920uq Z32814 0 79243 261265 2026-03-27T17:34:04Z Mormegil 150 261265 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32814" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32780", "Z14K3": { "Z1K1": "Z16", "Z16K1": "Z600", "Z16K2": "function Z32780(Z32780K1, Z32780K2) {\n const blocks_one = [\"\", \"tisíc\", \"milion\", \"miliarda\", \"bilion\", \"biliarda\", \"trilion\", \"triliarda\", \"kvadrilion\", \"kvadriliarda\", \"kvintilion\", \"kvintiliarda\", \"sextilion\", \"sextiliarda\", \"septilion\", \"septiliarda\"];\n const blocks_few = [\"\", \"tisíce\", \"miliony\", \"miliardy\", \"biliony\", \"biliardy\", \"triliony\", \"triliardy\", \"kvadriliony\", \"kvadriliardy\", \"kvintiliony\", \"kvintiliardy\", \"sextiliony\", \"sextiliardy\", \"septiliony\", \"septiliardy\"];\n const blocks_other = [\"\", \"tisíc\", \"milionů\", \"miliard\", \"bilionů\", \"biliard\", \"trilionů\", \"triliard\", \"kvadrilionů\", \"kvadriliard\", \"kvintilionů\", \"kvintiliard\", \"sextilionů\", \"sextiliard\", \"septilionů\", \"septiliard\"];\n const unit_numerals = [\"\", \"\", \"\", \"tři\", \"čtyři\", \"pět\", \"šest\", \"sedm\", \"osm\", \"devět\"];\n\n\tfunction qid_from_enum (v) {\n\t\tlet type=v.Z1K1;\n\t\twhile (type.Z9K1){\n\t\t\ttype=type.Z9K1;\n\t\t}\n\t\tlet value=v[type+'K1'];\n\t\twhile (value.Z9K1){\n\t\t\tvalue=value.Z9K1;\n\t\t}\n\t\tlet typeOfValue=v[type+'K1'].Z1K1;\n\t\twhile(typeOfValue.Z9K1){\n\t\t\ttypeOfValue=typeOfValue.Z9K1;\n\t\t}\n\t\tvalue=value[typeOfValue+'K1'];\n\t\treturn value;\n\t} \n\n function gender_from_enum(v) {\n switch(qid_from_enum(v)) {\n case 'Q499327': return 'm';\n case 'Q1775415': return 'f';\n case 'Q1775461': return 'n';\n default: Wikifunctions.Error(\"Z516\", [\"Z32780K2\", v]);\n }\n }\n\n function space(word) {\n return word.length ? \" \" + word : \"\";\n }\n\n function plural(x, one, few, other) {\n if (x === 1) return one;\n if (x \u003E= 2 \u0026\u0026 x \u003C= 4) return few;\n return other;\n }\n\n function units(x, gender, is_many) {\n if (x === 0) return \"\";\n\n const one_genders = { \"m\": \"jeden\", \"f\": \"jedna\", \"n\": \"jedno\" };\n const two_genders = { \"m\": \"dva\", \"f\": \"dvě\", \"n\": \"dvě\" };\n\n if (is_many) {\n switch (x) {\n case 1:\n return \"jedna\";\n case 2:\n return \"dva\";\n default:\n return unit_numerals[x];\n }\n } else {\n switch (x) {\n case 1:\n return one_genders[gender];\n case 2:\n return two_genders[gender];\n default:\n return unit_numerals[x];\n }\n }\n }\n\n function tens(x, gender, is_many) {\n const teens = [\"deset\", \"jedenáct\", \"dvanáct\", \"třináct\", \"čtrnáct\", \"patnáct\", \"šestnáct\", \"sedmnáct\", \"osmnáct\", \"devatenáct\"];\n const tens_words = [\"\", \"deset\", \"dvacet\", \"třicet\", \"čtyřicet\", \"padesát\", \"šedesát\", \"sedmdesát\", \"osmdesát\", \"devadesát\"]\n\n const tens = Math.trunc(x / 10);\n switch (tens) {\n case 0:\n return units(x, gender, is_many);\n case 1:\n return teens[x - 10];\n default:\n return tens_words[tens] + space(units(x % 10, gender, true));\n }\n }\n\n function hundreds(x, gender, is_many) {\n const hundreds = Math.trunc(x / 100);\n if (hundreds === 0) return tens(x, gender, is_many);\n\n var hundreds_text;\n switch (hundreds) {\n case 1:\n hundreds_text = \"sto\";\n break;\n case 2:\n hundreds_text = \"dvě stě\";\n break;\n case 3:\n hundreds_text = \"tři sta\";\n break;\n case 4:\n hundreds_text = \"čtyři sta\";\n break;\n default:\n hundreds_text = unit_numerals[hundreds] + \" set\";\n }\n\n return hundreds_text + space(tens(x % 100, gender, true));\n }\n\n function block(x, block_one, block_few, block_other, gender, is_many) {\n const numeral = hundreds(x, gender, is_many);\n if (!numeral.length) return \"\";\n\n const block_name = plural(x, block_one, block_few, block_other);\n\n return numeral + space(block_name);\n }\n\n let value = Z32780K1;\n let gender = gender_from_enum(Z32780K2);\n\n if (value == 0n) { return \"nula\"; }\n if (value \u003E 999999999999999999999999999999999999999999999999n) { Wikifunctions.Error(\"Z28307\", [\"\" + value, \"999999999999999999999999999999999999999999999999\", \"cs\"]); }\n\n const blocks = [];\n let is_greater_than_one = value \u003E 1n;\n let last_is_one = false;\n for (let i = 0; i \u003C blocks_one.length \u0026\u0026 value \u003E 0n; ++i) {\n const block_value = Number(value % 1000n);\n last_is_one = block_value === 1;\n value /= 1000n;\n\n let block_gender;\n if (i === 0) block_gender = gender;\n else if (i === 1 || (i % 2) === 0) block_gender = \"m\";\n else block_gender = \"f\";\n const text = block(block_value, blocks_one[i], blocks_few[i], blocks_other[i], block_gender, i === 0 \u0026\u0026 value \u003E 0n);\n if (text.length) blocks.push(text);\n }\n\n // drop leading “one” (but it’s a matter of taste)\n if (is_greater_than_one \u0026\u0026 last_is_one) blocks[blocks.length - 1] = blocks[blocks.length - 1].substring(5).trimStart();\n\n return blocks.reverse().join(\" \");\n}" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "JavaScriptová implementace české základní číslovky" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "JavaScript implementation of Czech cardinal" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } r6gvej39lx5gmhifvjje68pnedb2my2 Translations:Wikifunctions:Status updates/2026-03-26/9/de 1198 79244 261270 2026-03-27T17:49:09Z Ameisenigel 44 Created page with "Gibt uns weiterhin Rückmeldung! Wir wissen eure Bereitschaft, Dinge auszuprobieren, sehr zu schätzen und freuen uns, dass ihr diese frühe Version der Abstrakten Wikipedia akzeptiert." 261270 wikitext text/x-wiki Gibt uns weiterhin Rückmeldung! Wir wissen eure Bereitschaft, Dinge auszuprobieren, sehr zu schätzen und freuen uns, dass ihr diese frühe Version der Abstrakten Wikipedia akzeptiert. jds6ifmkr5yw9l1cdc5koswj0w2nw6r Z32815 0 79245 261277 2026-03-27T18:41:24Z YoshiRulz 10156 Create test 261277 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32815" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32645", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32645", "Z32645K1": { "Z1K1": "Z7", "Z7K1": "Z6821", "Z6821K1": { "Z1K1": "Z6091", "Z6091K1": "Q321" } } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z22120", "Z22120K2": "Z22113" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Milky Way needs \"the\" in English" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } j38v7cg8is0qcnj1pfaqiemtzl1yrnb Z32816 0 79246 261278 2026-03-27T18:42:13Z YoshiRulz 10156 Create test 261278 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32816" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32645", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32645", "Z32645K1": { "Z1K1": "Z7", "Z7K1": "Z6821", "Z6821K1": { "Z1K1": "Z6091", "Z6091K1": "Q98" } } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z22120", "Z22120K2": "Z22113" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Pacific Ocean needs \"the\" in English" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } ailcplu38lflsr1qlyv6n5ogpsv5zo8 Z32817 0 79247 261279 2026-03-27T18:42:54Z YoshiRulz 10156 Create test 261279 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32817" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32645", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32645", "Z32645K1": { "Z1K1": "Z7", "Z7K1": "Z6821", "Z6821K1": { "Z1K1": "Z6091", "Z6091K1": "Q9430" } } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z22120", "Z22120K2": "Z22114" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "ocean may take \"the\" in English" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } e86cwgdkfi0j8f2re7e3e7p4n3onted Z32818 0 79248 261281 2026-03-27T18:45:45Z YoshiRulz 10156 Create test 261281 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32818" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32645", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32645", "Z32645K1": { "Z1K1": "Z7", "Z7K1": "Z6821", "Z6821K1": { "Z1K1": "Z6091", "Z6091K1": "Q11452" } } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z22120", "Z22120K2": "Z22115" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "general relativity never takes \"the\" in English" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } pavxevlgiorvedvof4o41jypdx6mhbm Z32819 0 79249 261283 2026-03-27T18:55:09Z GearsDatapacks 46130 Create function definition 261283 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32819" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32819K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "name" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32819K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "nationality" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6008", "Z17K2": "Z32819K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "profession" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z40", "Z17K2": "Z32819K4", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "use past tense?" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32819" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "\u003Cname\u003E is/was a \u003Cnationality\u003E \u003Cprofession\u003E" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Description for a person, living or deceased" } ] } } j7a3d5feuzr93bqyoxpd4sgpm24dvti 261284 261283 2026-03-27T18:58:12Z GearsDatapacks 46130 Rename argument 261284 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32819" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32819K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "name" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32819K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "country" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6008", "Z17K2": "Z32819K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "profession" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z40", "Z17K2": "Z32819K4", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "use past tense?" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32819" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "\u003Cname\u003E is/was a \u003Cnationality\u003E \u003Cprofession\u003E" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Description for a person, living or deceased" } ] } } 46w1wrq55sh81pkyr0ofs1y3nopa3h1 261285 261284 2026-03-27T18:58:46Z GearsDatapacks 46130 Fix argument type 261285 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32819" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32819K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "name" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32819K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "country" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32819K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "profession" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z40", "Z17K2": "Z32819K4", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "use past tense?" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32819" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "\u003Cname\u003E is/was a \u003Cnationality\u003E \u003Cprofession\u003E" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Description for a person, living or deceased" } ] } } 93mrooqobaqp08850yv5epond6ogj4s 261286 261285 2026-03-27T19:00:17Z GearsDatapacks 46130 Add language parameter 261286 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32819" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32819K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "name" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32819K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "country" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32819K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "profession" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z40", "Z17K2": "Z32819K4", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "use past tense?" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z32819K5", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "language" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32819" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "\u003Cname\u003E is/was a \u003Cnationality\u003E \u003Cprofession\u003E" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Description for a person, living or deceased" } ] } } jxfdfyixps0yq5prsvgwz6q0sqgpmu5 261315 261286 2026-03-27T20:14:55Z GearsDatapacks 46130 Extend to multiple professions 261315 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32819" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32819K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "name" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32819K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "country" } ] } }, { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z6091" }, "Z17K2": "Z32819K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "professions" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z40", "Z17K2": "Z32819K4", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "use past tense?" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z32819K5", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "language" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32819" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "\u003Cname\u003E is/was a \u003Cnationality\u003E \u003Cprofession\u003E" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Description for a person, living or deceased" } ] } } 9ldk3izz1xt9rbrj1jr87io81mhe0qi Z32820 0 79250 261287 2026-03-27T19:01:57Z GearsDatapacks 46130 Create English past tense test 261287 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32820" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32819", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32819", "Z32819K1": { "Z1K1": "Z6091", "Z6091K1": "Q42" }, "Z32819K2": { "Z1K1": "Z6091", "Z6091K1": "Q21" }, "Z32819K3": { "Z1K1": "Z6091", "Z6091K1": "Q36180" }, "Z32819K4": { "Z1K1": "Z40", "Z40K1": "Z41" }, "Z32819K5": "Z1002" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Douglas Adams was an English writer." } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Douglas Adams was an English writer" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } a1dcfcrfz56wy87efjjgutkdsg9cqr1 Z32821 0 79251 261288 2026-03-27T19:05:50Z GearsDatapacks 46130 Create past tense test 261288 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32821" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32819", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32819", "Z32819K1": { "Z1K1": "Z6091", "Z6091K1": "Q32732" }, "Z32819K2": { "Z1K1": "Z6091", "Z6091K1": "Q843" }, "Z32819K3": { "Z1K1": "Z6091", "Z6091K1": "Q15253558" }, "Z32819K4": { "Z1K1": "Z40", "Z40K1": "Z42" }, "Z32819K5": "Z1002" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Malala Yousafzai is a Pakistani activist." } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Malala Yousafzai is a Pakistani activist" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 3vzvihzyx9467nbbxx4olub9tr56wl3 Z32822 0 79252 261289 2026-03-27T19:08:48Z GearsDatapacks 46130 Create function 261289 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32822" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32822K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "item" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32822" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Demonym for Wikidata item" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } r797ubm74uamhxpwxfs3z0j2vdz0w7v 261290 261289 2026-03-27T19:09:26Z GearsDatapacks 46130 Add language parameter 261290 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32822" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32822K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "item" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z32822K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "language" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32822" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Demonym for Wikidata item" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } j8wsfhepkh5ubrqbsi6wkg8kxqsai1f Z32823 0 79253 261291 2026-03-27T19:16:26Z GearsDatapacks 46130 Create configuration 261291 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32823" }, "Z2K2": { "Z1K1": "Z14294", "Z14294K1": [ "Z14293", { "Z1K1": "Z14293", "Z14293K1": "Z29778", "Z14293K2": [ "Z60", "Z1002", "Z1113", "Z1689", "Z1199" ] } ], "Z14294K2": "Z29778" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Configuration for demonym" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 5poovgx8r4nxn79pnzwo2rclhlqy1jx Z32824 0 79254 261292 2026-03-27T19:18:00Z GearsDatapacks 46130 Create multi-language implemenetation 261292 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32824" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32822", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z13036", "Z13036K1": { "Z1K1": "Z7", "Z7K1": "Z14310", "Z14310K1": "Z32823", "Z14310K2": { "Z1K1": "Z18", "Z18K1": "Z32822K2" } }, "Z13036K2": { "Z1K1": "Z18", "Z18K1": "Z32822K1" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } cx68q96worynupmqmqs4w3cmtfmwd64 261293 261292 2026-03-27T19:18:25Z GearsDatapacks 46130 Add English label 261293 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32824" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32822", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z13036", "Z13036K1": { "Z1K1": "Z7", "Z7K1": "Z14310", "Z14310K1": "Z32823", "Z14310K2": { "Z1K1": "Z18", "Z18K1": "Z32822K2" } }, "Z13036K2": { "Z1K1": "Z18", "Z18K1": "Z32822K1" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Demonym for Wikidata item, compose" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } ogy8e1q56zrryhe0z3qbwohga3tsmho Z32825 0 79255 261294 2026-03-27T19:19:28Z GearsDatapacks 46130 Create English language function 261294 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32825" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32825K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "name" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32825K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "country" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32825K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "profession" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z40", "Z17K2": "Z32825K4", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "use past tense?" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32825" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "English person description" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 94bvjvpsy1p4epuc0nog26xym5d31nt 261308 261294 2026-03-27T19:48:15Z GrounderUK 50 Added Z32829 and Z32830 to the approved list of test cases 261308 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32825" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32825K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "name" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32825K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "country" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32825K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "profession" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z40", "Z17K2": "Z32825K4", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "use past tense?" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z32829", "Z32830" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32825" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "English person description" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } anu3hzyez8kncbnfxlaprrhjcsv5x5p 261317 261308 2026-03-27T20:16:10Z GearsDatapacks 46130 Support multiple professions 261317 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32825" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32825K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "name" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32825K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "country" } ] } }, { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z6091" }, "Z17K2": "Z32825K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "profession" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z40", "Z17K2": "Z32825K4", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "use past tense?" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z32829", "Z32830" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32825" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "English person description" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } thxc36s7o9by3740u9ts82igl05xi12 261340 261317 2026-03-27T22:42:01Z GrounderUK 50 Added Z32835 to the approved list of test cases 261340 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32825" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32825K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "name" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32825K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "country" } ] } }, { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z6091" }, "Z17K2": "Z32825K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "profession" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z40", "Z17K2": "Z32825K4", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "use past tense?" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z32829", "Z32830", "Z32835" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32825" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "English person description" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } ildv57o7c6hz8mz8zl0phdllf1ikwzo Z32826 0 79256 261295 2026-03-27T19:20:31Z GearsDatapacks 46130 Create language configuration 261295 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32826" }, "Z2K2": { "Z1K1": "Z14294", "Z14294K1": [ "Z14293", { "Z1K1": "Z14293", "Z14293K1": "Z32825", "Z14293K2": [ "Z60", "Z1113", "Z1199", "Z1689", "Z1002" ] } ], "Z14294K2": "Z32825" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Language configuration for person description" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } nt0pyeujbrq4oxnx92vcs6plkkjb7mu Z32827 0 79257 261296 2026-03-27T19:22:00Z GearsDatapacks 46130 Create multi-language implementation 261296 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32827" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32819", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z30438", "Z30438K1": { "Z1K1": "Z7", "Z7K1": "Z14310", "Z14310K1": "Z32826", "Z14310K2": { "Z1K1": "Z18", "Z18K1": "Z32819K5" } }, "Z30438K2": { "Z1K1": "Z18", "Z18K1": "Z32819K1" }, "Z30438K3": { "Z1K1": "Z18", "Z18K1": "Z32819K2" }, "Z30438K4": { "Z1K1": "Z18", "Z18K1": "Z32819K3" }, "Z30438K5": { "Z1K1": "Z18", "Z18K1": "Z32819K4" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 7hh6gd4dkxsm8e76txe1paj9g1umidi 261297 261296 2026-03-27T19:22:24Z GearsDatapacks 46130 Add English label 261297 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32827" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32819", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z30438", "Z30438K1": { "Z1K1": "Z7", "Z7K1": "Z14310", "Z14310K1": "Z32826", "Z14310K2": { "Z1K1": "Z18", "Z18K1": "Z32819K5" } }, "Z30438K2": { "Z1K1": "Z18", "Z18K1": "Z32819K1" }, "Z30438K3": { "Z1K1": "Z18", "Z18K1": "Z32819K2" }, "Z30438K4": { "Z1K1": "Z18", "Z18K1": "Z32819K3" }, "Z30438K5": { "Z1K1": "Z18", "Z18K1": "Z32819K4" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Person description multi-language compose" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } k0j9zdf7pq1gngnau1jzxfswtemc0ym Category:Multiple language NLG functions 14 79258 261299 2026-03-27T19:30:59Z Arlo Barnes 1231 subcat 261299 wikitext text/x-wiki [[category:natural language generation functions|mul]] hc5rgyulzb8fu5973wcmwag8x1aiquc Z32828 0 79259 261300 2026-03-27T19:32:50Z GearsDatapacks 46130 Create English implementation 261300 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32828" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32825", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z26107", "Z26107K1": "Z1002", "Z26107K2": { "Z1K1": "Z7", "Z7K1": "Z22511", "Z22511K1": { "Z1K1": "Z7", "Z7K1": "Z12899", "Z12899K1": [ "Z6", { "Z1K1": "Z7", "Z7K1": "Z23753", "Z23753K1": { "Z1K1": "Z18", "Z18K1": "Z32825K1" }, "Z23753K2": "Z1002" }, { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z18", "Z18K1": "Z32825K4" }, "Z802K2": "was", "Z802K3": "is" }, { "Z1K1": "Z7", "Z7K1": "Z21739", "Z21739K1": { "Z1K1": "Z7", "Z7K1": "Z14396", "Z14396K1": { "Z1K1": "Z7", "Z7K1": "Z32822", "Z32822K1": { "Z1K1": "Z18", "Z18K1": "Z32825K2" }, "Z32822K2": "Z1002" } } }, { "Z1K1": "Z7", "Z7K1": "Z14396", "Z14396K1": { "Z1K1": "Z7", "Z7K1": "Z32822", "Z32822K1": { "Z1K1": "Z18", "Z18K1": "Z32825K2" }, "Z32822K2": "Z1002" } }, { "Z1K1": "Z7", "Z7K1": "Z23468", "Z23468K1": { "Z1K1": "Z18", "Z18K1": "Z32825K3" }, "Z23468K2": "Z1002" } ], "Z12899K2": " " } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "English person description compose" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } grmlm0uxfbxa0z04fvte4fqcikx3slf 261306 261300 2026-03-27T19:38:55Z GearsDatapacks 46130 Call English function directly 261306 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32828" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32825", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z26107", "Z26107K1": "Z1002", "Z26107K2": { "Z1K1": "Z7", "Z7K1": "Z22511", "Z22511K1": { "Z1K1": "Z7", "Z7K1": "Z12899", "Z12899K1": [ "Z6", { "Z1K1": "Z7", "Z7K1": "Z23753", "Z23753K1": { "Z1K1": "Z18", "Z18K1": "Z32825K1" }, "Z23753K2": "Z1002" }, { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z18", "Z18K1": "Z32825K4" }, "Z802K2": "was", "Z802K3": "is" }, { "Z1K1": "Z7", "Z7K1": "Z21739", "Z21739K1": { "Z1K1": "Z7", "Z7K1": "Z14396", "Z14396K1": { "Z1K1": "Z7", "Z7K1": "Z29778", "Z29778K1": { "Z1K1": "Z18", "Z18K1": "Z32825K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z14396", "Z14396K1": { "Z1K1": "Z7", "Z7K1": "Z29778", "Z29778K1": { "Z1K1": "Z18", "Z18K1": "Z32825K2" } } }, { "Z1K1": "Z7", "Z7K1": "Z23468", "Z23468K1": { "Z1K1": "Z18", "Z18K1": "Z32825K3" }, "Z23468K2": "Z1002" } ], "Z12899K2": " " } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "English person description compose" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } ef4vsv1gksefgine4fx4rrwm4u0fs9a 261313 261306 2026-03-27T20:07:06Z GrounderUK 50 Label for profession 261313 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32828" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32825", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z26107", "Z26107K1": "Z1002", "Z26107K2": { "Z1K1": "Z7", "Z7K1": "Z22511", "Z22511K1": { "Z1K1": "Z7", "Z7K1": "Z12899", "Z12899K1": [ "Z6", { "Z1K1": "Z7", "Z7K1": "Z23753", "Z23753K1": { "Z1K1": "Z18", "Z18K1": "Z32825K1" }, "Z23753K2": "Z1002" }, { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z18", "Z18K1": "Z32825K4" }, "Z802K2": "was", "Z802K3": "is" }, { "Z1K1": "Z7", "Z7K1": "Z21739", "Z21739K1": { "Z1K1": "Z7", "Z7K1": "Z14396", "Z14396K1": { "Z1K1": "Z7", "Z7K1": "Z29778", "Z29778K1": { "Z1K1": "Z18", "Z18K1": "Z32825K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z14396", "Z14396K1": { "Z1K1": "Z7", "Z7K1": "Z29778", "Z29778K1": { "Z1K1": "Z18", "Z18K1": "Z32825K2" } } }, { "Z1K1": "Z7", "Z7K1": "Z23753", "Z23753K1": { "Z1K1": "Z18", "Z18K1": "Z32825K3" }, "Z23753K2": "Z1002" } ], "Z12899K2": " " } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "English person description compose" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } fy04sv7uxjetgxl1a67pn9k4djbqsfl 261325 261313 2026-03-27T20:43:31Z GearsDatapacks 46130 Update to work with profession list 261325 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32828" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32825", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z26107", "Z26107K1": "Z1002", "Z26107K2": { "Z1K1": "Z7", "Z7K1": "Z22511", "Z22511K1": { "Z1K1": "Z7", "Z7K1": "Z12899", "Z12899K1": [ "Z6", { "Z1K1": "Z7", "Z7K1": "Z23753", "Z23753K1": { "Z1K1": "Z18", "Z18K1": "Z32825K1" }, "Z23753K2": "Z1002" }, { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z18", "Z18K1": "Z32825K4" }, "Z802K2": "was", "Z802K3": "is" }, { "Z1K1": "Z7", "Z7K1": "Z21739", "Z21739K1": { "Z1K1": "Z7", "Z7K1": "Z14396", "Z14396K1": { "Z1K1": "Z7", "Z7K1": "Z29778", "Z29778K1": { "Z1K1": "Z18", "Z18K1": "Z32825K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z14396", "Z14396K1": { "Z1K1": "Z7", "Z7K1": "Z29778", "Z29778K1": { "Z1K1": "Z18", "Z18K1": "Z32825K2" } } }, { "Z1K1": "Z7", "Z7K1": "Z18779", "Z18779K1": { "Z1K1": "Z7", "Z7K1": "Z13464", "Z13464K1": { "Z1K1": "Z9", "Z9K1": "" }, "Z13464K2": { "Z1K1": "Z18", "Z18K1": "Z32825K3" }, "Z13464K3": "Z1002" } } ], "Z12899K2": " " } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "English person description compose" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } as7qvw3ubnfv137vp9munqnvm1ifc20 261326 261325 2026-03-27T20:44:04Z GearsDatapacks 46130 Fix missing function 261326 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32828" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32825", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z26107", "Z26107K1": "Z1002", "Z26107K2": { "Z1K1": "Z7", "Z7K1": "Z22511", "Z22511K1": { "Z1K1": "Z7", "Z7K1": "Z12899", "Z12899K1": [ "Z6", { "Z1K1": "Z7", "Z7K1": "Z23753", "Z23753K1": { "Z1K1": "Z18", "Z18K1": "Z32825K1" }, "Z23753K2": "Z1002" }, { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z18", "Z18K1": "Z32825K4" }, "Z802K2": "was", "Z802K3": "is" }, { "Z1K1": "Z7", "Z7K1": "Z21739", "Z21739K1": { "Z1K1": "Z7", "Z7K1": "Z14396", "Z14396K1": { "Z1K1": "Z7", "Z7K1": "Z29778", "Z29778K1": { "Z1K1": "Z18", "Z18K1": "Z32825K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z14396", "Z14396K1": { "Z1K1": "Z7", "Z7K1": "Z29778", "Z29778K1": { "Z1K1": "Z18", "Z18K1": "Z32825K2" } } }, { "Z1K1": "Z7", "Z7K1": "Z18779", "Z18779K1": { "Z1K1": "Z7", "Z7K1": "Z13464", "Z13464K1": "Z23753", "Z13464K2": { "Z1K1": "Z18", "Z18K1": "Z32825K3" }, "Z13464K3": "Z1002" } } ], "Z12899K2": " " } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "English person description compose" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 68busrlzy9oevkqw3y6mq1uy9xh432r 261350 261326 2026-03-27T23:10:48Z GearsDatapacks 46130 Call general demonym function instead of specific one 261350 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32828" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32825", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z26107", "Z26107K1": "Z1002", "Z26107K2": { "Z1K1": "Z7", "Z7K1": "Z22511", "Z22511K1": { "Z1K1": "Z7", "Z7K1": "Z12899", "Z12899K1": [ "Z6", { "Z1K1": "Z7", "Z7K1": "Z23753", "Z23753K1": { "Z1K1": "Z18", "Z18K1": "Z32825K1" }, "Z23753K2": "Z1002" }, { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z18", "Z18K1": "Z32825K4" }, "Z802K2": "was", "Z802K3": "is" }, { "Z1K1": "Z7", "Z7K1": "Z21739", "Z21739K1": { "Z1K1": "Z7", "Z7K1": "Z14396", "Z14396K1": { "Z1K1": "Z7", "Z7K1": "Z32822", "Z32822K1": { "Z1K1": "Z18", "Z18K1": "Z32825K2" }, "Z32822K2": "Z1002" } } }, { "Z1K1": "Z7", "Z7K1": "Z14396", "Z14396K1": { "Z1K1": "Z7", "Z7K1": "Z32822", "Z32822K1": { "Z1K1": "Z18", "Z18K1": "Z32825K2" }, "Z32822K2": "Z1002" } }, { "Z1K1": "Z7", "Z7K1": "Z18779", "Z18779K1": { "Z1K1": "Z7", "Z7K1": "Z13464", "Z13464K1": "Z23753", "Z13464K2": { "Z1K1": "Z18", "Z18K1": "Z32825K3" }, "Z13464K3": "Z1002" } } ], "Z12899K2": " " } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "English person description compose" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } gan0vfi6pez6cnzdvvdasu70nrcmlkj Category:Láadan natural language generation functions 14 79260 261302 2026-03-27T19:35:15Z Arlo Barnes 1231 subcat 261302 wikitext text/x-wiki [[category:natural language generation functions|ldn]] bz5cvleysf5p5n8bzbdpex3jsa5l1g2 Z32829 0 79261 261303 2026-03-27T19:35:26Z GearsDatapacks 46130 Create English past tense test 261303 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32829" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32825", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32825", "Z32825K1": { "Z1K1": "Z6091", "Z6091K1": "Q42" }, "Z32825K2": { "Z1K1": "Z6091", "Z6091K1": "Q21" }, "Z32825K3": { "Z1K1": "Z6091", "Z6091K1": "Q36180" }, "Z32825K4": { "Z1K1": "Z40", "Z40K1": "Z41" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Douglas Adams was an English writer." } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "En: Douglas Adams was an English writer" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 67t9bccd5xb3vopf9d9pzd2k0ot5b9j 261304 261303 2026-03-27T19:35:41Z GearsDatapacks 46130 Update label 261304 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32829" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32825", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32825", "Z32825K1": { "Z1K1": "Z6091", "Z6091K1": "Q42" }, "Z32825K2": { "Z1K1": "Z6091", "Z6091K1": "Q21" }, "Z32825K3": { "Z1K1": "Z6091", "Z6091K1": "Q36180" }, "Z32825K4": { "Z1K1": "Z40", "Z40K1": "Z41" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Douglas Adams was an English writer." } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "en: Douglas Adams was an English writer" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } ejie7yw7h4i9ez1t7bfek5zwcyje6hv 261338 261304 2026-03-27T22:39:33Z GrounderUK 50 [[Z6091]] to singleton 261338 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32829" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32825", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32825", "Z32825K1": { "Z1K1": "Z6091", "Z6091K1": "Q42" }, "Z32825K2": { "Z1K1": "Z6091", "Z6091K1": "Q21" }, "Z32825K3": [ "Z6091", { "Z1K1": "Z6091", "Z6091K1": "Q36180" } ], "Z32825K4": { "Z1K1": "Z40", "Z40K1": "Z41" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Douglas Adams was an English writer." } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "en: Douglas Adams was an English writer" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 13y4idz5lji5bw0bsqzmx97ynbehego Z32830 0 79262 261305 2026-03-27T19:36:52Z GearsDatapacks 46130 Create English present tense test 261305 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32830" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32825", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32825", "Z32825K1": { "Z1K1": "Z6091", "Z6091K1": "Q32732" }, "Z32825K2": { "Z1K1": "Z6091", "Z6091K1": "Q843" }, "Z32825K3": { "Z1K1": "Z6091", "Z6091K1": "Q15253558" }, "Z32825K4": { "Z1K1": "Z40", "Z40K1": "Z42" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Malala Yousafzai is a Pakistani activist." } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "en: Malala Yousafzai is a Pakistani activist" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } sbxdo7yydltgwndf3xelskjksrss7yp 261339 261305 2026-03-27T22:41:11Z GrounderUK 50 [[Z6091]] to singleton 261339 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32830" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32825", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32825", "Z32825K1": { "Z1K1": "Z6091", "Z6091K1": "Q32732" }, "Z32825K2": { "Z1K1": "Z6091", "Z6091K1": "Q843" }, "Z32825K3": [ "Z6091", { "Z1K1": "Z6091", "Z6091K1": "Q15253558" } ], "Z32825K4": { "Z1K1": "Z40", "Z40K1": "Z42" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Malala Yousafzai is a Pakistani activist." } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "en: Malala Yousafzai is a Pakistani activist" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 23rc23a8o537rbw6voqsgm34vo5fev9 Talk:Z32819 1 79263 261309 2026-03-27T19:50:23Z Feeglgeef 8776 /* Extend to multiple professions */ new section 261309 wikitext text/x-wiki == Extend to multiple professions == {{ping|GearsDatapacks}} Hi! You might want to make this more abstract as to allow for multiple professions now, as modifying it later will be complex, and there are many cases where you would want multiple. Though this is a wiki, I would respect your decision on the matter as creator. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 19:50, 27 March 2026 (UTC) 5fqbynx4lx81f18xlk9z7q4xe6vjp6o 261314 261309 2026-03-27T20:12:47Z GearsDatapacks 46130 /* Extend to multiple professions */ Reply 261314 wikitext text/x-wiki == Extend to multiple professions == {{ping|GearsDatapacks}} Hi! You might want to make this more abstract as to allow for multiple professions now, as modifying it later will be complex, and there are many cases where you would want multiple. Though this is a wiki, I would respect your decision on the matter as creator. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 19:50, 27 March 2026 (UTC) :Yes, that makes sense. I'll do that. [[User:GearsDatapacks|GearsDatapacks]] ([[User talk:GearsDatapacks|talk]]) 20:12, 27 March 2026 (UTC) nuh24nkex2xusz4eob7nkxvrkxym5qa Z32831 0 79264 261310 2026-03-27T19:54:36Z ChaoticVermillion 31127 created page 261310 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32831" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32831K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "subject" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32831K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "verb" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z32831K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "language" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32831" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Latin erb describing noun sentence" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Makes a sentence of the form [X] [verb]." } ] } } mhldy33wb3ddb8ugy7qzt3ajkkn12ch 261311 261310 2026-03-27T19:55:05Z ChaoticVermillion 31127 typo 261311 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32831" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32831K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "subject" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32831K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "verb" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z32831K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "language" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32831" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Latin verb describing noun sentence" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Makes a sentence of the form [X] [verb]." } ] } } b40elzt584ip1q03vxfre0gco4gasb1 261316 261311 2026-03-27T20:15:30Z ChaoticVermillion 31127 Added Z32832 to the approved list of test cases 261316 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32831" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32831K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "subject" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32831K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "verb" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z32831K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "language" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z32832" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32831" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Latin verb describing noun sentence" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Makes a sentence of the form [X] [verb]." } ] } } t5vuhmtfjx4myvdsqflb3cz3622wyxp 261379 261316 2026-03-28T04:59:13Z ChaoticVermillion 31127 Added Z32833 to the approved list of implementations 261379 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32831" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32831K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "subject" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32831K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "verb" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z32831K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "language" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z32832" ], "Z8K4": [ "Z14", "Z32833" ], "Z8K5": "Z32831" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Latin verb describing noun sentence" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Makes a sentence of the form [X] [verb]." } ] } } 7xwnw3djua44bk7xpc2yqyj2tj2vcvz Z32832 0 79265 261312 2026-03-27T19:57:13Z ChaoticVermillion 31127 added test 261312 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32832" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32831", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32831", "Z32831K1": { "Z1K1": "Z6091", "Z6091K1": "Q525" }, "Z32831K2": { "Z1K1": "Z6091", "Z6091K1": "Q107152168" }, "Z32831K3": "Z1403" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1403", "Z11K2": "Sol splendet." } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "\"Sol splendet.\"" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } eywynpgfouhf6jak0j65nt39dqyq0h7 261321 261312 2026-03-27T20:31:55Z ChaoticVermillion 31127 changed label 261321 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32832" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32831", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32831", "Z32831K1": { "Z1K1": "Z6091", "Z6091K1": "Q525" }, "Z32831K2": { "Z1K1": "Z6091", "Z6091K1": "Q107152168" }, "Z32831K3": "Z1403" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1403", "Z11K2": "Sol splendet." } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "\"stellae splendent.\"" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } kwqlghz5ze960tu86zedyx49sgkzaya 261322 261321 2026-03-27T20:32:24Z ChaoticVermillion 31127 changed sentence to be plural 261322 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32832" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32831", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32831", "Z32831K1": { "Z1K1": "Z6091", "Z6091K1": "Q525" }, "Z32831K2": { "Z1K1": "Z6091", "Z6091K1": "Q107152168" }, "Z32831K3": "Z1403" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1403", "Z11K2": "stellae splendent." } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "\"stellae splendent.\"" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } ids608w2k233jlc5n6k7v8qwgkkbwqy 261323 261322 2026-03-27T20:34:56Z ChaoticVermillion 31127 minor edit 261323 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32832" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32831", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32831", "Z32831K1": { "Z1K1": "Z6091", "Z6091K1": "Q523" }, "Z32831K2": { "Z1K1": "Z6091", "Z6091K1": "Q107152168" }, "Z32831K3": "Z1403" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1403", "Z11K2": "stellae splendent." } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "\"stellae splendent.\"" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } rl7qcr3cpty9t57fdpqg28vvrfy7ual Z32833 0 79266 261318 2026-03-27T20:17:57Z ChaoticVermillion 31127 created implementation 261318 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32833" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32831", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z26107", "Z26107K1": { "Z1K1": "Z18", "Z18K1": "" }, "Z26107K2": { "Z1K1": "Z7", "Z7K1": "Z32527", "Z32527K1": { "Z1K1": "Z7", "Z7K1": "Z21394", "Z21394K1": [ "Z6", { "Z1K1": "Z7", "Z7K1": "Z32606", "Z32606K1": { "Z1K1": "Z18", "Z18K1": "Z32831K1" }, "Z32606K2": { "Z1K1": "Z18", "Z18K1": "Z32831K3" }, "Z32606K3": [ "Z6091", { "Z1K1": "Z6091", "Z6091K1": "Q131105" } ] }, " ", { "Z1K1": "Z7", "Z7K1": "Z27410", "Z27410K1": { "Z1K1": "Z7", "Z7K1": "Z27327", "Z27327K1": { "Z1K1": "Z18", "Z18K1": "Z32831K2" }, "Z27327K2": { "Z1K1": "Z6092", "Z6092K1": "P9970" }, "Z27327K3": { "Z1K1": "Z18", "Z18K1": "Z32831K3" } }, "Z27410K2": [ "Z6091", { "Z1K1": "Z6091", "Z6091K1": "Q146786" }, { "Z1K1": "Z6091", "Z6091K1": "Q51929074" }, { "Z1K1": "Z6091", "Z6091K1": "Q192613" }, { "Z1K1": "Z6091", "Z6091K1": "Q682111" }, { "Z1K1": "Z6091", "Z6091K1": "Q1317831" } ] }, "." ] } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Latin verb describing noun sentence, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 0jznghvzopzf2ljbm3ya6lmfmtuzp2p 261378 261318 2026-03-28T04:58:56Z ChaoticVermillion 31127 fixed language 261378 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32833" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32831", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z26107", "Z26107K1": { "Z1K1": "Z18", "Z18K1": "Z32831K3" }, "Z26107K2": { "Z1K1": "Z7", "Z7K1": "Z32527", "Z32527K1": { "Z1K1": "Z7", "Z7K1": "Z21394", "Z21394K1": [ "Z6", { "Z1K1": "Z7", "Z7K1": "Z32606", "Z32606K1": { "Z1K1": "Z18", "Z18K1": "Z32831K1" }, "Z32606K2": { "Z1K1": "Z18", "Z18K1": "Z32831K3" }, "Z32606K3": [ "Z6091", { "Z1K1": "Z6091", "Z6091K1": "Q131105" } ] }, " ", { "Z1K1": "Z7", "Z7K1": "Z27410", "Z27410K1": { "Z1K1": "Z7", "Z7K1": "Z27327", "Z27327K1": { "Z1K1": "Z18", "Z18K1": "Z32831K2" }, "Z27327K2": { "Z1K1": "Z6092", "Z6092K1": "P9970" }, "Z27327K3": { "Z1K1": "Z18", "Z18K1": "Z32831K3" } }, "Z27410K2": [ "Z6091", { "Z1K1": "Z6091", "Z6091K1": "Q146786" }, { "Z1K1": "Z6091", "Z6091K1": "Q51929074" }, { "Z1K1": "Z6091", "Z6091K1": "Q192613" }, { "Z1K1": "Z6091", "Z6091K1": "Q682111" }, { "Z1K1": "Z6091", "Z6091K1": "Q1317831" } ] }, "." ] } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Latin verb describing noun sentence, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } kh14url3dj86k7dox163drx3setpvdi Talk:Z29779 1 79267 261319 2026-03-27T20:19:41Z GrounderUK 50 /* Noun or adjective */ new section 261319 wikitext text/x-wiki == Noun or adjective == English demonyms can be either, with different lexemes because they have different lexical categories. The forms are often but not always identical, so we should have different functions. Which one is this? [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 20:19, 27 March 2026 (UTC) ac2yurk1cxvg5yxow035omqz3e0ahkv 261324 261319 2026-03-27T20:37:36Z ChaoticVermillion 31127 /* Noun or adjective */ Reply 261324 wikitext text/x-wiki == Noun or adjective == English demonyms can be either, with different lexemes because they have different lexical categories. The forms are often but not always identical, so we should have different functions. Which one is this? [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 20:19, 27 March 2026 (UTC) :I think this is for the noun demonym, as it returns Englishman and Frenchman instead of English or French. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 20:37, 27 March 2026 (UTC) aqpgagqwp4brap0i1n4yuxlszkvxg8w 261327 261324 2026-03-27T21:12:45Z GrounderUK 50 /* Noun or adjective */ Reply 🤷‍♂️ 261327 wikitext text/x-wiki == Noun or adjective == English demonyms can be either, with different lexemes because they have different lexical categories. The forms are often but not always identical, so we should have different functions. Which one is this? [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 20:19, 27 March 2026 (UTC) :I think this is for the noun demonym, as it returns Englishman and Frenchman instead of English or French. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 20:37, 27 March 2026 (UTC) ::As it happens, yes… but only because it returns whichever is the first lexeme. So it should be fairly random. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 21:12, 27 March 2026 (UTC) 9nrq5qcnskov29hy52l4mkq4bo8sgq2 261328 261327 2026-03-27T21:18:23Z GrounderUK 50 /* Noun or adjective */ Reply 261328 wikitext text/x-wiki == Noun or adjective == English demonyms can be either, with different lexemes because they have different lexical categories. The forms are often but not always identical, so we should have different functions. Which one is this? [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 20:19, 27 March 2026 (UTC) :I think this is for the noun demonym, as it returns Englishman and Frenchman instead of English or French. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 20:37, 27 March 2026 (UTC) ::As it happens, yes… but only because it returns whichever is the first lexeme. So it should be fairly random. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 21:12, 27 March 2026 (UTC) ::Looking at the fallback to {{Z|Z17656}}, that also seems inconsistent, giving “English” and “Spaniard”. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 21:18, 27 March 2026 (UTC) bvtmc6tg5953i6a6lyasyuxz6ulu07f Z32834 0 79268 261320 2026-03-27T20:23:32Z GearsDatapacks 46130 Add test for single item 261320 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32834" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z18779", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z18779", "Z18779K1": [ "Z6", "one" ] }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z866", "Z866K2": "one" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Single item: one -\u003E one" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } npuctvjui0ewqbxbux78gtfzrc0j8k3 Z32835 0 79269 261335 2026-03-27T22:26:32Z GearsDatapacks 46130 Add test for mutiple professions 261335 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32835" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32825", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32825", "Z32825K1": { "Z1K1": "Z6091", "Z6091K1": "Q8027" }, "Z32825K2": { "Z1K1": "Z6091", "Z6091K1": "Q30" }, "Z32825K3": [ "Z6091", { "Z1K1": "Z6091", "Z6091K1": "Q15253558" }, { "Z1K1": "Z6091", "Z6091K1": "Q114797862" } ], "Z32825K4": { "Z1K1": "Z40", "Z40K1": "Z41" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Martin Luther King Jr. was an American activist and Babtist minister. " } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "English multiple professions" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 61mhf7g3pckkia7hg3wp9ty59r1jx3d 261336 261335 2026-03-27T22:27:24Z GearsDatapacks 46130 Fix typo 261336 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32835" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32825", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32825", "Z32825K1": { "Z1K1": "Z6091", "Z6091K1": "Q8027" }, "Z32825K2": { "Z1K1": "Z6091", "Z6091K1": "Q30" }, "Z32825K3": [ "Z6091", { "Z1K1": "Z6091", "Z6091K1": "Q15253558" }, { "Z1K1": "Z6091", "Z6091K1": "Q114797862" } ], "Z32825K4": { "Z1K1": "Z40", "Z40K1": "Z41" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Martin Luther King Jr. was an American activist and Baptist minister. " } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "English multiple professions" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 8ycv6xvrxamrtuzfmtc4xiqbdc9w0sa 261337 261336 2026-03-27T22:35:10Z GearsDatapacks 46130 Remove extra space 261337 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32835" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32825", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32825", "Z32825K1": { "Z1K1": "Z6091", "Z6091K1": "Q8027" }, "Z32825K2": { "Z1K1": "Z6091", "Z6091K1": "Q30" }, "Z32825K3": [ "Z6091", { "Z1K1": "Z6091", "Z6091K1": "Q15253558" }, { "Z1K1": "Z6091", "Z6091K1": "Q114797862" } ], "Z32825K4": { "Z1K1": "Z40", "Z40K1": "Z41" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Martin Luther King Jr. was an American activist and Baptist minister." } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "English multiple professions" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } hnk9qs9iy7d2lw9qg91zqzjqghv6y5t Z32836 0 79270 261347 2026-03-27T23:01:39Z GearsDatapacks 46130 Create composition using property 261347 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32836" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32822", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z811", "Z811K1": { "Z1K1": "Z7", "Z7K1": "Z23143", "Z23143K1": { "Z1K1": "Z7", "Z7K1": "Z22978", "Z22978K1": { "Z1K1": "Z18", "Z18K1": "Z32822K1" }, "Z22978K2": { "Z1K1": "Z6092", "Z6092K1": "P1549" } }, "Z23143K2": { "Z1K1": "Z18", "Z18K1": "Z32822K2" } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Demonym for Wikidata item using property, compose" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } sdyp0pnjilzdv735vti7550cwn3af1v Z32837 0 79271 261348 2026-03-27T23:03:09Z GearsDatapacks 46130 Create testcase for English 261348 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32837" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32822", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32822", "Z32822K1": { "Z1K1": "Z6091", "Z6091K1": "Q21" }, "Z32822K2": "Z1002" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "English" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "en demonym for England is English" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } bbzf6alle9opobwggmqiz0tniiivn6t Z32838 0 79272 261349 2026-03-27T23:07:19Z GearsDatapacks 46130 Create test case for Pakistan demonym 261349 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32838" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32822", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32822", "Z32822K1": { "Z1K1": "Z6091", "Z6091K1": "Q843" }, "Z32822K2": "Z1002" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Pakistani" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "en demonym for Pakistan is Pakistani" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } ir5uvbwy1kmpqsn9qvcwyv5v2thsvht Z32839 0 79273 261351 2026-03-27T23:43:46Z EatingCarBatteries 61191 261351 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32839" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32839K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Wikidata item reference" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z32839K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Language" } ] } } ], "Z8K2": "Z89", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32839" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "provides a plural sentence case section title from Wikidata label" } ] } } ko27lvm70ulvpwdbv2og3klufy02iac 261352 261351 2026-03-27T23:44:32Z EatingCarBatteries 61191 261352 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32839" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32839K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "item" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z32839K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "requested language" } ] } } ], "Z8K2": "Z89", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32839" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "provides a plural sentence case section title from Wikidata label" } ] } } 2xgr2yfcjl2mebask3oq5yvqqybueml 261361 261352 2026-03-28T00:26:37Z 99of9 1622 Added Z32840 to the approved list of implementations 261361 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32839" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32839K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "item" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z32839K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "requested language" } ] } } ], "Z8K2": "Z89", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14", "Z32840" ], "Z8K5": "Z32839" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "provides a plural sentence case section title from Wikidata label" } ] } } 9ydnx58w480u97z4cwh8tehrm4prmt4 261363 261361 2026-03-28T00:28:35Z 99of9 1622 Added Z32841 to the approved list of test cases 261363 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32839" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32839K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "item" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z32839K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "requested language" } ] } } ], "Z8K2": "Z89", "Z8K3": [ "Z20", "Z32841" ], "Z8K4": [ "Z14", "Z32840" ], "Z8K5": "Z32839" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "provides a plural sentence case section title from Wikidata label" } ] } } 4w168i4ddbgnxycqflqjgi016xc2ibl 261364 261363 2026-03-28T00:32:36Z EatingCarBatteries 61191 261364 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32839" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32839K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "sentence case" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z32839K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "requested language" } ] } } ], "Z8K2": "Z89", "Z8K3": [ "Z20", "Z32841" ], "Z8K4": [ "Z14", "Z32840" ], "Z8K5": "Z32839" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "provides a plural sentence case section title from Wikidata label" } ] } } 0f79pe755z4333h6a8h9ow2zry45eb2 261367 261364 2026-03-28T00:37:30Z EatingCarBatteries 61191 261367 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32839" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32839K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "sentence case" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z32839K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "requested language" } ] } } ], "Z8K2": "Z89", "Z8K3": [ "Z20", "Z32841" ], "Z8K4": [ "Z14", "Z32840" ], "Z8K5": "Z32839" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "capital plural sentence case title from Wikidata" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "sentence case", "section title", "plural title", "capital title", "plural capital title" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "provides a plural sentence case section title from Wikidata label" } ] } } ayipdekgx2vabz1xztt5kikw74g8gnb 261368 261367 2026-03-28T00:37:51Z EatingCarBatteries 61191 261368 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32839" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32839K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "sentence case" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z32839K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "requested language" } ] } } ], "Z8K2": "Z89", "Z8K3": [ "Z20", "Z32841" ], "Z8K4": [ "Z14", "Z32840" ], "Z8K5": "Z32839" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "plural sentence case title from Wikidata label" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "sentence case", "section title", "plural title", "capital title", "plural capital title" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "provides a plural sentence case section title from Wikidata label" } ] } } 9khcwn6sgp58ko9wuscy24ro7mct5ae 261370 261368 2026-03-28T00:39:11Z EatingCarBatteries 61191 261370 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32839" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32839K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Wikidata item" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z32839K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Requested language" } ] } } ], "Z8K2": "Z89", "Z8K3": [ "Z20", "Z32841" ], "Z8K4": [ "Z14", "Z32840" ], "Z8K5": "Z32839" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "plural sentence case title from Wikidata label" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "sentence case", "section title", "plural title", "capital title", "plural capital title" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Provides a plural, sentence case HTML fragment using the connected lexeme in the provided language." } ] } } soum86olt5s5h7i0d68uyw0gd30ueev 261373 261370 2026-03-28T01:24:57Z EatingCarBatteries 61191 261373 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32839" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32839K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Wikidata item" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z32839K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Requested language" } ] } } ], "Z8K2": "Z89", "Z8K3": [ "Z20", "Z32841" ], "Z8K4": [ "Z14", "Z32840" ], "Z8K5": "Z32839" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "plural sentence case title from Wikidata label" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "sentence case", "section title", "plural title", "capital title", "plural capital title" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Provides a plural, sentence case HTML fragment from a QID using the connected lexeme in the provided language." } ] } } 15hh9hbo91g8b1zfv5i2dx41lsjhb71 261392 261373 2026-03-28T06:31:06Z EatingCarBatteries 61191 261392 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32839" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32839K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Wikidata item" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z32839K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Requested language" } ] } } ], "Z8K2": "Z89", "Z8K3": [ "Z20", "Z32841" ], "Z8K4": [ "Z14", "Z32840" ], "Z8K5": "Z32839" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "plural sentence case title from Wikidata label" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "sentence case", "section title", "plural title", "capital title", "plural capital title" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Provides a plural, sentence case HTML fragment section title from a QID using the connected lexeme in the provided language." } ] } } doizv5kok9o3jn4divq2qibmf2n6o05 Z32840 0 79274 261353 2026-03-27T23:57:01Z EatingCarBatteries 61191 261353 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32840" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32839", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z31465", "Z31465K1": { "Z1K1": "Z7", "Z7K1": "Z14396", "Z14396K1": { "Z1K1": "Z7", "Z7K1": "Z19260", "Z19260K1": { "Z1K1": "Z7", "Z7K1": "Z22696", "Z22696K1": { "Z1K1": "Z18", "Z18K1": "Z32839K1" }, "Z22696K2": { "Z1K1": "Z18", "Z18K1": "Z32839K2" } } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } sj5o815wqf2rsal5x8hlsc0msrph852 261354 261353 2026-03-28T00:04:21Z EatingCarBatteries 61191 261354 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32840" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32839", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z31465", "Z31465K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z14396", "Z14396K1": { "Z1K1": "Z7", "Z7K1": "Z19260", "Z19260K1": { "Z1K1": "Z7", "Z7K1": "Z22696", "Z22696K1": { "Z1K1": "Z18", "Z18K1": "Z32839K1" }, "Z22696K2": { "Z1K1": "Z18", "Z18K1": "Z32839K2" } } } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } lmh13e4qbjtpqathaxio2x5n29uu6hk Z32841 0 79275 261362 2026-03-28T00:28:19Z 99of9 1622 261362 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32841" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32839", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32839", "Z32839K1": { "Z1K1": "Z6091", "Z6091K1": "Q146" }, "Z32839K2": "Z1002" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z877", "Z877K2": { "Z1K1": "Z89", "Z89K1": "\u003Ch2\u003ECats\u003C/h2\u003E" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "\u003Ch2\u003ECats\u003C/h2\u003E" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 9d5zpjritxirm922y87hzvvoddepyos Z32842 0 79276 261380 2026-03-28T05:01:36Z ChaoticVermillion 31127 created config 261380 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32842" }, "Z2K2": { "Z1K1": "Z14294", "Z14294K1": [ "Z14293", { "Z1K1": "Z14293", "Z14293K1": "Z32621", "Z14293K2": [ "Z60", "Z1002", "Z1113", "Z1124", "Z1966", "Z1199", "Z1299", "Z1689", "Z1437" ] }, { "Z1K1": "Z14293", "Z14293K1": "Z32831", "Z14293K2": [ "Z60", "Z1403" ] } ], "Z14294K2": "Z32831" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "config for verb describing noun sentence" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 7ws80o4flgp5fd11778vmr0siyzen54 Z32843 0 79277 261382 2026-03-28T05:04:29Z ChaoticVermillion 31127 created function 261382 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32843" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32843K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "subject" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32843K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "verb" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z32843K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "language" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32843" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "verb describing noun sentence" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "[X]s [verb]", "[X] [verb]", "[X]s [Y]" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Makes a sentence of the form [X]s [verb] e.g. [en] \"Stars shine.\" or [la] \"stellae splendent.\"" } ] } } m0x95u1hoxbpe7b9thggfz0ar4wjq7k 261386 261382 2026-03-28T05:13:05Z ChaoticVermillion 31127 Added Z32844 and Z32845 to the approved list of test cases 261386 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32843" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32843K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "subject" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32843K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "verb" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z32843K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "language" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z32844", "Z32845" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32843" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "verb describing noun sentence" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "[X]s [verb]", "[X] [verb]", "[X]s [Y]" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Makes a sentence of the form [X]s [verb] e.g. [en] \"Stars shine.\" or [la] \"stellae splendent.\"" } ] } } c372u7rwmr6ui6zxfcb55nz456xo4ja 261387 261386 2026-03-28T05:16:30Z ChaoticVermillion 31127 Added Z32846 to the approved list of implementations 261387 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32843" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32843K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "subject" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32843K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "verb" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z32843K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "language" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z32844", "Z32845" ], "Z8K4": [ "Z14", "Z32846" ], "Z8K5": "Z32843" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "verb describing noun sentence" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "[X]s [verb]", "[X] [verb]", "[X]s [Y]" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Makes a sentence of the form [X]s [verb] e.g. [en] \"Stars shine.\" or [la] \"stellae splendent.\"" } ] } } 0hpibnfr5q287sdpder1eemvpay39cy Z32844 0 79278 261383 2026-03-28T05:06:38Z ChaoticVermillion 31127 created test 261383 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32844" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32843", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32843", "Z32843K1": { "Z1K1": "Z6091", "Z6091K1": "Q523" }, "Z32843K2": { "Z1K1": "Z6091", "Z6091K1": "Q107152168" }, "Z32843K3": "Z1002" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Stars shine." } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "[en] Stars shine." } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 2n0h1m0sfq458kb61lcm1nylipsehbh Z32845 0 79279 261384 2026-03-28T05:07:58Z ChaoticVermillion 31127 created test 261384 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32845" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32843", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32843", "Z32843K1": { "Z1K1": "Z6091", "Z6091K1": "Q523" }, "Z32843K2": { "Z1K1": "Z6091", "Z6091K1": "Q107152168" }, "Z32843K3": "Z1403" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1403", "Z11K2": "stellae splendent." } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "[la] stellae splendent." } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 7j695fosmxvk2xayqsdvmw5prcivqrq Z32846 0 79280 261385 2026-03-28T05:12:46Z ChaoticVermillion 31127 created implementation 261385 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32846" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32843", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z21216", "Z21216K1": { "Z1K1": "Z7", "Z7K1": "Z14310", "Z14310K1": "Z32842", "Z14310K2": { "Z1K1": "Z18", "Z18K1": "Z32843K3" } }, "Z21216K2": { "Z1K1": "Z18", "Z18K1": "Z32843K1" }, "Z21216K3": { "Z1K1": "Z18", "Z18K1": "Z32843K2" }, "Z21216K4": { "Z1K1": "Z18", "Z18K1": "Z32843K3" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "verb describing noun sentence, config composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } fmf2iiq2ox43kmq7gg9encvd5b0tjkw Z32847 0 79281 261389 2026-03-28T06:01:16Z 99of9 1622 261389 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32847" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32501", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32501", "Z32501K1": { "Z1K1": "Z6091", "Z6091K1": "Q1319599" }, "Z32501K2": "Z1002", "Z32501K3": [ "Z6091", { "Z1K1": "Z6091", "Z6091K1": "Q110022" } ] }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z866", "Z866K2": "ice giants" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "in English a pair of ice giant: \"ice giants\"" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } qboxp29gdjp37bjfeqyexxve7263c0u 261390 261389 2026-03-28T06:01:50Z 99of9 1622 261390 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32847" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32501", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32501", "Z32501K1": { "Z1K1": "Z6091", "Z6091K1": "Q1319599" }, "Z32501K2": "Z1002", "Z32501K3": [ "Z6091", { "Z1K1": "Z6091", "Z6091K1": "Q110022" } ] }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z866", "Z866K2": "ice giants" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "in English a pair of ice giant: \"ice giants\"" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "If we can't convert from dual, it should at least work for plural." } ] } } fiicwn5dtmu5wfhekvjfzh114exju06 Z32848 0 79282 261395 2026-03-28T06:47:53Z ChaoticVermillion 31127 created function 261395 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32848" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32848K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Entity" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32848K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Class" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32848K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Location" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32848" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 1aoocal3byrtsr4giix3p81g1jbivko 261396 261395 2026-03-28T06:48:41Z ChaoticVermillion 31127 added label 261396 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32848" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32848K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Entity" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32848K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Class" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32848K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Location" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32848" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "State location using entity and class, Latin" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } bzrowyp6op0zh1qzjyvola7k4jeqvka 261402 261396 2026-03-28T07:01:48Z ChaoticVermillion 31127 Added Z32850 and Z32849 to the approved list of test cases 261402 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32848" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32848K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Entity" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32848K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Class" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32848K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Location" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z32850", "Z32849" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32848" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "State location using entity and class, Latin" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } tjse1934ew5ay23jwyr61dgm40ig7yg 261423 261402 2026-03-28T08:28:28Z ChaoticVermillion 31127 Added Z32851 to the approved list of implementations 261423 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32848" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32848K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Entity" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32848K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Class" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32848K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Location" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z32850", "Z32849" ], "Z8K4": [ "Z14", "Z32851" ], "Z8K5": "Z32848" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "State location using entity and class, Latin" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } gn1kikj1a2kx616hwuy1mflafs7qmtp Z32849 0 79283 261397 2026-03-28T06:50:43Z ChaoticVermillion 31127 created test 261397 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32849" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32848", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32848", "Z32848K1": { "Z1K1": "Z6091", "Z6091K1": "Q220" }, "Z32848K2": { "Z1K1": "Z6091", "Z6091K1": "Q515" }, "Z32848K3": { "Z1K1": "Z6091", "Z6091K1": "Q38" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1403", "Z11K2": "Roma est urbs in Italia." } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "\"Roma est urbs in Italia.\"" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 2gq1qa5g9xljzpw95ymg1s5e495gi42 261399 261397 2026-03-28T06:54:24Z ChaoticVermillion 31127 changed sentence to use genitive 261399 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32849" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32848", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32848", "Z32848K1": { "Z1K1": "Z6091", "Z6091K1": "Q220" }, "Z32848K2": { "Z1K1": "Z6091", "Z6091K1": "Q515" }, "Z32848K3": { "Z1K1": "Z6091", "Z6091K1": "Q38" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1403", "Z11K2": "Roma est urbs Italiae." } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "\"Roma est urbs Italiae.\"" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 0yrnndrv5bvm1xos1s3i62d0t20nvvm 261417 261399 2026-03-28T08:15:40Z ChaoticVermillion 31127 changed to support Roma est urbs in Italia 261417 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32849" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32848", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32063", "Z32063K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1403", "Z11K2": "Roma est urbs Italiae." }, { "Z1K1": "Z11", "Z11K1": "Z1403", "Z11K2": "Roma est urbs in Italia." } ], "Z32063K2": { "Z1K1": "Z7", "Z7K1": "Z32848", "Z32848K1": { "Z1K1": "Z6091", "Z6091K1": "Q220" }, "Z32848K2": { "Z1K1": "Z6091", "Z6091K1": "Q515" }, "Z32848K3": { "Z1K1": "Z6091", "Z6091K1": "Q38" } } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z844", "Z844K2": { "Z1K1": "Z40", "Z40K1": "Z41" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "\"Roma est urbs Italiae.\"" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 8bzvsrm26aoogdd9t93lxw9racfwtfk Z32850 0 79284 261398 2026-03-28T06:53:26Z ChaoticVermillion 31127 created test 261398 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32850" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32848", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32848", "Z32848K1": { "Z1K1": "Z6091", "Z6091K1": "Q16869" }, "Z32848K2": { "Z1K1": "Z6091", "Z6091K1": "Q515" }, "Z32848K3": { "Z1K1": "Z6091", "Z6091K1": "Q41" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1403", "Z11K2": "Constantinopolis est urbs Graeciae." } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "\"Constantinopolis est urbs Graeciae.\"" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } it3log7x2fgyy6yq7jxunsi8nsar9uv 261418 261398 2026-03-28T08:17:11Z ChaoticVermillion 31127 added support for in _. 261418 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32850" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32848", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32063", "Z32063K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1403", "Z11K2": "Roma est urbs Graeciae." }, { "Z1K1": "Z11", "Z11K1": "Z1403", "Z11K2": "Roma est urbs in Graeca." } ], "Z32063K2": { "Z1K1": "Z7", "Z7K1": "Z32848", "Z32848K1": { "Z1K1": "Z6091", "Z6091K1": "Q16869" }, "Z32848K2": { "Z1K1": "Z6091", "Z6091K1": "Q515" }, "Z32848K3": { "Z1K1": "Z6091", "Z6091K1": "Q41" } } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1403", "Z11K2": "Constantinopolis est urbs Graeciae." } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "\"Constantinopolis est urbs Graeciae.\"" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } lhgeiu3qbiiwx48fxqz7p0yo5ii262b 261420 261418 2026-03-28T08:18:04Z ChaoticVermillion 31127 minor edit 261420 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32850" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32848", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32063", "Z32063K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1403", "Z11K2": "Roma est urbs Graeciae." }, { "Z1K1": "Z11", "Z11K1": "Z1403", "Z11K2": "Roma est urbs in Graeca." } ], "Z32063K2": { "Z1K1": "Z7", "Z7K1": "Z32848", "Z32848K1": { "Z1K1": "Z6091", "Z6091K1": "Q16869" }, "Z32848K2": { "Z1K1": "Z6091", "Z6091K1": "Q515" }, "Z32848K3": { "Z1K1": "Z6091", "Z6091K1": "Q41" } } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z844", "Z844K2": { "Z1K1": "Z40", "Z40K1": "Z41" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "\"Constantinopolis est urbs Graeciae.\"" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } o3t3my7cikrr5moxjoch8y7j8lmqdvu 261421 261420 2026-03-28T08:19:08Z ChaoticVermillion 31127 i am not on a roll today 261421 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32850" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32848", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32063", "Z32063K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1403", "Z11K2": "Constantinopolis est urbs Graeciae." }, { "Z1K1": "Z11", "Z11K1": "Z1403", "Z11K2": "Constantinopolis est urbs in Graeca." } ], "Z32063K2": { "Z1K1": "Z7", "Z7K1": "Z32848", "Z32848K1": { "Z1K1": "Z6091", "Z6091K1": "Q16869" }, "Z32848K2": { "Z1K1": "Z6091", "Z6091K1": "Q515" }, "Z32848K3": { "Z1K1": "Z6091", "Z6091K1": "Q41" } } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z844", "Z844K2": { "Z1K1": "Z40", "Z40K1": "Z41" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "\"Constantinopolis est urbs Graeciae.\"" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 6du193eq5h9a1xaolj9a3s0nsm6zaxz 261424 261421 2026-03-28T08:31:04Z ChaoticVermillion 31127 seems constantinople is constantinopolis mediaevalis in latin. okay then 261424 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32850" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32848", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32063", "Z32063K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1403", "Z11K2": "Constantinopolis mediaevalis est urbs Graeciae." }, { "Z1K1": "Z11", "Z11K1": "Z1403", "Z11K2": "Constantinopolis mediaevalis est urbs in Graecia." } ], "Z32063K2": { "Z1K1": "Z7", "Z7K1": "Z32848", "Z32848K1": { "Z1K1": "Z6091", "Z6091K1": "Q16869" }, "Z32848K2": { "Z1K1": "Z6091", "Z6091K1": "Q515" }, "Z32848K3": { "Z1K1": "Z6091", "Z6091K1": "Q41" } } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z844", "Z844K2": { "Z1K1": "Z40", "Z40K1": "Z41" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "\"Constantinopolis mediaevalis est urbs Graeciae.\"" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } aprppi5g2ejhdax4hk0eb6iq38vw0vs Z32851 0 79285 261401 2026-03-28T07:01:23Z ChaoticVermillion 31127 created implementation 261401 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32851" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32848", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z26107", "Z26107K1": "Z1403", "Z26107K2": { "Z1K1": "Z7", "Z7K1": "Z32527", "Z32527K1": { "Z1K1": "Z7", "Z7K1": "Z21394", "Z21394K1": [ "Z6", { "Z1K1": "Z7", "Z7K1": "Z32501", "Z32501K1": { "Z1K1": "Z18", "Z18K1": "Z32848K1" }, "Z32501K2": "Z1403", "Z32501K3": [ "Z6091", { "Z1K1": "Z6091", "Z6091K1": "Q110786" }, { "Z1K1": "Z6091", "Z6091K1": "Q131105" } ] }, " est ", { "Z1K1": "Z7", "Z7K1": "Z32501", "Z32501K1": { "Z1K1": "Z18", "Z18K1": "Z32848K2" }, "Z32501K2": "Z1403", "Z32501K3": [ "Z6091", { "Z1K1": "Z6091", "Z6091K1": "Q110786" }, { "Z1K1": "Z6091", "Z6091K1": "Q131105" } ] }, " ", { "Z1K1": "Z7", "Z7K1": "Z850", "Z850K1": { "Z1K1": "Z7", "Z7K1": "Z27410", "Z27410K1": { "Z1K1": "Z7", "Z7K1": "Z27327", "Z27327K1": { "Z1K1": "Z18", "Z18K1": "Z32848K3" }, "Z27327K2": { "Z1K1": "Z6092", "Z6092K1": "P9970" }, "Z27327K3": "Z1403" }, "Z27410K2": [ "Z6091", { "Z1K1": "Z6091", "Z6091K1": "Q146786" }, { "Z1K1": "Z6091", "Z6091K1": "Q51929074" }, { "Z1K1": "Z6091", "Z6091K1": "Q192613" }, { "Z1K1": "Z6091", "Z6091K1": "Q682111" }, { "Z1K1": "Z6091", "Z6091K1": "Q1317831" } ] }, "Z850K2": "Z500", "Z850K3": { "Z1K1": "Z7", "Z7K1": "Z10000", "Z10000K1": "in ", "Z10000K2": { "Z1K1": "Z7", "Z7K1": "Z32501", "Z32501K1": { "Z1K1": "Z18", "Z18K1": "Z32848K3" }, "Z32501K2": "Z1403", "Z32501K3": [ "Z6091", { "Z1K1": "Z6091", "Z6091K1": "Q110786" }, { "Z1K1": "Z6091", "Z6091K1": "Q131105" } ] } } }, "." ] } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "State location using entity and class, Latin, comp" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } r12312ihpirxrbkpdy3dfza0q72uabx 261406 261401 2026-03-28T07:06:32Z ChaoticVermillion 31127 the implementation was looking for a verb matching Italia 🤦 261406 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32851" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32848", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z26107", "Z26107K1": "Z1403", "Z26107K2": { "Z1K1": "Z7", "Z7K1": "Z32527", "Z32527K1": { "Z1K1": "Z7", "Z7K1": "Z21394", "Z21394K1": [ "Z6", { "Z1K1": "Z7", "Z7K1": "Z32501", "Z32501K1": { "Z1K1": "Z18", "Z18K1": "Z32848K1" }, "Z32501K2": "Z1403", "Z32501K3": [ "Z6091", { "Z1K1": "Z6091", "Z6091K1": "Q110786" }, { "Z1K1": "Z6091", "Z6091K1": "Q131105" } ] }, " est ", { "Z1K1": "Z7", "Z7K1": "Z32501", "Z32501K1": { "Z1K1": "Z18", "Z18K1": "Z32848K2" }, "Z32501K2": "Z1403", "Z32501K3": [ "Z6091", { "Z1K1": "Z6091", "Z6091K1": "Q110786" }, { "Z1K1": "Z6091", "Z6091K1": "Q131105" } ] }, " ", { "Z1K1": "Z7", "Z7K1": "Z850", "Z850K1": { "Z1K1": "Z7", "Z7K1": "Z27410", "Z27410K1": { "Z1K1": "Z7", "Z7K1": "Z27327", "Z27327K1": { "Z1K1": "Z18", "Z18K1": "Z32848K3" }, "Z27327K2": { "Z1K1": "Z6092", "Z6092K1": "P5137" }, "Z27327K3": "Z1403" }, "Z27410K2": [ "Z6091", { "Z1K1": "Z6091", "Z6091K1": "Q110786" }, { "Z1K1": "Z6091", "Z6091K1": "Q146233" } ] }, "Z850K2": "Z500", "Z850K3": { "Z1K1": "Z7", "Z7K1": "Z10000", "Z10000K1": "in ", "Z10000K2": { "Z1K1": "Z7", "Z7K1": "Z32501", "Z32501K1": { "Z1K1": "Z18", "Z18K1": "Z32848K3" }, "Z32501K2": "Z1403", "Z32501K3": [ "Z6091", { "Z1K1": "Z6091", "Z6091K1": "Q110786" }, { "Z1K1": "Z6091", "Z6091K1": "Q131105" } ] } } }, "." ] } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "State location using entity and class, Latin, comp" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } kxrsh8uopv9s60g44s0uwpmg95v0cxk 261415 261406 2026-03-28T08:11:10Z YoshiRulz 10156 Catch relevant error type 261415 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32851" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32848", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z26107", "Z26107K1": "Z1403", "Z26107K2": { "Z1K1": "Z7", "Z7K1": "Z32527", "Z32527K1": { "Z1K1": "Z7", "Z7K1": "Z21394", "Z21394K1": [ "Z6", { "Z1K1": "Z7", "Z7K1": "Z32501", "Z32501K1": { "Z1K1": "Z18", "Z18K1": "Z32848K1" }, "Z32501K2": "Z1403", "Z32501K3": [ "Z6091", { "Z1K1": "Z6091", "Z6091K1": "Q110786" }, { "Z1K1": "Z6091", "Z6091K1": "Q131105" } ] }, " est ", { "Z1K1": "Z7", "Z7K1": "Z32501", "Z32501K1": { "Z1K1": "Z18", "Z18K1": "Z32848K2" }, "Z32501K2": "Z1403", "Z32501K3": [ "Z6091", { "Z1K1": "Z6091", "Z6091K1": "Q110786" }, { "Z1K1": "Z6091", "Z6091K1": "Q131105" } ] }, " ", { "Z1K1": "Z7", "Z7K1": "Z850", "Z850K1": { "Z1K1": "Z7", "Z7K1": "Z27410", "Z27410K1": { "Z1K1": "Z7", "Z7K1": "Z27327", "Z27327K1": { "Z1K1": "Z18", "Z18K1": "Z32848K3" }, "Z27327K2": { "Z1K1": "Z6092", "Z6092K1": "P5137" }, "Z27327K3": "Z1403" }, "Z27410K2": [ "Z6091", { "Z1K1": "Z6091", "Z6091K1": "Q110786" }, { "Z1K1": "Z6091", "Z6091K1": "Q146233" } ] }, "Z850K2": "Z28248", "Z850K3": { "Z1K1": "Z7", "Z7K1": "Z10000", "Z10000K1": "in ", "Z10000K2": { "Z1K1": "Z7", "Z7K1": "Z32501", "Z32501K1": { "Z1K1": "Z18", "Z18K1": "Z32848K3" }, "Z32501K2": "Z1403", "Z32501K3": [ "Z6091", { "Z1K1": "Z6091", "Z6091K1": "Q110786" }, { "Z1K1": "Z6091", "Z6091K1": "Q131105" } ] } } }, "." ] } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "State location using entity and class, Latin, comp" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } t7mb0m95aqp4l4y099zpv2q7qusvonk Z32852 0 79286 261403 2026-03-28T07:02:51Z EatingCarBatteries 61191 261403 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32852" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32852K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Taxa" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32852" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Rank of taxa as monolingual string" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 962kmgsbfo0lv4pi480ojcmno7gqsw1 261404 261403 2026-03-28T07:03:26Z EatingCarBatteries 61191 261404 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32852" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32852K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Taxa" } ] } } ], "Z8K2": "Z6", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32852" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Rank of taxa as string" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } q0cg4exp319eglg2lp0idhwh3jqku67 261405 261404 2026-03-28T07:04:15Z EatingCarBatteries 61191 261405 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32852" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32852K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Taxa" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z32852K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Language" } ] } } ], "Z8K2": "Z6", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32852" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Rank of taxa as string" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 8djpajh28nkq7onf1q348zska1hmj7n Z32853 0 79287 261407 2026-03-28T07:07:15Z EatingCarBatteries 61191 261407 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32853" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32852", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z26039", "Z26039K1": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z6092", "Z6092K1": "P225" }, "Z21449K2": { "Z1K1": "Z18", "Z18K1": "Z32852K1" } }, "Z26039K2": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z6092", "Z6092K1": "P105" }, "Z21449K2": { "Z1K1": "Z18", "Z18K1": "Z32852K1" } }, "Z26039K3": { "Z1K1": "Z18", "Z18K1": "Z32852K2" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 0rxd7s2w0mu6y3k4lkoadfz2b9m1xrh 261411 261407 2026-03-28T07:36:06Z EatingCarBatteries 61191 261411 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32853" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32852", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z26039", "Z26039K1": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z6092", "Z6092K1": "P225" }, "Z21449K2": { "Z1K1": "Z18", "Z18K1": "Z32852K1" } }, "Z26039K2": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z6092", "Z6092K1": "P105" }, "Z21449K2": { "Z1K1": "Z18", "Z18K1": "Z32852K1" } }, "Z26039K3": { "Z1K1": "Z18", "Z18K1": "Z32852K2" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Rank of taxa as String implementation" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 0ygh55a5hbrfhyuhtousss23r1f56hk Z32854 0 79288 261412 2026-03-28T07:53:57Z ChaoticVermillion 31127 created test 261412 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32854" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32852", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32852", "Z32852K1": { "Z1K1": "Z6091", "Z6091K1": "Q19088" }, "Z32852K2": "Z1002" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z866", "Z866K2": "kingdom" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Eukaryota is a kingdom" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } m3iq2tsi9j0qkdhhnd8iwbx5h2be2v0 261413 261412 2026-03-28T07:55:11Z ChaoticVermillion 31127 i would not pass biology 261413 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32854" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32852", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32852", "Z32852K1": { "Z1K1": "Z6091", "Z6091K1": "Q19088" }, "Z32852K2": "Z1002" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z866", "Z866K2": "domain" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Eukaryota is a domain" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 0sapimcuwsfzd8zknc9s9sn6oty9gy5 261414 261413 2026-03-28T08:00:16Z ChaoticVermillion 31127 changed test 261414 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32854" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32852", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32852", "Z32852K1": { "Z1K1": "Z6091", "Z6091K1": "Q19088" }, "Z32852K2": "Z1002" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z866", "Z866K2": "Eukaryota is a domain." } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Eukaryota is a domain" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 970tffeud0jvu44qchmbn8x9avjfk8a Z32855 0 79289 261427 2026-03-28T08:39:48Z Ainali 17 261427 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32855" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32855K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "entity" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "entitet" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32855K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "class" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "typ" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32855K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "location" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "plats" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z32855" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "Ange plats med entitet och typ, svenska" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "State location using entity and class, Swedish" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } dxukw8u36qvjjqpie89iy6bqj0mcm9c 261431 261427 2026-03-28T09:43:43Z Ainali 17 Added Z32858 to the approved list of implementations 261431 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32855" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32855K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "entity" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "entitet" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32855K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "class" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "typ" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32855K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "location" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "plats" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14", "Z32858" ], "Z8K5": "Z32855" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "Ange plats med entitet och typ, svenska" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "State location using entity and class, Swedish" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 174ovuiwlqxmacrpyn1ylaj03fupf8i 261432 261431 2026-03-28T09:43:47Z Ainali 17 Added Z32856 och Z32857 to the approved list of test cases 261432 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32855" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32855K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "entity" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "entitet" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32855K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "class" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "typ" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32855K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "location" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "plats" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z32856", "Z32857" ], "Z8K4": [ "Z14", "Z32858" ], "Z8K5": "Z32855" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "Ange plats med entitet och typ, svenska" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "State location using entity and class, Swedish" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } q1stzlm7mlzbwacm2buoj8gyzjbi03y Z32856 0 79290 261428 2026-03-28T08:42:07Z Ainali 17 261428 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32856" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32855", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32855", "Z32855K1": { "Z1K1": "Z6091", "Z6091K1": "Q1754" }, "Z32855K2": { "Z1K1": "Z6091", "Z6091K1": "Q515" }, "Z32855K3": { "Z1K1": "Z6091", "Z6091K1": "Q34" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "Stockholm är en stad i Sverige." } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "\"Stockholm är en stad i Sverige.\" [sv]" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 4x4f2dfu3s78hchej43rf7m907zpzcz Z32857 0 79291 261429 2026-03-28T09:28:28Z Ainali 17 261429 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32857" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32855", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32855", "Z32855K1": { "Z1K1": "Z6091", "Z6091K1": "Q34" }, "Z32855K2": { "Z1K1": "Z6091", "Z6091K1": "Q6256" }, "Z32855K3": { "Z1K1": "Z6091", "Z6091K1": "Q46" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "Sverige är ett land i Europa." } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "\"Sverige är ett land i Europa.\" [sv]" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 4g7eosi4diu2fz5r8c3is2c3lpoav8s Z32858 0 79292 261430 2026-03-28T09:43:01Z Ainali 17 261430 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32858" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32855", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z26107", "Z26107K1": "Z1592", "Z26107K2": { "Z1K1": "Z7", "Z7K1": "Z22511", "Z22511K1": { "Z1K1": "Z7", "Z7K1": "Z12899", "Z12899K1": [ "Z6", { "Z1K1": "Z7", "Z7K1": "Z23468", "Z23468K1": { "Z1K1": "Z7", "Z7K1": "Z6821", "Z6821K1": { "Z1K1": "Z18", "Z18K1": "Z32855K1" } }, "Z23468K2": "Z1592" }, "är", { "Z1K1": "Z7", "Z7K1": "Z30349", "Z30349K1": { "Z1K1": "Z7", "Z7K1": "Z19285", "Z19285K1": { "Z1K1": "Z7", "Z7K1": "Z22696", "Z22696K1": { "Z1K1": "Z18", "Z18K1": "Z32855K2" }, "Z22696K2": "Z1592" } } }, { "Z1K1": "Z7", "Z7K1": "Z23468", "Z23468K1": { "Z1K1": "Z7", "Z7K1": "Z6821", "Z6821K1": { "Z1K1": "Z18", "Z18K1": "Z32855K2" } }, "Z23468K2": "Z1592" }, "i", { "Z1K1": "Z7", "Z7K1": "Z23468", "Z23468K1": { "Z1K1": "Z7", "Z7K1": "Z6821", "Z6821K1": { "Z1K1": "Z18", "Z18K1": "Z32855K3" } }, "Z23468K2": "Z1592" } ], "Z12899K2": " " } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "ange plats med entitet och typ, sv, komposition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } areo3bcs4z90b0oidzfqntwsr79nl5d 261493 261430 2026-03-28T11:57:18Z Ainali 17 261493 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32858" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32855", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z26107", "Z26107K1": "Z1592", "Z26107K2": { "Z1K1": "Z7", "Z7K1": "Z22511", "Z22511K1": { "Z1K1": "Z7", "Z7K1": "Z12899", "Z12899K1": [ "Z6", { "Z1K1": "Z7", "Z7K1": "Z23468", "Z23468K1": { "Z1K1": "Z7", "Z7K1": "Z6821", "Z6821K1": { "Z1K1": "Z18", "Z18K1": "Z32855K1" } }, "Z23468K2": "Z1592" }, "är", { "Z1K1": "Z7", "Z7K1": "Z26791", "Z26791K1": { "Z1K1": "Z7", "Z7K1": "Z22696", "Z22696K1": { "Z1K1": "Z18", "Z18K1": "Z32855K2" }, "Z22696K2": "Z1592" } }, { "Z1K1": "Z7", "Z7K1": "Z23468", "Z23468K1": { "Z1K1": "Z7", "Z7K1": "Z6821", "Z6821K1": { "Z1K1": "Z18", "Z18K1": "Z32855K2" } }, "Z23468K2": "Z1592" }, "i", { "Z1K1": "Z7", "Z7K1": "Z23468", "Z23468K1": { "Z1K1": "Z7", "Z7K1": "Z6821", "Z6821K1": { "Z1K1": "Z18", "Z18K1": "Z32855K3" } }, "Z23468K2": "Z1592" } ], "Z12899K2": " " } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "ange plats med entitet och typ, sv, komposition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } nbhqtv0x5gh8edhev7e3k8uw8ll7x19 261494 261493 2026-03-28T11:57:49Z Ainali 17 261494 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32858" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32855", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z26107", "Z26107K1": "Z1592", "Z26107K2": { "Z1K1": "Z7", "Z7K1": "Z22511", "Z22511K1": { "Z1K1": "Z7", "Z7K1": "Z12899", "Z12899K1": [ "Z6", { "Z1K1": "Z7", "Z7K1": "Z23468", "Z23468K1": { "Z1K1": "Z7", "Z7K1": "Z6821", "Z6821K1": { "Z1K1": "Z18", "Z18K1": "Z32855K1" } }, "Z23468K2": "Z1592" }, "är", { "Z1K1": "Z7", "Z7K1": "Z30349", "Z30349K1": { "Z1K1": "Z7", "Z7K1": "Z19285", "Z19285K1": { "Z1K1": "Z7", "Z7K1": "Z22696", "Z22696K1": { "Z1K1": "Z18", "Z18K1": "Z32855K2" }, "Z22696K2": "Z1592" } } }, { "Z1K1": "Z7", "Z7K1": "Z23468", "Z23468K1": { "Z1K1": "Z7", "Z7K1": "Z6821", "Z6821K1": { "Z1K1": "Z18", "Z18K1": "Z32855K2" } }, "Z23468K2": "Z1592" }, "i", { "Z1K1": "Z7", "Z7K1": "Z23468", "Z23468K1": { "Z1K1": "Z7", "Z7K1": "Z6821", "Z6821K1": { "Z1K1": "Z18", "Z18K1": "Z32855K3" } }, "Z23468K2": "Z1592" } ], "Z12899K2": " " } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "ange plats med entitet och typ, sv, komposition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } areo3bcs4z90b0oidzfqntwsr79nl5d Z32859 0 79293 261448 2026-03-28T10:34:56Z ChaoticVermillion 31127 created new implementation 261448 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32859" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z23753", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z866", "Z866K1": { "Z1K1": "Z7", "Z7K1": "Z23468", "Z23468K1": { "Z1K1": "Z7", "Z7K1": "Z6821", "Z6821K1": { "Z1K1": "Z18", "Z18K1": "Z23753K1" } }, "Z23468K2": { "Z1K1": "Z18", "Z18K1": "Z23753K2" } }, "Z866K2": "" }, "Z802K2": { "Z1K1": "Z7", "Z7K1": "Z23468", "Z23468K1": { "Z1K1": "Z7", "Z7K1": "Z6821", "Z6821K1": { "Z1K1": "Z18", "Z18K1": "Z23753K1" } }, "Z23468K2": "Z1360" }, "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z23468", "Z23468K1": { "Z1K1": "Z7", "Z7K1": "Z6821", "Z6821K1": { "Z1K1": "Z18", "Z18K1": "Z23753K1" } }, "Z23468K2": { "Z1K1": "Z18", "Z18K1": "Z23753K2" } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "label of QID in language, fallback to mul, comp." } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } bbah0ngjjk12hnpba4kdkcnagiauvmf Z32860 0 79294 261449 2026-03-28T10:38:49Z ChaoticVermillion 31127 added test 261449 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32860" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z23753", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z23753", "Z23753K1": { "Z1K1": "Z6091", "Z6091K1": "Q1035755" }, "Z23753K2": "Z1002" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z866", "Z866K2": "NGC 214" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "en-label of Q1035755 falls back to NGC 214" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 3unmlwhjsrfgajqp4p0xqcaujr0wuof Wikifunctions:Catalogue/Natural language operations/Hebrew 4 79295 261467 2026-03-28T11:02:32Z EJPPhilippines 9359 Created page with "* {{Z+|Z32160}} [[Category:Lists of functions]] [[Category:Hebrew]]" 261467 wikitext text/x-wiki * {{Z+|Z32160}} [[Category:Lists of functions]] [[Category:Hebrew]] c5fm9a7jqv3rxk4ain2ejoz9iwd504l Wikifunctions:Catalogue/Natural language operations/Portuguese 4 79296 261472 2026-03-28T11:06:42Z EJPPhilippines 9359 Created page with "* {{Z+|Z32225}} [[Category:Lists of functions]] [[Category:Portuguese]]" 261472 wikitext text/x-wiki * {{Z+|Z32225}} [[Category:Lists of functions]] [[Category:Portuguese]] qpcbzxem6wj027ar4gblw9spr2p9kib Talk:Z26092 1 79297 261474 2026-03-28T11:07:33Z Redmin 52094 /* First letters should not always be capitalised */ new section 261474 wikitext text/x-wiki == First letters should not always be capitalised == Consider [[w:abstract:Q966109|Q966109]] for example, the name of the software is entirely in lowercase so the generated sentence having the first letter of that name capitalised is wrong. Perhaps there should be a new condition to check whether the entity is a software, an organisation and the like to decide whether the first letter should be capitalised? [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 11:07, 28 March 2026 (UTC) hj0yqq4q4ufeeu2twmxblhry4fja9cm