Wikifunctions wikifunctionswiki https://www.wikifunctions.org/wiki/Wikifunctions:Main_Page MediaWiki 1.47.0-wmf.1 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 Wikifunctions:Suggest a function 4 1176 272425 272409 2026-05-05T12:55:58Z YoshiRulz 10156 Rewrite lede 272425 wikitext text/x-wiki {{Shortcut|[[WF:SAF]]|[[WF:RF]]}} Do you have an idea for a new function? Suggest it here! It may help to refer to [[Wikifunctions:Glossary|our glossary]]. There is currently '''a limited set of types to choose from''' for functions' inputs and outputs. These include text, numbers, lists, and of course Wikidata entities. For the full list, see [[WF:Type]]. * If you know the exact input and output types in advance, '''you can [https://www.wikifunctions.org/wiki/Special:CreateZObject?zid=Z8 create the function] right away''' instead of commenting here.<!-- --> Then create test cases to specify the expected behaviour for the function. (This means that even if you can't make an implementation, someone else might be able to.)<!-- --><br>Once created, consider adding new Functions to [[Wikifunctions:Catalogue|the catalogue]]. * If a function requires a new type, consider [[WF:TP|proposing that type]] before adding suggestions here. [[Category:Maintenance]] == Requests from Abstract Wikipedia editors == {{main|abstract:Project:Suggested functions}} === Infobox === I'm thinking we can adapt [[w:module:infobox]] to create infobox HTML in abstract articles. Maybe it can even use info from Wikidata to populate it, like it already does on some wikis. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 06:34, 28 April 2026 (UTC) == Proposed functions requiring only available types == === String === ==== String character discard functions ==== ==== String character replacement functions ==== Add the word 'the' to the start of a function. e.g United Kingdom - the United Kingdom. [[User:FantasticWikiUser|FantasticWikiUser]] ([[User talk:FantasticWikiUser|talk]]) 11:27, 25 March 2026 (UTC) :Yes… simple enough to do but not entirely clear when it is required. We’ve been [https://t.me/Wikifunctions/29989 discussing it on Telegram]. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 12:10, 25 March 2026 (UTC) ::This was an issue I found on [[abstract:Q21]] when I couldn't add it there. [[User:FantasticWikiUser|FantasticWikiUser]] ([[User talk:FantasticWikiUser|talk]]) 12:16, 25 March 2026 (UTC) :I worked on {{z|Z33138}} today. I'm not sure it covers all corner cases, feel free to try it out and add more tests :) [[User:So9q|So9q]] ([[User talk:So9q|talk]]) 20:32, 5 April 2026 (UTC) ==== String search functions ==== ==== String escaping and unescaping functions ==== ==== String encoding and decoding functions ==== * Unicode normalising functions (there are several types of normalisation) * [https://html.spec.whatwg.org/#named-character-references HTML named character encode] * [[wikidata:Q47466379|Punycode encode]] - {{z+|Z10178}} (part only, not whole url); see also {{z+|Z10185}} * [[:en:Unified_English_Braille|Unified English Braille encode]] (discarding invalid characters?) *[https://braille-autoriteit.org/standaarden/achtpuntsbraille/ Dutch eight-dot Braille] encode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 21:38, 17 January 2026 (UTC) *[https://braille-autoriteit.org/standaarden/achtpuntsbraille/ Dutch eight-dot Braille] decode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 21:38, 17 January 2026 (UTC) *[https://braille-autoriteit.org/versie-2019-van-zespunts-standaard/ Dutch six-dot Braille] encode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 21:38, 17 January 2026 (UTC) *[https://braille-autoriteit.org/versie-2019-van-zespunts-standaard/ Dutch six-dot Braille] decode [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 21:38, 17 January 2026 (UTC) *[[google:ipa+braille&oq=IPA+Braille&gs_lcrp=EgZjaHJvbWUqDAgAECMYJxiABBiKBTIMCAAQIxgnGIAEGIoFMg0IARAAGIYDGIAEGIoFMg0IAhAAGIYDGIAEGIoFMgoIAxAAGIAEGKIEMgoIBBAAGIAEGKIEMgYIBRBFGDwyBggGEEUYPTIGCAcQRRg90gEHMjMyajBqN6gCALACAA&sourceid=chrome&ie=UTF-8|IPA Braille]] encode (IPA --> IPA Braille) [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 11:42, 18 January 2026 (UTC) *[[google:ipa+braille&oq=IPA+Braille&gs_lcrp=EgZjaHJvbWUqDAgAECMYJxiABBiKBTIMCAAQIxgnGIAEGIoFMg0IARAAGIYDGIAEGIoFMg0IAhAAGIYDGIAEGIoFMgoIAxAAGIAEGKIEMgoIBBAAGIAEGKIEMgYIBRBFGDwyBggGEEUYPTIGCAcQRRg90gEHMjMyajBqN6gCALACAA&sourceid=chrome&ie=UTF-8|IPA Braille]] decode (IPA Braille --> IPA) [[User:JhowieNitnek|JhowieNitnek]] ([[User talk:JhowieNitnek|talk]]) 11:42, 18 January 2026 (UTC) ==== String presentation functions ==== * add [[:en:Quotation_mark|locale-specific quotation marks]] to string ** Shouldn't the output depend on the locale? See [[mw:Extension:Scribunto/Lua_reference_manual#mw.language:formatNum|mw.language:formatNum]]. —[[User:Dexxor|Dexxor]] ([[User talk:Dexxor|talk]]) 17:15, 4 September 2023 (UTC) ==== String colour notation functions ==== * Hue of color (since we already have [[Z13017]], [[Z18263]] and [[Z18268]]) ==== String notation validation checks ==== * check if string is an [[:en:International_Chemical_Identifier]] ** {{Partly done}} see {{z+|Z21539}}. Supports the verification of the chemical formula and the stereochemical layer. There are 13 testcaes that I've written, all of which are passed by my JavaScript implementation. Note that a python implementation is not possible as the regex module is not available in Wikifunctions. [[User:MolecularPilot|MolecularPilot]] ([[User talk:MolecularPilot|talk]]) 03:09, 11 January 2025 (UTC) ** To do: *** Needs to verify the hydrogen and connection sections of the main layer *** Support the charge layer *** Support the isotopic layer **[[User:MolecularPilot|MolecularPilot]] ([[User talk:MolecularPilot|talk]]) 03:09, 11 January 2025 (UTC) ***{{ping|MolecularPilot}} A python impl. is infact possible. I created a basic direct translation at {{z+|Z22823}}. Some tests are failing as the regex needs a bit of sorting out, out of scope for me, but you can give it a try! Keep in mind that you need to escape any \ with a \\ just before saving per [[Wikifunctions:Python_implementations#Known_limitations_as_of_October_2024]]. <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> 06:14, 26 February 2025 (UTC) * check if string is a [[:en:SMILES_arbitrary_target_specification|SMILES arbitrary target specification (SMARTS) notation]] * check if string is an [[:en:ABC_notation|ABC notation]] * check if string is a [[:en:LilyPond|LilyPond notation]] * check if string is a [[:en:UIC_classification_of_locomotive_axle_arrangements|UIC classification of locomotive axle arrangements notation]] * check if a string is a valid [[:en:Digital_object_identifier|DOI]] ** Something about implementation difficulties: https://stackoverflow.com/questions/27910/finding-a-doi-in-a-document-or-page [[User:Alexander-Mart-Earth|Alexander-Mart-Earth]] ([[User talk:Alexander-Mart-Earth|talk]]) 14:28, 21 December 2023 (UTC) ==== String validation checks ==== * check if string is a valid ISO 3166 country code * check if string is a valid [[:en:ISO_8601#EDTF|EDTF]] date/time ====String analysis functions==== ==== Monolingual text ==== ==== String Wikitext operations ==== ... === Natural number === === Integer=== === Byte === See [[Wikifunctions:Catalogue/Boolean operations#Byte functions|existing Byte functions]] in catalogue. * next byte without overflow: byte → byte * previous byte without overflow: byte → byte * next byte by Gray code: byte → byte * previous byte by Gray code: byte → byte * all bits set: byte → boolean * no bits set: byte → boolean * add bytes without overflow: byte, byte → byte * subtract bytes without overflow: byte, byte → byte * multiply bytes without overflow: byte, byte → byte * add bytes with overflow: byte, byte → byte * subtract bytes with overflow: byte, byte → byte * multiply bytes with overflow: byte, byte → byte * modulo bytes: byte, byte → byte * byte division: byte, byte → byte * right shift: byte → byte * left shift: byte → byte * right shift by n: byte, natural number → byte * left shift by n: byte, natural number → byte * right shift as ring: byte → byte * left shift as ring: byte → byte * right shift by n as ring: byte, natural number → byte * left shift by n as ring: byte, natural number → byte === Unicode code point === See [[Wikifunctions:Catalogue/Character operations#Unicode code points|existing code point functions in catalogue]]. * Codepoint to list of bytes for UTF-8 * Codepoint to list of bytes for UTF-16 * Codepoint to list of bytes for UTF-32 ===Object=== === List === ==== Basic list/iterable functions ==== ==== Complex list functions ==== ==== CSV list operations ==== === Functions with functions as arguments === * test whether certain functions have specific properties of [[:w:Homogeneous_relation|homogeneous relations]] for particular lists/sets === Gregorian calendar date === See [[Wikifunctions:Catalogue/Date operations#Gregorian calendar dates|catalogue of calendar date functions]] for existing functions. * Create a reading function for Dagbani that handles all the possible formats (both the English-linke and the traditional ones, both the Gregorian and the Hijra calendars). [https://docs.google.com/document/d/1u7-ZeY7NHt75JICUPAYky3-7KgkvauD_W3fBjmvpFO0/edit?tab=t.0#heading=h.gf6hp9o3gi0j] [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 15:43, 31 May 2025 (UTC) * same day of the year: date, date → boolean * same day of the week: date, date → boolean * within a year: date, date → boolean * within a week: date, date → boolean * within n days: date, date → boolean * months between: date, date → natural number * weeks between: date, date → natural number * n days later: date, natural number → date * n days earlier: date, natural number → date * n weeks earlier: date, natural number → date * n months later: date, natural number → date * n months earlier: date, natural number → date * n years later: date, natural number → date * n years earlier: date, natural number → date * Julian day number to date: integer → date * how many leap days passed between two dates: date, date → natural number * how many weekdays between two dates: date, date, day of the week → natural number * within JavaScript's date implementation: date → boolean * next time a day of the month is on a specific weekday: date, natural number, day of the week → date * next Friday the 13th: date → date * nth weekday of the month: date, day of the week, natural number → date * nth working days after: date, list of wikidata item references (list of holidays), wikidata item reference (place) → date === Gregorian year === See [[Wikifunctions:Catalogue/Date operations#Gregorian year|catalogue of year functions]] for existing functions. == Morphological functions == {{main|WF:HL}} == Proposed functions requiring future types == '''Note these functions cannot be implemented properly until the needed types are requested and approved.''' If one wishes to nevertheless attempt to define and implement them, * the functions and implementations should indicate prominently in their labels that their input/output types must be adjusted once support for the appropriate replacement types become available; ''and'' * the functions should ''not'' be used in the implementations of any other functions, as the later adjustment of input/output types to appropriate replacements will break those implementations. === String manipulation functions === === String analysis functions === * count distance between two letters in given alphabet (default to 26-charcater western alphabet. case insensitive. e.g. "a" & "A" ⇒ 0; "K" & "N" ⇒ 3) === String encoding and decoding functions === (would be better with types representing a stream of bytes) * [[wikidata:Q113486941|BASE45 encode]] * [[wikidata:Q113486941|BASE45 decode]] * Hexadecimal UTF-8 encode ("ABC ₤" ⇒ "41 42 43 20 E2 82 A4") * Hexadecimal UTF-8 decode ("41 42 43 20 E2 82 A4" ⇒ "ABC ₤") * Decimal UTF-8 encode ("ABC ₤" ⇒ "65 66 67 32 226 130 164") * Decimal UTF-8 decode ("65 66 67 32 226 130 164" ⇒ "ABC ₤") * Octal UTF-8 encode ("ABC ₤" ⇒ "101 102 103 40 342 202 244") * Octal UTF-8 decode ("101 102 103 40 342 202 244" ⇒ "ABC ₤") * Binary UTF-8 encode ("ABC ₤" ⇒ "01000001 01000010 01000011 00100000 11100010 10000010 10100100") * Binary UTF-8 decode ("01000001 01000010 01000011 00100000 11100010 10000010 10100100" ⇒ "ABC ₤") * Unicode code point encode ("ABC ₤" ⇒ "41 42 43 20 20A4") - {{z+|Z10785}} * Unicode code point decode ("41 42 43 20 20A4" ⇒ "ABC ₤") * Create regular expression object/string (i.e: "test" & "i" to /test/i) === Natural language functions === * Choose singular or plural based on number (e.g. singularOrPlural("person",6") -> "people") ** Note that there are also dual and other [[:w:grammatical number|grammatical number]]s in other languages. [[User:魔琴|魔琴]] ([[User talk:魔琴|talk]]) 18:54, 26 October 2023 (UTC) ** relevant interwiki link: [[d:WD:property proposal/plural forms]] [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 04:15, 9 February 2024 (UTC) **:Was rejected. **:The similar proposal {{P|13986}} was accepted, but per the comments on your proposal, just having that set (and [[Z30455|mapping it to one of our enums]]) isn't sufficient since a language might have exceptions to its conjugation rules, or handle rational/real numbers in different ways. **:Being able to make use of CLDR data might still be desirable to avoid hardcoding rules and exceptions into Functions. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 02:16, 18 December 2025 (UTC) ** This is duplicated with a suggestion above. There's some work done already: [[Z15977]]. We also have lightweight enums like {{Z|28215}} now. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 21:11, 30 November 2025 (UTC) === Cryptographic functions === (would be better with types representing a stream of bytes) * {{todo}} [[wikidata:Q47477417|MD2]] - {{z+|Z10135}} * {{todo}} [[wikidata:Q47462255|MD4]] - {{z+|Z10136}} * {{todo}} [[wikidata:Q27036232|MD5]] - {{z+|Z10137}} * {{todo}} [[wikidata:Q47208127|RIPEMD-128]] - {{z+|Z10138}} * {{todo}} [[wikidata:Q47208127|RIPEMD-160]] - {{z+|Z10139}} * {{todo}} [[wikidata:Q47463469|BLAKE2b-160]] - {{z+|Z10140}} * {{todo}} [[wikidata:Q47463469|BLAKE2b-256]] - {{z+|Z10141}} * {{todo}} [[wikidata:Q47463469|BLAKE2b-384]] - {{z+|Z10142}} * {{todo}} [[wikidata:Q47463469|BLAKE2b-512]] - {{z+|Z10143}} * {{todo}} [[wikidata:Q47463469|BLAKE2s-128]] - {{z+|Z10144}} * {{todo}} [[wikidata:Q47463469|BLAKE2s-160]] - {{z+|Z10145}} * {{todo}} [[wikidata:Q47463469|BLAKE2s-224]] - {{z+|Z10146}} * {{todo}} [[wikidata:Q47463469|BLAKE2s-256]] - {{z+|Z10147}} * {{todo}} [[wikidata:Q47465971|SHA-224]] - {{z+|Z10149}} * {{todo}} [[wikidata:Q47465971|HMAC-SHA-256]] * {{todo}} [[wikidata:Q87486893|SHAKE-128]] - {{z+|Z10150}} * {{todo}} [[wikidata:Q87486893|SHAKE-256]] - {{z+|Z10151}} * {{todo}} [[wikidata:Q56099240|ChaCha20]] - {{z+|Z25376}} * {{todo}} [[wikidata:Q56099436|X25519]] - {{z+|Z25393}} * {{todo}} [[wikidata:Q1190947|Keccak-f[1600]]] - {{z+|Z25399}} === Date, time, and calendric functions === See also: * Discussion of types at [[WF:type#Calendar types]] * {{q|139667974}} Lua module ==== Earth focus ==== [[file:Axial and apsidal precession.png|thumb|alt=diagram|orbit of Earth]] ===== Bengali calendar ===== {{z+|Z12926}} ===== Chinese calendar ===== ===== French Republican Calendar ===== decimalises and secularises the Gregorian * day names: {{z+|Z13006}}{{not done}} '''yet''' ===== Gregorian ===== widely used calendar derived from the Julian, basis for [[xkcd:1179|ISO 8601]] * date to ISO week number {{q|2110154}} * string to date * date to ISO 8601 string *: {{done}}, see {{z+|Z21842}}. --[[User:Sbb1413|Sbb1413]] ([[User talk:Sbb1413|talk]]) 18:47, 21 January 2025 (UTC) * date to year (yyyy) * date to month of the year (1-12) * date to month name (January-December) * date to day of the month (1-31) * date to hour of the day (0-23) * date to minutes (0-59) * date to seconds (0-59) Named Day from Date or day of year ; Input type : Date ; Output Type : String. ; The initial use case was automated population of On The Day, based on various collections of Holidays, festival days and observances. ? [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:35, 26 March 2025 (UTC) : So If you gave it 2025-05-01 It said "All Fools Day" etc.. Possibly an additional input of enumrated type to indicate which data set to pull holidays, fesitvals and observances from. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:35, 26 March 2025 (UTC) Diary/calander Header function - Using the above and other date functions, generates a data set from a given date. Hence if you give it 2003-05-01 you get back a JOSN set contianing the {Day of week:String, Day in the Month, Observances} etc. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:35, 26 March 2025 (UTC) ===== Holocene calendar ===== * [[w:en:Holocene calendar#Conversion]] *: {{done}}, see {{z+|Z21913}}. --[[User:Sbb1413|Sbb1413]] ([[User talk:Sbb1413|talk]]) 13:30, 25 January 2025 (UTC) ===== Indian national calendar ===== ===== Islamic ===== a Lunar calendar, also called Hijri ===== Julian ===== mostly used by astronomers, some historians, and some Orthodox Christian denominations ===== Mesoamerican calendars ===== including civil and clerical forms ===== Persian ===== also called Jalali ===== Thai calendar ===== ===== Hebrew calendar ===== ==== Mars focus ==== [[file:Lowell - Mars (1894) - Diagram of the Orbits of Mars and the Earth.jpg|thumb|alt=diagram|orbit of Mars]] ===== Asgardian calendar ===== Proposed time-keeping system for Mars; base on the [https://asgardia.space/en/calendar online converter]; see [[w:Asgardia|Asgardia]] for context ===== Darian calendar ===== Proposed time-keeping system for Mars, requires Julian Date/Time to calculate and a month enumeration: [[WF:type proposals#Something to think about]] ===== Lukashian calendars ===== Proposed simple perpetual calendar system designed to be extensible to other reference frames (for example a Mars-centric one). Eschews leap-units. * [https://lukashian.org/download Java] reference implementation * [https://github.com/The-Lukashian-Calendar/lukashian GitHub] === Basic numerical functions === * round up ("1.289" & "2" ⇒ "1.29"; "5678" & "2" ⇒ "5700") *: So if the number is floating point, round to n decimal places, and if not, round to n significant figures. Is that right? [[User:BrightSunMan|BrightSunMan]] ([[User talk:BrightSunMan|talk]]) 19:36, 24 December 2023 (UTC) *: {{done}} {{Z|20053}}/{{Z|21043}} and {{Z|27705}}/{{Z|21047}} * round down ** {{done}} {{Z|20032}}/{{Z|20841}} * return integer value (5678.678 ⇒ 5678) ** {{done}} {{Z|19841}}/{{Z|26315}} * {{z+|Z13587}} (23 ⇒ "twenty-three") * Convert money from US$ to anything else ** requires source of conversion rates, which is a hole in function-likeness * Arabic numeral to Etruscan numeral * Etruscan numeral to Arabic numeral === Data serialization functions === * parse a string as [[:en:JSON|JSON]] * extract string from JSON object based on [[:d:Q121208951|JSONPath]] (<code>{"name":"Alice"}</code>, "$.name" ⇒ "Alice") *:Why not first convert a JSON string to an object, and then have a function that extracts fields based on JSONPath? Doing Stringly-typed things like this proposal as defined isn't a good idea. [[User:0xDeadbeef|0xDeadbeef]] ([[User talk:0xDeadbeef|talk]]) 16:16, 5 August 2023 (UTC) *::This seems to be a good idea, thanks! I moved and splitted the proposal accordingly. --[[User:1-Byte|1-Byte]] ([[User talk:1-Byte|talk]]) 09:51, 6 August 2023 (UTC) *:: is it okay to go ahead to create this 'extract string from JSON object based on JSONPath' as a function ? [[User:Dolphyb|Dolphyb]] ([[User talk:Dolphyb|talk]]) 16:14, 15 February 2024 (UTC) === Basic list/iterable functions requiring numeric types === * [[w:en:Lehmer random number generator#Sample C99 code]] * Sum the elements of a numeric list - {{z+|Z14038}} * Product of the elements of a numeric list ** {{done}} {{Z|23909}}/{{Z|13558}} * {{z+|Z12676}} * Slice of list elements: for the supplied list, return a list of elements that are at indexes between a supplied range n:m ** Zero indexing is used (first element is index 0)? ** n and m are are included in the range? ** What happens if n and/or m are invalid indexes? ** {{done}} {{Z+|Z26556}} * Remove slice of elements from list: return the supplied list with elements between a supplied range of indexes removed ** Zero indexing is used (first element is index 0)? ** n and m are are included in the range? ** What happens if n and/or m are invalid indexes? * Every nth element of list: returns every nth element of the supplied list ** {{done}} {{Z+|Z28735}} * Remove every nth element of list: removes every nth element of the supplied list - * sample n objects from list (return up to n [[Wikifunctions:Determinism|random]] objects from the list) * Jaccard similarity coefficient (see https://en.wikipedia.org/wiki/Jaccard_index) * Weighted average. Supply a list of values, and a second list of the same length of their weights. Returns a weighted average ** Example Input: <code>values = [10, 20, 30]</code>, <code>weights = [1, 2, 3]</code> ** Output: <code>23.33</code> ** {{done}} {{Z+|Z28066}} === Geodetics functions === [[w:en:planetary coordinate system]], [[w:en:well-known text representation of coordinate reference systems]] ==== Earth ==== * convert coordinates outside of the ranges (-180, 180) for longitude and (-90, 90) for latitude to a canonical form * [https://plus.codes Plus Codes] to/from geocoordinates ** functions should match the semantics of the [https://github.com/google/open-location-code/blob/main/Documentation/Specification/specification.md#api-requirements expected API]: <code>is valid Plus Code?</code>, <code>is shortened Plus Code?</code>, <code>is full Plus Code?</code>, {{z+|Z25963}}, <code>co-ordinates from Plus Code</code> ([https://github.com/google/open-location-code/blob/main/Documentation/Specification/specification.md#decoding SW corner]), <code>shorten Plus Code</code>, <code>recover nearest Plus Code</code> ** implementations for JS and Python are provided, Apache 2.0 licenced, not sure how self-contained they are ** most of the functions could also be implemented by composition ** sample data is provided for testing (it's ~500 cases for each of encode/decode and ~50 cases for each of the others, but they're grouped nicely so maybe take 1 from each) ==== Mars ==== [[w:en:areography#Cartography and geodesy]] * convert coordinates outside of the ranges [0, 360) for longitude and (-90, 90) for latitude to a canonical form ==== Moon ==== [[w:en:selenography#Lunar cartography and toponymy]] === Unit conversion functions === * {{z+|Z15560}} ::The function has two implementations now. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 20:32, 20 February 2026 (UTC) === Conversion function : 2D Cartesian to 2D Polar === Input : matrix [x,y] Output: matrix [θ,r] Short text : Polar conversion of x,y to a polar space centred at 0,0 in the Cartesian. Constraints: x,y,r are reals (float64), θ lies in the range -π<0<π (Sign determined in relation to standards used in STEM applications. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 14:30, 26 March 2025 (UTC) :The companion could also be provided. As I never did Geodetic functions, I am not sure how Lat, Long to map projection would work , but useful. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 14:30, 26 March 2025 (UTC) :See also [[WF:Type proposals/complex128]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 10:17, 1 December 2025 (UTC) === Trigonometric functions === * {{Z|Z16463}}, {{Z|Z12473}}, *: Input : float64 Angle in radians. *: Output : float64 desired trignometric value [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:40, 26 March 2025 (UTC) * {{Z|Z29125}} *:Inputs: 2D Point (float64s, Reals, or perhaps [[WF:Type_proposals/complex128|a single complex number]]), angle (float64 or Real) *:Output: 2D Point (matching the input type) *:Not necessarily one single function; one can be created for each input type [[User:WrenFalcon|WrenFalcon]] ([[User talk:WrenFalcon|talk]]) 22:05, 31 July 2025 (UTC) ==== Function proposal : Decimalise angle of the form ('1:x' or '1 in x') to % (in 100) or ‰ (in 1000) ==== *Suggested name: gardient_decimal. *Input type: Integer ( The 1 is implied.). Lower Bound +1: Upper Bound: 1000 (for most practical situations?) *Output type: Real/float 64. Proposer: [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:05, 28 March 2025 (UTC) ===Color Functions=== ==== Colorspace Conversion ==== x,y,Y to sRGB (Illuminant D65). Input : 3tuple of float64, Output: 3 tuple of integer, where 0>=r<=255, 0>=g<=255 0>=b<=255. Convert a color specfied as 3 float64 values, from x,y,Y colorspace to sRGB or raise an "Out of Gaumt" exception. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:09, 7 April 2025 (UTC) ==== Spectral Approximate from sRGB or XYZ values. ==== I'd like to see the techniques detailed here: http://scottburns.us/reflectance-curves-from-srgb/ implemented in Wikifunctions as the provided spreadhseet later in the paper doesn't appear to work with Libre Office. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 19:32, 2 June 2025 (UTC) ==== Subtractive color mix (Pigment style) ==== Implement the mixing function from Spectral.js (https://github.com/rvanwijnen/spectral.js/blob/3.0.0/spectral.js )(MIT license), to allow 2 or more sRGB triplets to be mixed like pigment colors. This is different from the subtract colors function implemented previously. === Music Functions === It would be nice to have '''12 equal temperament pitch class''' and '''12 equal temperament pitch''' types, as they would be useful for calculating harmonies and melodies. The pitch classes could be stored as natural numbers from 0 to 11, and represented with symbols C, C♯, D, ..., B. The pitches could be stored as integers with -1 being B3, 0 being C4, 1 being C♯4, etc. Over time, we could expand the pitch class and pitch types to other temperaments and just intonation. As I'm new to Wikifunctions and my coding skills are next to zero, this is just a suggestion to the community. (edited) [[User:CaffeineP|CaffeineP]] ([[User talk:CaffeineP|talk]]) 14:48, 9 April 2025 (UTC) :Yes… There are some notational challenges because of enharmonics as well as naming conventions varying by language/culture, so English A♯ is equivalent to German B and English B♭, for example. Ideally, I would want the (English) pitch class that is five semitones higher than G♭ to be displayed as C♭ rather than B. :Also, given some reference pitch like A4 = 440 Hz, we should be able to return the frequency in hertz of a given pitch and, conversely, the nearest pitch for a given frequency and its offset in cents (or whatever). The computation is a lot simpler than representing the result (or capturing how the result should be represented)! [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 20:08, 9 April 2025 (UTC) :If you use the cardinal values for the pitches from the MIDI standard (or an extension to such, since they're limited to 0..<128) then you could make some of these functions already, no [[WF:Type_proposals|type proposal]] needed. Granted a lot of them would just be addition/subtraction. And if you semi-arbitrarily map A = 0, A# = 1, etc. then you could do all of them. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 10:33, 1 December 2025 (UTC) * '''12-ET Pitch Class of a Pitch''': Return the 12 equal temperament pitch class of a given 12 equal temperament pitch. For example, C4 returns C. * '''12-ET Pitch based on Pitch Class''': Return a 12 equal temperament pitch based on a given 12 equal temperament pitch class and a given integer. For example, C and 4 return C4. * '''Interval between 12-ET Pitch Classes in Semitones''': Get the interval in semitones between two 12 equal temperament pitch classes, always assuming that the first is lower than (or the same as) the second, and the interval is less than an octave. For example, C and B return 11, while B and C return 1. * '''Interval between 12-ET Pitches in Semitones''': Get the interval in semitones between two 12 equal temperament pitches. For example, C4 and B3 return -1, while C3 and B4 return 23. ** {{Z+|Z25219}} * '''Raise 12-ET Pitch Class by Semitones''': Get a new 12 equal temperament pitch class through raising a given pitch class by the provided number of semitones. For example, raising B by 1 semitone returns C. ** {{Z+|Z25407}} * '''Lower 12-ET Pitch Class by Semitones''': Same as above, but lower the pitch class instead of raising it. ** {{Z+|Z25407}} * '''Raise 12-ET Pitch by Semitones''': Get a new 12 equal temperament pitch through raising a given pitch by the provided number of semitones. For example, raising B3 by 1 semitone returns C4. * '''Lower 12-ET Pitch by Semitones''': Same as above, but lower the pitch instead of raising it. * '''Frequency of a 12-ET Pitch''': Return a float64 frequency in Hz based on the provided 12 equal temperament pitch (and possibly a reference pitch with its frequency; if not provided, take default A4 = 440 Hz). ** {{Z+|Z25217}} * '''Approximate 12-ET Pitch Class based on Frequency''': Return a 12 equal temperament pitch class approximately based on the provided frequency in Hz. * '''Approximate 12-ET Pitch based on Frequency''': Return a 12 equal temperament pitch approximately based on the provided frequency in Hz. === SVG Functions === I would be nice to generate SVG (a XML-based vector image format which is basically a long string), it could allow to replace a lot of images on Commons or templates/tools. Here some examples: * create simple forms, * create graphs (line graph/bar graph for population or for production, elections diagrams like [[:File:1900Hawaii.svg]], etc.), * create more complex visualisation like genealogical trees, * create coat of arms (?), * etc. Cheers, [[User:VIGNERON|VIGNERON]] ([[User talk:VIGNERON|talk]]) 10:47, 23 April 2025 (UTC) :@[[User:VIGNERON|VIGNERON]]: Eventually that is something we might support, but there'll be nothing any time soon. It has a number of complex security and scalability concerns, sadly. [[User:Jdforrester (WMF)|Jdforrester (WMF)]] ([[User talk:Jdforrester (WMF)|talk]]) 13:21, 23 April 2025 (UTC) ::{{ping|Jdforrester (WMF)}} thanks. I talked about it for the last Corner but I wanted to leave a record here, if we have time, maybe I'll use that time to write some things to prepare (like listing templates and tools on the Wikimedia projects that generate SVG or visualisations). Cheers, [[User:VIGNERON|VIGNERON]] ([[User talk:VIGNERON|talk]]) 15:28, 23 April 2025 (UTC) :::Of course! I've explicitly added a section on this here: [[Wikifunctions:Embedded function calls#Non-text output]] — hope that helps assure you that we're thinking about it. [[User:Jdforrester (WMF)|Jdforrester (WMF)]] ([[User talk:Jdforrester (WMF)|talk]]) 21:40, 23 April 2025 (UTC) :An intermediate step could be replicating some of the [https://w3.org/TR/SVG11/filters.html functions] contained within {{Q|1518348}} [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 06:22, 5 May 2026 (UTC) === Biology === ==== Taxon functions ==== A taxon type could be useful, as could a taxon rank enum ({{Q|P31}} {{Q|Q427626}}). --[[User:WrenFalcon|WrenFalcon]] ([[User talk:WrenFalcon|talk]]) 16:49, 22 September 2025 (UTC) * Wikidata item representing taxon rank ({{Q|P31}} {{Q|Q427626}}) is at genus level or below ** Should(?) be possible with the current Wikidata functionality, from what I understand. See [[:Wikifunctions:Project chat#Taxon rank function(s)]] for a more detailed explanation. --[[User:WrenFalcon|WrenFalcon]] ([[User talk:WrenFalcon|talk]]) 23:27, 16 May 2025 (UTC) * compare taxon ranks ** Cases: a < b, a == b, a > b, undetermined/incomparable (if a or b are clades, this should be returned/used) * get taxon code of nomenclature ({{Q|P944}}) * is parent taxon of / is child taxon of ** <code>is parent taxon of(Taxon a, Taxon b) => b.parent == a OR is parent taxon of(a, b.parent)</code> * format taxon name (according to relevant rules of nomenclature) ** Include author and year citation? Maybe page too, if present? == Object / type / function functions == == External function lists == * [[WF:importing]] o04w61zs1xxns63e4xi4yl1nhhmo60o Wikifunctions:Project chat 4 1184 272513 272373 2026-05-05T20:53:39Z Hogü-456 617 /* Z6830 for Chinese */ Reply 272513 wikitext text/x-wiki {{shortcut|[[WF:CHAT]]|[[WF:PC]]|[[WF:VP]]}} __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/ }} == "language" argument for certain functions == Hello. I am relatively new to Wikifunctions. Recently, I tried to create functions for Chinese translation of {{Z|Z26570}} and {{Z|Z26095}} (which became [[Z32788]] and [[Z32900]]). During the creation of these functions, I was trying to take {{Z|Z32212}} as reference. And I realized that the defining role sentence function is taking <code>language</code> as an argument (and the test case of the Chinese-language function already contains two varieties of Chinese). This makes it possible to output monolingual text in <code>zh-hant</code>, <code>zh-hans</code>, <code>zh-tw</code>, or any varieties of the language. I think for this reason, it is better to have <code>language</code> as arguments for the implementation of Z26570 and Z26095, and potentially more functions that require {{Z|Z14294}}, since it would output the varieties code instead of just saying <code>zh</code> for <code>zh-hant</code>, <code>zh-hans</code>, <code>zh-tw</code> in the output of type {{Z|Z11}}. I am not sure how the fallback mechanism works if one of the language (varieties) do not have a labels/lexemes, but to me, it is reasonable to have a <code>language</code> argument. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 09:38, 31 March 2026 (UTC) :The functions you mention do have a language argument. For Wikifunctions, the {{Z|Z60}} can be at a higher or lower level; whether a {{Z|Z11}} is for a language or a variant is determined by the function that constructs it. Please see {{Z|Z26565}} for an example and feel free to add test cases in Chinese. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 17:54, 11 April 2026 (UTC) ::Hello @[[User:GrounderUK|GrounderUK]], thanks for the answer. I understand that whether {{Z|Z11}} is for a language or a variant depends on the function. But that is exactly what I am asking for. It is true that [[Z26570]] and [[Z26095]] takes [[Z60]] as argument, but the language-specific functions in {{Z|Z29843}} and {{Z|Z26096}} don't. ::Let me give you an example: INPUT to [[Z26570]]: <code>entity</code>: Tokyo, <code>class</code>: city, <code>location</code>: Japan, <code>language</code>: zh-cn, the config would select [[Z33030]] (created after my previous comment by elseone) as the implementation, and it would RETURN 东京是日本的一个城市。(zh-hans), which is not zh-cn as requested in the INPUT. It would also be using the term not for the variant (when it is different) because it is hardcoded to use the term in zh-hans. However, if we have the implementation like [[Z32790]] (which was created by me but a natural language argument was added by elseone) or [[Z32213]] (that works in the defining role sentence function because of the extra argument), it could cater for different variant. ::If we don't have the language argument in the language-specific function, the desire for article creation on Abstract Wikipedia would be to create a function for every variant. Is it then better to create functions for every variant? [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 18:18, 11 April 2026 (UTC) :::I forgot to mention that there are some hardcoding in {{Z|Z32790}} as well, but I cannot fix it because it is a connected function and I am not a functioneer. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 18:31, 11 April 2026 (UTC) ::::Okay, I think it’s safe to disconnect this one as the function is not yet configured for use on Abstract Wikipedia. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 19:04, 11 April 2026 (UTC) :::Ah, sorry… I misunderstood you. I agree that the called function should be able to accept the original language argument. That is simpler in theory than in practice, because the configured functions all have to have the same argument types, as I understand it. I’m not sure which the best approach is, really, but we probably want to avoid two levels of configuration. That suggests that all language-specific functions would need to accept the additional argument, which is unrewarding work for someone. @[[User:99of9|99of9]], @[[User:Jdforrester (WMF)|Jdforrester (WMF)]], @[[User:DVrandecic (WMF)|DVrandecic (WMF)]] Any thoughts? [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 18:57, 11 April 2026 (UTC) ::::I mean, we would need to modify all the functions in each language, which could take some time. But we are still in an early stage. If we don't fix it now and we want to fix it later, it would be a disaster. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 19:25, 11 April 2026 (UTC) :::::Agreed. And we probably want them converted to HTML too, with separate language spans for text in different languages. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 19:35, 11 April 2026 (UTC) ::::@[[User:GrounderUK|GrounderUK]]: This sounds like a reasonable change to make. Note that (given these Functions are primarily for use on Abstract Wikipedia), altering/replacing them to return Z89/HTML fragments is already a desired but breaking change, so making a second breaking change at the same time is probably easiest for fixing things swiftly. That said, that's of course a decision for the Abstract Wikipedia and Wikifunctions communities, not me! [[User:Jdforrester (WMF)|Jdforrester (WMF)]] ([[User talk:Jdforrester (WMF)|talk]]) 19:43, 12 April 2026 (UTC) ::::@[[User:GrounderUK|GrounderUK]]@[[User:Sun8908|Sun8908]] to make it a non-breaking change, I've created {{Z|Z34039}} which allows a composition {{Z|Z34043}}. This way you can make functions which either need the specified variant or don't! --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 05:52, 24 April 2026 (UTC) :I have now created {{Z|Z33465}}, which is an implementation of [[Z26570]]. Maybe we can migrate to use that function when more (language-specific) functions for it are ready? [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 18:19, 14 April 2026 (UTC) == Help me understand why test passes but running function with same input errors == I've been working on a function that I thought I had working correctly: {{Z+|Z31108}}. It has a test which is passing, but when I enter the same Wikidata item as the test uses (or any other relevant item that it ought to work for), it errors. I can't figure out what's wrong (and the function itself seemed to be working as expected the last time worked on it, a month ago), and I don't know how to interpret the error info. The error output is: <code> Error type: Unspecified error Error data: error information: "cannot read property 'Z6003K4' of undefined" Execution debug logs: Z12696K2 (find this) ==> ZObject<Z1K1:{'Z1K1': 'Z9', 'Z9K1': 'Z6007'},Z6007K1:ZObject<Z1K1:{'Z1K1': 'Z9', 'Z9K1': 'Z6092'},Z6092K1:P3831>,Z6007K2:ZObject<Z1K1:{'Z1K1': 'Z9', 'Z9K1': 'Z6091'},Z6091K1:Q7380503>,Z6007K3:ZReference<Z6021>> </code> -- [[User:Ragesoss|Ragesoss]] ([[User talk:Ragesoss|talk]]) 18:02, 10 April 2026 (UTC) :Hmm… I’ve had a quick look and found a comparable error with {{Z|Z29937}}, which was passing “4 months ago”. The debug comes from {{Z|Z12863}}, after it fails to find a match. This is probably because Z6007K3 is ZReference("Z6021") rather than a Z6020 object, as it appears in the debug logs for your test “28 days ago”: :"Z6007K3":{"Z1K1":{"Z1K1":"Z9","Z9K1":"Z6020"},"Z6020K1":{"Z9K1":"Z6021"}} :This means it’s probably a bug introduced by a recent software change. I’ll take a closer look over the weekend, but the actual error for your test case now is: :Unspecified error (error information: "cannot read property 'Z6003K4' of undefined") :I’m guessing that’s from there being no guard against an empty array in {{Z|Z23681}}, but we’ll see. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 23:22, 10 April 2026 (UTC) :I tracked down the bug to [[Z29869]] and fixed that, but the tests for [[Z31659]] are still failing. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 05:44, 11 April 2026 (UTC) ::Thanks. I’ve re-implemented {{Z|Z23680}} with {{Z|Z33331}} so we at least get a meaningful error in {{Z|Z31108}}. The new implementation explicitly caters for the alternative representation of {{Z|Z6040}} and errors on the empty list it gets from {{Z|Z31659}}. ::I also made a [[Z33332|simple Python implementation]], which seems to work. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 16:29, 11 April 2026 (UTC) == No place to ask to activate a function? == I just discovered the {{Z|Z11390}} function and decided to make an overarching language-selecting function for it. After some fiddling around and studying how {{Z|Z32321}} and its set works, I now have {{Z|Z33439}} which has a config object ({{Z|Z33441}}) that selects between the two preexisting language-specific versions I found (English and Malayalam) and the new one I created for my other native language, {{Z|Z33440}}. Except I can't get these to work, because, from what I understand, only [[Wikifunctions:Functioneers|functioneers]] can activate newly created functions and implementations? So where do I apply for the {{Z|Z33439}} and {{Z|Z33440}} functions to be activated? Perhaps we should have a place to ask for it, a la [[w:WP:NPP]] — call it [[Project:New Functions Patrol|New Functions Patrol]] if you will. —[[User:UndueMarmot|<span style="color:#705ccb;">Undue</span><span style="color:#cfdfa3;background-color:#705ccb;">Marmot</span>]] ([[User talk:UndueMarmot|talk]]) 08:58, 14 April 2026 (UTC) :There's [[Wikifunctions:Community portal]] for this. By the way, {{Z|Z33445}} doesn't work because all the code must be inside the main function in Python code. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 09:19, 14 April 2026 (UTC) ::Huh. How could I have missed that? ::But anyway, I've moved the code in {{Z|Z33445}} into inside the main function block. ::Is there any reason why WF decided not to simply allow anyone to write functions? After all, that's how it works with wikitext templates, and these functions are fundamentally serving the same purposes as templates, just written in a different way. —[[User:UndueMarmot|<span style="color:#705ccb;">Undue</span><span style="color:#cfdfa3;background-color:#705ccb;">Marmot</span>]] <small>([[User talk:UndueMarmot|talk]])</small> 11:25, 14 April 2026 (UTC) :::I've fixed a couple of technical issues, but tests still fail. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 11:28, 14 April 2026 (UTC) ::::The tests pass now after some more changes to the code: [[Special:Diff/265232/cur]]. —[[User:UndueMarmot|<span style="color:#705ccb;">Undue</span><span style="color:#cfdfa3;background-color:#705ccb;">Marmot</span>]] <small>([[User talk:UndueMarmot|talk]])</small> 12:01, 14 April 2026 (UTC) :::::{{D|Connected}} [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 12:02, 14 April 2026 (UTC) :::I think it's a security issue, since Wikifunctions implementations could teoretically be malicious. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 11:29, 14 April 2026 (UTC) ::::This ^^^. We're very lenient, though, once you've created a few working functions you can apply for the right, per [[WF:Functioneer]]. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 12:26, 14 April 2026 (UTC) ::::That explanation [[phab:T343559#11421293|doesn't add up]]. A reason to limit ''connection powers'' to Functioneers might be to prevent vandalism, considering Functions can be used across wikis. But user-provided code is already being executed even without a Functioneer connecting it. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 20:01, 16 April 2026 (UTC) == Actual difference between {{Z|Z26039}} and {{Z|Z26095}} == What is the actual difference between these two functions? I ask, since it seems to me that the current distinction is more or less that the first one doesn't use an indefinite article in English, while the second does. Which is not a good distinction in a project that should be language neutral. This doubt emerged from my use of the first one in [[abstract:Q124441]], which @[[User:Hogü-456|Hogü-456]] made me notice that is probably wrong. My question is: why is it wrong? How could we clarify the difference? [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 19:46, 19 April 2026 (UTC) :I think the difference is if there is an indefinite article like a or an before the subject or not. In German there can be cases where a definite article is necessary before the subject. I looked at the functions and before the object both times an article is mentioned. As it depends on the language and the word what is the correct function to use I hope it will be clarified and it is an example of the necessity to have a human with understanding in a specific language check it. I hope there will be longer functions what generate more content about a specific kind of item. Then it is necessary to write one such function per language and it can be then applied to several items. It still requires checks and so maybe it is better to write down what item category needs what kind of introduction sentence function for what language. [[User:Hogü-456|Hogü-456]] ([[User talk:Hogü-456|talk]]) 20:05, 19 April 2026 (UTC) ::The point of these two functions (and of the entire Abstract Wikipedia project) is that they should be defined in a purely language-independent way, so that the translation to actual language can be done automatically. This is the reason why these functions have been renamed; I think that this attempt was not succesful, since meaning is still unclear. My proposal to clarify them would be to invoke the concept of [[w:specificity (linguistics)|specificity]]: {{Z|Z26039}} should be named "specific subject is instance of (string)", and should be used only when the QID of the subject uniquely identifies a single thing; {{Z|Z26095}} should instead be renamed in "non-specific subject is kind of (Monolingual text)", and should be used when the QID refers to a multitude of real life items, and we are specifying the class that all these item belong to. This clarification would not still be enough, since it doesn't explain how mass nouns are handled (is water a unique thing? Does {{Q|Q7802}} refer to a single piece of bread or to the entirety of bread, like water?). This problem is very tricky, since mass noun are language-specific and blurry the line between these two functions. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 20:58, 19 April 2026 (UTC) :Simply put, one corresponds to P31 and the other to P279. Paris is an {{Q|P31}} a {{Q|Q1549591}} :whereas a {{Q|Q1549591}} is a {{Q|P279}} (alias “kind of”) {{Q|Q515}}. Whether the Wikidata knowledge representation will be sufficient to resolve into fluent natural language representations in all languages is, of course, a crucial question. Where it is not, the Abstract Wikipedia knowledge representation will need to supplement the Wikidata content with additional details about the relation between the participants or the participants themselves, and these details should be language-neutral, to the extent that this is practicable. The item {{Q|Q124441}} has no [[:d:Q124441#P31|P31]] statements; it has only [[:d:Q124441#P279|P279]]s, including one relating it to {{Q|Q212920}}, which suggests {{Z|Z26095}} is the appropriate choice here even if the rendering in some languages is the same. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 22:52, 19 April 2026 (UTC) ::Thanks for explaining it. I think that I'll change the implementation of {{Z|Z26095}}, so that in Italian it produces more or less the same output of {{Z|Z26039}} (both with the definite article). [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 11:24, 20 April 2026 (UTC) == Equivalent of Z6830 for lexemes == Is there an equivalent of {{Z|Z6830}} that enables retrieving all lexemes pointing to a particular lexeme using a specific property? [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 21:06, 20 April 2026 (UTC) :There's {{Z|6831}} but I think that's slightly different again to what you're after. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 12:31, 21 April 2026 (UTC) ::Thanks for sharing that one, I did not know it existed. But you are right, it’s not quite what I am looking for. I want a function that would take a Wikidata property reference (like P5191, which is ‘derived from lexeme’) and a Wikidata lexeme reference, and return a list of lexemes that reference that lexeme using that property. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 13:23, 21 April 2026 (UTC) == Storing huge datasets == It is not a necessity I suppose, but an idea came to me earlier to write a function that would give the corresponding [[en:Shavian alphabet|Shavian alphabet representation]] of an English word written with the Latin alphabet, or perhaps apply that operation to an entire sentence. However, just trying to guess as to what the IPA pronunciation of each word passed into it could be is is both not ideal (pronunciations obviously can and will vary widely between accents) and infeasible <s>(Wikidata lexemes don't really seem to account for pronunciation)</s>. It happens, though, that a comprehensive Shavian dictionary exists named the [https://readlex.pythonanywhere.com/ ''Read Lexicon''], which uses pronunciation and spelling similar to that used by the creator of the alphabet himself. This would be a good dataset to use in performing this translation in the function, but it appears that, all in all, the total size of the dictionary is [https://github.com/Shavian-info/readlex/blob/main/readlex.json ''nearly 26MB''] when formatted as JSON, which would certainly be larger when converted into a typed list. I am wondering if this will ever be feasible or admissible, or if there is really a way around this if importing such a large set of data is deemed impractical. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 22:30, 20 April 2026 (UTC) :{{re|Theki}} "Wikidata lexemes don't really seem to account for pronunciation"" is patently untrue; not only does every Bokmål lexeme form have IPA attached to it (thanks to Jon Harald Søby), but there are lots of languages--including English--that have pronunciation information, whether through IPA or otherwise, indicated on their forms. The big issue of course is that adding this data is not always possible to perform efficiently--for instance, I'd love to have Yiddish pronunciation respellings from Paul Abelson's dictionary on as many English forms as possible, but this dictionary not being previously processed makes this difficult. The data set you have brought up, if a suitable reading of [[:m:Wikilegal/Lexicographical_Data]] allows it, could be added as {{P|7243}} statements on various English forms. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 23:20, 20 April 2026 (UTC) ::Well, sorry... I haven't witnessed these pronunciation statements before, I wasn't aware of their existence until you pointed it out. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 15:02, 21 April 2026 (UTC) :I got 1,900,000 characters into [[Z33875]] before the UI gave up on me. I'm not sure what the limit is. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 15:21, 21 April 2026 (UTC) == Could not serialize input JS object: Number <small><small>[insert tested number here]</small></small> == I'm not one to throw my problems at others, but I have no idea how to fix this. Am implementing {{Z|Z24602}} in JavaScript, which requires returning a typed map. It now works for every type of value except numbers. Tried explicitly converting the numbers to float64, but either way it throws the error above. Would appreciate it if anyone could diagnose or fix the problem, as my knowledge of Wikifunctions is amateur at best. Thank you. [[User:Some helpful person|Some helpful person]] ([[User talk:Some helpful person|talk]]) 00:32, 23 April 2026 (UTC) :The quick answer is that like some list-related functions, code implementations returning typed maps are not possible unless the type of the objects in the map is specified in the function signature (e.g. if it was a map from Strings to Natural numbers only). So unfortunately, I think you've chosen a function that is not really possible at the moment. There are a few ideas of how we might address this, but for the moment, work on something else. Sorry! --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 13:21, 23 April 2026 (UTC) :Maybe explicitly using [[Z13518|natural numbers]] would work? I would try using <code>{ "Z1K1": "Z13518", "Z13518K1": "[number]" }</code> to represent numbers, perhaps, and seeing if that works. Of course, you would also probably have to adapt this for other types that cannot be serialized, and I'm not sure how easy that would be to generalize (assuming [[w:Don't repeat yourself|DRYness]] is desired). &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 14:39, 23 April 2026 (UTC) == Help with creating a function for Abstract Wikipedia == Hello! I was inspired by {{Z|Z26570}} to create {{Z|Z33975}}, however I'm not sure how I add specific language implementations here. Can anybody help me? [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 10:41, 23 April 2026 (UTC) : I think I figured it out, I created a new object with the language config type, added {{Z|Z14310}} to my implementation, and added a new function for English... At least I think that's how it works... [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 13:16, 23 April 2026 (UTC) ::You have the right idea, as far as I know. I went ahead and connected the implementations you created as they appear to work fine for English, and added a test for {{Z|Z33975}} (which passes [[File:Twemoji 1f601.svg|24px]]). I also corrected an error you made on the config object where you appear to have accidentally connected English to {{Z|Z33975}} instead of {{Z|Z33977}}. Thank you for contributing! &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 13:45, 23 April 2026 (UTC) ::: {{re|Theki}} Thank you so much for you help! Could you please kindly also connect the implementations for {{Z|Z33986}} which I just made, which is going to be used for the Hebrew implementation of {{Z|Z33975}}. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 14:11, 23 April 2026 (UTC) ::::You seem to be returning the wrong type in both implementations. Functioneers should not connect implementations that don't work for non-functioneers. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:13, 23 April 2026 (UTC) ::::: {{re|Feeglgeef}} Oh thank you for pointing that out! I am still a bit new to this project and confused, so I need to read up some more about this. How do I return a monolingual text object? [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 14:17, 23 April 2026 (UTC) ::::::I'm trying to fix it for you, the construction of ZObjects in code implementations is a bit difficult right now. Since the State origin using entity and class function will (presumably) be composition, perhaps {{Z|33975}} can be adjusted to return a string, using {{Z|26107}} and {{Z|26107}}? [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:21, 23 April 2026 (UTC) :::::I did not notice any discrepancies from looking at the functions by themselves, and it seemed to work fine on my end. Is it bad practice for NLG functions to return the monolingual text type? I had assumed it was logical. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 14:24, 23 April 2026 (UTC) ::::::Both implementations are failing all three tests on my end. No consensus has been established as to whether monolingual texts or strings should be used, so it's like the [[w:War of the currents|war of the currents]] but for Wikifunctions. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:27, 23 April 2026 (UTC) :::::::Oh, you were referring to {{Z|Z33986}}. I assumed you were stating that something was wrong in the earlier English functions that I missed; I apologize for the misunderstanding. Has there been any centralized discussion on this string vs. monolingual text issue? &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 14:31, 23 April 2026 (UTC) ::::::::Not that I'm aware of, I've brought it up on the telegram twice before, though. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:49, 23 April 2026 (UTC) ::::::::The centralised discussion is at [[WT:Abstract Wikipedia/2025 fragment experiments#Proposed recommendation: Fragments should return Z11/monolingual strings]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 07:19, 24 April 2026 (UTC) ::::::: {{re|Theki|Feeglgeef}} Can only functioneers test implementations? For me I can't test it at all... [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 14:32, 23 April 2026 (UTC) ::::::::AFAIK, test cases are only immediately testable during editing of a function if they are connected. This is one of my personal pain points with Wikifunctions, iterating on functions without exhaustive connected test cases makes debugging practically impossible for non-functioneers working on newly-created functions... I (or Feeglgeef) can quickly connect the tests you need for you if you want, although if they are not well-formed they may need to be disconnected again afterwards. Additionally, I could temporarily connect the implementation you are writing so that you can test it on the sidebar as you work, but I'm not sure if this is advisable. That functionality is also something that unfortunately only works when not disconnected. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 14:43, 23 April 2026 (UTC) :::::::::Yup, agree with you on all points, thanks. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:48, 23 April 2026 (UTC) == Please disconnect implementation == I think I've fixed my issue with {{Z|Z33986}}, but I can't edit an actively connected implementations with my rights. I must admit it is an AI-aided fix, I feel very strongly about disclosing that. Courtesy pinging [[User:Theki]] and [[User:Feeglgeef]]. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 18:51, 23 April 2026 (UTC) : Additionally, I think the JS might be working. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 18:52, 23 April 2026 (UTC) : Just to clarify, I mean disconnect the Python implementation please. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 18:53, 23 April 2026 (UTC) :{{Done}} I've disconnected the Python implementation. :I've also added a couple of tests. The rule is a bit more complicated than adding a maqaf before every character that is not a Hebrew letter. Unfortunately, I don't think I'll have time to fix the implementations any time soon. [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 19:03, 23 April 2026 (UTC) :: Thank you! :: Also, for some reason I thought you put a maqaf before all gershayim, so thanks for correcting me. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 19:09, 23 April 2026 (UTC) :::No, that's not the rule. :::The rest of this reply is an [[:wikt:info-dump|infodump]], feel free to ignore it :) :::In [https://hebrew-academy.org.il/topic/hahlatot/punctuation/ the Academy's punctuation rules], the rule for adding a maqaf is written kind of badly: שמים מקף ברצף שיש בו שני סוגי גופנים, כגון אותיות ומספרים ("maqaf is added in a sequence in which there are two types of fonts, such as letters and numerals"). These are not different types of "fonts", but different types of characters, and I should email them about it. It gives the examples <span lang="he" dir="rtl">ה־12</span> and <span lang="he" dir="rtl">ב־DNA</span>. It doesn't say anything explicitly about quotation marks, but in other places on the same page, you have stuff like <span lang="he" dir="rtl">ב"הארץ"</span>, and from that I deduce that a maqaf is not needed before double quotes if there are Hebrew letters inside the double quotes. :::That said, a few people do think that there must be a maqaf before double quotes. I have a somewhat surprising example of somebody who always does it: translators of Scientology materials into Hebrew. At least that's what they did last time I looked at them, about ten years ago. Those people are certainly prolific, and they get points from me for consistency, but this not the prevalent standard. (And if I recall correctly, they use the minus and not the proper Hebrew maqaf, and they don't get any points from me for that!) :::Also, the name of the character is just "double quotes" and not "gershayim". Gershayim are mostly for abbreviations, although most people use the same character for them. I use ״ for gershayim, as do a few other nerds, but we're the minority. [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 19:35, 23 April 2026 (UTC) :::: {{re|Amire80}} Yeah, "font" is a weird choice of wording here by the Academy...<br> I think I'll follow your guidance and not use a maqaf for quotes beginning with Hebrew letters. <br> I should also add more tests for different types of quotes, like straight (", '), curly (“, ”, ‘, ’), gershayim (״, ׳), including single quotes.<br> P.S. gotta deduct points from Scientology for being a cult but that's neither here nor there [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 20:49, 23 April 2026 (UTC) :::: {{re|Amire80}} Courtesy ping because I mistyped your username on the last message. Anyways I'm also gonna do that tomorrow because I'm tired now... [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 20:50, 23 April 2026 (UTC) == Connect implementations == Hello! I'm done with the implementations of {{Z|Z33986}} both in JS and Python, and all tests pass. Pinging @[[User:Amire80|Amire80]] to check if all the tests I've added are alright. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 15:24, 24 April 2026 (UTC) :Connected. It's possible that some more changes will be needed, but it looks OK now. :Another little comment: It should be called "clitic" and not "prefix". [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 15:56, 24 April 2026 (UTC) : {{re|Amire80}} Thanks for your comment! Luckily labels are easy to edit, so I'll get to it. : Currently I'm working on Bulgarian {{z|Z34072}} and {{z|Z34084}}, along with other Bulgarian functions. After I'm finished with those I'll take your advice. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 16:01, 24 April 2026 (UTC) == Please connect my Bulgarian implementations == I recently created the following Bulgarian functions: * {{Z|Z34070}} (currently broken, I think because another function I built it upon is unimplemented) * {{Z|Z34088}} * {{Z|Z34105}} * {{Z|Z34072}} * {{Z|Z34084}} Can somebody please connect these functions, and perhaps suggest other functions I could localize? [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 19:03, 24 April 2026 (UTC) : Specifically, [[Z34070]] is based on [[Z34072]] [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 19:05, 24 April 2026 (UTC) :{{done}} for everything that passes, [[Z34070]] still does not work after purging WF's cache, though. For future reference, please request on the [[WF:Community portal|community portal]] instead of the project chat. Thank you for your work! [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 20:03, 24 April 2026 (UTC) :: {{re|Feeglgeef}} Thank you for your help! I will keep in mind to go to the [[project: community portal| community portal]] in future instead for this. :: I still don't understand why {{Z|Z34070}} fails... It's implementation is almost completely identical to [[Z30399]] from {{Z|Z30397}}, unless I messed something up... [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 20:11, 24 April 2026 (UTC) :::{{done}} No, it was mostly just timing out. It is better to use selective fetches where possible. One case is failing to match the expected results, but at least it is returning something. For all I know, it might even be acceptable! [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 20:35, 24 April 2026 (UTC) :::: {{re|GrounderUK}} Thank you so much for your help! The one failed case is with a definite article, so I feel like that might be fixed in the future... <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 20:43, 24 April 2026 (UTC) == Editor experience suggestions == I'm a bit frustrated with the editing experience on Wikifunctions, and I have suggestions based on pain points I've had contributing to this project: * Adding a wizard to create functions, implementations, and tests in one flow, somewhat like Wikimedia Commons' upload wizard * A sandbox for experimenting without changing mainspace functions, and maybe letting non-functioneers connect implementations ([[Project: Sandbox]] doesn't seem to fit this) * We could have functions for creation based on the sandbox, like how Wikipedia has articles for creation and edit requests, * Maybe even another test instance of Wikifunctions, like how Wikidata has [[testwikidata:|Test Wikidata]] I really like this project and I don't mean to whine, but it certainly has a lot of pain points both for technical and non-technical people. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 20:41, 24 April 2026 (UTC) : It's also really complicated to localize functions, so maybe we should add another wizard for that, where you can choose a language, and then create the new function with the aforementioned function wizard, and it just automatically adds it to the related language configuration object of the related function. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 20:48, 24 April 2026 (UTC) :# Sounds good to me. :# A sandbox available is [[Z10119]], though an extension-provided sandbox that allows you to manipulate the types, code, and tests easily without interfering with the mainspace would be nice. :# [[WF:Suggest a function|This page]] works to some extent, though it's too messy in my opinion. :# We used to have a "beta cluster" but it [[phab:rOMWC5f625c5846b5f779473fa32c9a02d87e59215dfa|got shut down]] just over a year ago because it was broken. :[[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 21:07, 24 April 2026 (UTC) == Language parameters in language-specific functions == I think that an effort should be made to give the different natural language options corresponding to different English dialects, Chinese scripts, etc. more of a use (I added the test {{Z|Z34119}} to {{Z|Z26095}} and unsurprisingly it fails). There are two main problems with this approach that I can identify: * If you ask the majority of these functions to make a sentence in British English, much of the time it will give you an output with missing words, because it does not fallback to English labels in the case of a British English label for that item missing. The same applies for every other English dialect, British English is just an example here. * Uninformed editors will probably see the presence of a language parameter on these functions, consider it redundant, and remove it. [[Special:Diff/268074|I have made this mistake before]]. In my opinion, in a perfect world, all of these language generation functions would output monolingual text, and if the user asks for American English text, then American English text is what they'll get. If the user asks for Japanese text in hiragana specifically, then that's what they'll get in return. This is not as high-priority as just rendering text in the language plainly in the first place, but it's something that I feel is still worth devoting some effort to. Right now switching functions to use this paradigm is difficult because, on the one hand, I don't know if consensus tends towards this direction being ideal or advisable, and I don't want to make changes like this without at least notifying the wider community. In addition, all tests break once a parameter is added or removed, and the function editor does not recognize the change in number of parameters and therefore you have to remove the function call, re-add it along with all of its parameters it had previously (which is a tedious cut-and-paste job), and then it will work again. This is something that you can do in five seconds by just adding a few lines of JSON to the test source, but this is not directly editable from the Web browser. This tedium is largely what's preventing me from doing this on a larger scale, besides asking for comments first. If anyone has any insights or comments on this, then that would be appreciated. If a reference of functions with and without the support for language variants is needed, of course [[WF:NLG]] can be perused, but I've also my own list cataloged at [[User:Theki/functions#language]]... Of course, this thread has many similarities to [[#"language" argument for certain functions|the one above]], but this concerns me going out and making this consistent across these NLG functions. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 21:09, 24 April 2026 (UTC) :I've created {{Z|Z34122}} as an extension to {{Z|Z34039}} for larger functions. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 21:34, 24 April 2026 (UTC) :Just to confirm that I, for one, support a Natural language parameter for all natural-language functions. The concern about getting them all aligned is just that we haven’t finally settled on {{Z|Z11}} being preferred to {{Z|Z89}} or some other type that conserves the text’s provenance, so we risk having to change them all again. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:07, 25 April 2026 (UTC) == “Key not found ()”? == What am I doing wrong in {{Z|Z34137}}? [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 00:39, 25 April 2026 (UTC) :You were passing a [[Z6091]] to {{Z|32290}}, but it takes a [[Z6001]]. Fixed. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 07:10, 26 April 2026 (UTC) ::{{done|Thank you}}! [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 14:13, 26 April 2026 (UTC) == Why is my test failing? == Hello! I recently made {{Z|Z34139}} based on [[wikt:Module:bg-translit]], and the test case {{Z|Z34141}} is failing on both implementations, despite the expected output and actual output being the same as far as I can tell. I tried looking at the Unicode codepoints of the output, but those are also identical. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 06:21, 25 April 2026 (UTC) :Yes, it’s a tricky one. I’ve added a normalize step to the result validation in {{Z|Z34141}}, which confirms it is a normalization issue. It looks like it is in the code but I don’t know whether simply normalizing the result is the way to go. Logically, you would normalize both the input and the result. The implementations of {{Z|Z10384}} show you how to do this. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 09:41, 25 April 2026 (UTC) == Edit request == Hello! I have an edit request for {{Z|Z23752}} and {{Z|Z23414}}. Please replace all the "an/a" logic with <code>Z21739(Argument reference)</code>, both for readability and for more accuracy ("a university is an institution") <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 09:50, 25 April 2026 (UTC) :{{D}} [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 12:24, 25 April 2026 (UTC) == Wikifunctions & Abstract Wikipedia Newsletter #245 is out: The Foundation's search for the perfect language == There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-04-25|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it! In this issue, we present an academic paper about Abstract Wikipedia, we discuss our latest Type created, and we take a look at the newest created functions. 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]]) 09:54, 25 April 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=30325620 --> :@[[User:Sannita (WMF)|Sannita (WMF)]], @[[User:DVrandecic (WMF)|DVrandecic (WMF)]], technical meta-question: the newsletter quotes the article: ::the only way to contest its algorithm is to click 👍 or 👎 (Crawford and Gillespie 2016) :This quotation sounds sensible, but the article's [https://link.springer.com/article/10.1007/s00146-026-02899-w web version], and the PDF that is downloadable from the same page doesn't actually show the emojis. It rather shows text that looks lacking: ::the only way to contest its algorithm is to click or (Crawford and Gillespie [https://link.springer.com/article/10.1007/s00146-026-02899-w#ref-CR14 2016]) :Where did you get the emojis? Is it your (probably correct) guess or is there a version somewhere that actually shows the emojis? [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 15:16, 25 April 2026 (UTC) ::Scratch that. I've found a version with correct emojis: https://wikihistories.github.io/wikilambda-the-ultimate/ [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 15:37, 25 April 2026 (UTC) == Requested deletion of test == Please delete {{Z|Z34143}}. this was never valid Bulgarian, I messed up. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 10:19, 25 April 2026 (UTC) :[[WF:RFD]] please. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 16:40, 25 April 2026 (UTC) == Request for comment (global AI policy) == <bdi lang="en" dir="ltr" class="mw-content-ltr"> A [[:m:Requests for comment/Artificial intelligence policy|request for comment]] is currently being held to decide on a global AI policy. {{int:Feedback-thanks-title}} [[User:MediaWiki message delivery|MediaWiki message delivery]] ([[User talk:MediaWiki message delivery|talk]]) 00:57, 26 April 2026 (UTC) </bdi> <!-- Message sent by User:Codename Noreste@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30424282 --> == Is it OK to connect the implementation? == Hello! I recently applied for functioneer on [[WF:RFG]], and I was wondering whether I could connect the implementation for {{Z|Z34165}} despite its dependency {{Z|Z34149}} being currently unimplemented. That is <em>if</em> I get accepted. I am planning on implementing it based on [[wikt:module:bg-nominal]], but am still having trouble figuring it out for now. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 09:04, 26 April 2026 (UTC) == Past tense function == Is there a function like {{Z|Z26039}}, but for the past tense (e.g. "Leo Tolstoy <em>was</em> a writer.")? If not, I will create it myself, I just want to make sure there's not a duplicate. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 10:10, 26 April 2026 (UTC) : {{Done}} with {{Z|Z34224}}, but I have a few kinks to work out with it. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 10:35, 26 April 2026 (UTC) :: I need to create some other similar functions for the past tense, I have some ideas: ::* {{Z|Z26095}} ::* {{Z|Z32643}} ::* {{Z|Z28016}} ::* {{Z|Z26570}} ::* {{Z|Z33975}} ::* {{Z|Z27243}} ::* <ins>{{Z|Z26627}}</ins> ::* <ins>{{Z|Z27627}}</ins> ::* <ins>{{Z|Z27173}}</ins> ::* <ins>{{Z|Z29591}}</ins> :: :: Are there any I have missed? <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 10:57, 26 April 2026 (UTC) :I think that here we are starting to walk on dangerous waters: what does past mean? Is it a recent o a far past? Does it have ripercussions on the present or not? Is it just a thing that happened once, many times or for a continuative period of time? :Consider that various languages distinguish between many different types of past. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 12:38, 26 April 2026 (UTC) :: {{re|Dv103}} That is a fair point... :: How do we go about solving this problem though? I don't think having every sentence on Abstract Wikipedia be "X is a Y" is a very good idea. :: Maybe we have different functions for all these variations of past you mentioned that just map into "X was a Y." in English? <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 13:31, 26 April 2026 (UTC) :::To properly solve this problem, we should use a more complete abstract content representation model, like for example the proposal of [[Wikifunctions:Type proposals/Semantic unit|Semantic units]] (look at [[Wikifunctions:Type proposals/Semantic unit/Douglas Adams|the example]] to see how times could be handled). For now, since we're still stuck with single fragment generation functions (that I hope will be slowly replaced with the complete represenation model, when available), we could just restrict your function to a very specific meaning, like "subject was an instance of, for most of its existence" (which means for example that it could be used to say "Douglas Adams was a writer", but not "Abraham Lincoln was a president", since he only was a president for 4 years). Probably my definition is still too vague, and this is why we need to go beyond these fragment generating functions. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 19:47, 26 April 2026 (UTC) ::Nitpick... I don't like that it outputs a string instead of monolingual text. With {{Z|Z26039}} it's used so much that I think it's unfixable in that case beyond deprecating it if people care that much, but {{Z|Z34224}} doesn't even have any connected implementations yet. Consider it, maybe? ::Nitpick 2... {{Z|Z34227}} is missing a language parameter. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 16:08, 26 April 2026 (UTC) ::: I will consider that! ::: I just did that because that's what {{Z|Z26039}} does, so I assumed I should follow suit with it. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 16:48, 26 April 2026 (UTC) == Legacy functions == If and when more robust methods of abstractly representing and generating linguistic content come around, and more efficient ways of creating abstract content are devised and implemented, I suspect that our current methods will require some form of deprecation. This is a significant source of concern for me in relation to WF and AW, questioning how prone our current methods of doing things are and eventually will be prone to obsolescence, and how it will be worked around when it comes. We have over 1 250 articles on AW presently, and these are rather all over the place. I suspect the maintenance burden from keeping these articles up to code will eventually, err, creep up on us, I suppose, and some kind of major refactoring will be necessary. We are definitely in a period of experimentation and whatnot right now but eventually, like with enwiki, some sort of structure and rigor will form and I suspect it will start to become rather boring for me... I, for one, very much enjoy experimenting with new and better ways to do things here. I don't personally mind changing things to use a new and better paradigm if need be, that sort of thing highly excites me, but of course there will be things that are left behind, and I suspect maybe bots will be employed to deal with this? A lot of Wikipedia sister sites seem to do that, e.g. going and fixing up use of deprecated templates. Considering the nature of Wikifunctions and Abstract Wikipedia I suspect certain maintenance tasks will be made simpler or even trivial by the typical uniformity of our implementations. I guess I am just concerned if Wikifunctions or Abstract Wikipedia will ever accrue its own kind of "technical debt" with how we are plowing through things presently, and if there is a plan for how we will eventually seek to mitigate that. Maybe too early to ask this question, but I am a notoriously anxious person, so I thought it wouldn't hurt to raise the question regardless... &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 21:30, 26 April 2026 (UTC) :I very much agree, thank you for expressing my position so well. {{ping|Immanuelle}} has been using an AI-generated tool (well, they haven't edited in a week, perhaps it's a break or perhaps they don't wish to contribute to the project any more) to create a bunch of articles en masse, which I have warned them multiple times is a bad idea (on top of evolving functions, all of the articles are one-sentence-per-paragraph, [[abstract:Q12184|like so]]). That's why I've been avoiding creating articles recently, I'd say I have a good fourth (no data to support, rough guess) of the comments on the wiki, yet less than a percentage of the article count (only three, including the [[abstract:Q319|first article]], though, so perhaps I'm the next [[w:Special:Permalink/908493298|office.bomis.com]]). [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 19:41, 27 April 2026 (UTC) :: I feel that the overwhelming presence of these low-quality articles (which I admit I myself am [[abstract:Q1710970|guilty]]/[[abstract:Q7601858|of]]/[[abstract:Q39338|creating]], usually as testbeds) may incur a large maintenance burden. I do expect them to be easy to detect, however, as searching for the presence of "deprecated" NLG functions is trivial, and it is possible that replacing them with their future ''even abstracter&trade;'' counterparts could be done automatically since they all have the same signatures and can be expected to create the same form of sentence. If it needs to be done manually for a while or for certain delinquent instances, my hope is that it will be fun, at least for a while. :: I just hope that these hypothetical future waves of "this new and versatile way of abstractly representing linguistic content" obsoleting previous methods and requiring refactoring across all articles is only a one-time thing. We should strive to be as robust and flexible as possible from the outset as each brand new paradigm of abstraction is also a brand new maintenance burden for updating old articles. At the end of the day, at least ''some'' of these articles will still render to many different languages even if their methods of creating those sentences of theirs is completely outdated. Ergo, the time it takes for the switchover to be performed across our articles should not be a persistent inconvenience for users (as, of course, they will always still be able to read the content as it was before since these legacy functions aren't being deleted outright), and the increased availability that the new methods will bring about will likely act as motivation for them to join the effort in refactoring (&#x300C;You're telling me that if I rewrite this article in this cool Lisp-looking stuff then I can probably read it in [[abstract:Q9307|Galician]]?? COOL!&#x300D;). &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 20:26, 27 April 2026 (UTC) :::Totally agree. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 02:54, 28 April 2026 (UTC) :::My vague plan is to implement a default function returning an {{Z|Z89}}, for each language-neutral function. A single function would convert any of these to a {{Z|Z11}}, so that a composition of the two can be implemented as the current default until such time as the language-neutral function is ready to return a [[Z89]]. We can already convert a [[Z11]] to a [[Z89]] so, although there is more to be done in this space, existing language-specific functions could be adapted to return a [[Z89]] quite mechanistically. :::Although we certainly could deliver parallel Z89 functions for each existing Z11 function, I don’t think we should assume that particular outcome. Provided the Z89 captures a lang attribute from the Z11’s language tag, the two representations should be largely interchangeable, although I am expecting a Z89 to carry additional attributes at the span level that would be lost on conversion to a Z11 (along with any higher-level tags and attributes). :::When I say there is “more to be done in this space”, I am referring to a new type that would allow HTML fragments to be represented as tractable Wikifunctions objects, but this is currently drafted only in my head! [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:21, 29 April 2026 (UTC) == Filtering types of objects == Hello! I have tried to comb through my own edit history several times, but it's really hard to search for specifics because there's no differentiation between different types of objects (functions, implementations, tests, etc.) in the logs as far as I can tell. Am I missing anything? I want it to work sort of like how filtering by namespace works. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 16:48, 27 April 2026 (UTC) :There is differentiation, it's just rather hard to look through. Since all ZObjects are just JSON data at their core, you can search for instances of <code>{ "Z1K1": "Z[type]"</code>. I haven't tried this so I'm not sure how well it would work and I know MediaWiki search syntax treats quotation marks as a special character, but I have seen Wikifunctions pages link to searches using this before. There is also [[Special:ListObjectsByType]] but it is sitewide rather than specific to your edit history in particular. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 18:59, 27 April 2026 (UTC) ::''[It doesn’t help directly here, but please see [[WF:Find]] for more details of how this works.]'' [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:24, 29 April 2026 (UTC) :See the feature requests [[phab:T399244]]/[[phab:T373735]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 06:06, 28 April 2026 (UTC) :The lack of filtering edits by namespace is exactly the problem that I was trying to solve with the [[User:Amire80/wikifunctionsanalytics]] tool. :I even kind of succeeded, but it has two major problems: :# It doesn't have any real frontend, so you have to know some SQL to use it (or ask other people who know SQL). :# It doesn't get information from the live site, but from the dump, which appears to be updated once a month. :I've made a [https://quarry.wmcloud.org/query/104794 sample query for you]. Unfortunately, it won't do anything at the moment because of the second problem—your edits started in April 2026, which isn't over yet, so the dump for it hasn't been processed. But I hope that early in May you'll be able to use the same query and see something useful. :(I plan to add support for recent edits, but I haven't done it yet. Now that I more or less figured out how to process Wikifunctions edits, I'm focused on trying to understand Abstract Wikipedia edits. Processing up-to-date edits from both sites will possibly be the next thing I work on, but if you know some Python and want to try doing it yourself, don't wait for me—[https://gitlab.wikimedia.org/toolforge-repos/wikifunctions-analytics Patches welcome].) [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 18:51, 28 April 2026 (UTC) ::@[[User:QuickQuokka|QuickQuokka]], I've just updated the data until the end of April. Now the query to which I linked above gives some results. You can also try running other queries if you know SQL. (Or try asking for other queries if you don't.) [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 03:26, 3 May 2026 (UTC) == [[Z34213]] == I'm not quite sure why this implementation is failing. Could someone take a look? [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 02:24, 28 April 2026 (UTC) :I've [https://phabricator.wikimedia.org/T419933#11863997 notified] the team that this is still occurring, the issue was marked as resolved. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 02:52, 28 April 2026 (UTC) :Some useful tips: :* create more testcases: sometimes it is a random error, so try to see how consistent it is between testcases :* your implementation is very inefficient, since it fetches items and lexemes a lot of times. Ideally, each item and each lexeme should be only fetched once in all the execution tree. :[[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 06:06, 28 April 2026 (UTC) ::Caching (''should?'') means that the lexeme and item data are cached, so the call doesn't actually execute multiple times. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 17:51, 28 April 2026 (UTC) :::Are lexemes and items actually cached within the same function execution? Even if they are only partially fetched and/or fetched in bulk? [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 17:54, 28 April 2026 (UTC) ::::I don't have any evidence to prove that it works but that's definitely A. what's supposed to happen and B. the ideal behavior. This happens because the Z680X functions can be cached just like any other. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 18:02, 28 April 2026 (UTC) ::::It is unclear. In general, I believe identical branches are resolved only once in orchestration, but there is also independent caching of Wikidata fetches. ::::According to @[[User:DMartin (WMF)|DMartin (WMF)]] ([https://t.me/Wikifunctions/30374 on Telegram]): ::::<blockquote>Well, no. We have caching of Wikidata entities that have been retrieved, but not of the results of nested function calls. There is a proposal for doing this in the context of the V2 composition language, when it's a bit more mature, and it's regarded as a relatively high priority.</blockquote> ::::It’s hard to tell whether fetches in nested calls are, in fact, cached and available for other nested calls in the same call, since it is not generally the actual fetch that consumes the most resources. Rather (I believe), it is construction and transmission of the result object, which is currently repeated afresh in each nested call (unless it is in an identical branch). ::::I hope that’s clear, and I apologise in advance if it happens to be inaccurate! [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:16, 29 April 2026 (UTC) :::::Oh, I should clarify.  There is a lot of caching going on, in several different places.  Lexemes and items ''are'' cached by the orchestrator within the same function execution, even if they are only partially fetched and/or fetched in bulk.  When I said that we don't have caching of the results of nested function calls, I meant that's not happening in general, for all nested function calls in compositions.  But fetching of Wikidata entities gets special treatment, so yes, fetched content from Wikidata is cached, regardless if it was fetched by a top-level call or a nested call. :::::It is also true that the construction of a ZObject from the fetched JSON might happen more than once within the same function execution, depending on how a composition has been structured. However, the construction of the ZObject is actually very fast, compared to the elapsed time of getting the JSON from Wikidata. [[User:DMartin (WMF)|DMartin (WMF)]] ([[User talk:DMartin (WMF)|talk]]) 18:04, 1 May 2026 (UTC) == Question about cardinal numbers == I was about to edit {{Z|Z16435}} to add my function {{Z|Z34308}}, but I noticed that none of the other functions have a gender parameter. Should I create a new wrapper function "Bulgarian cardinal, neuter", or should I just remove the gender parameter and always return neuter? <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 10:39, 28 April 2026 (UTC) :The “cardinal” functions should return the words used for “counting” numbers in the abstract. :We should consider converting them to return a {{Z|Z11}} rather than a {{Z|Z6}}. It may even be appropriate to return a {{Z|Z12}} to cater for language variants. Either way, I think that would be the approach to adopt for inflected forms, unless reference to specific lexeme-forms is required. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 12:52, 28 April 2026 (UTC) ::This. If a native of your language were to count up, which form would they be most likely to use? [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 13:29, 28 April 2026 (UTC) ::: {{re|GrounderUK|Feeglgeef}} Thanks for both your input! ::: I relabeled the aforementioned function to {{Z|Z34308}}, and created a new wrapper function {{Z|Z34457}}. ::: Should I specify that my old function is a monolingual text in parentheses? <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 16:26, 28 April 2026 (UTC) ::::You don't have to, unless you think that is something that would require distinction when viewing the function in a list of search results &c. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 16:36, 28 April 2026 (UTC) == Optional/nullable function parameters == Hello! Recently, I was informed that Wikifunctions has no optional/nullable function parameters as of now. Are there any future plans to support this, and/or workarounds? Maybe create a union type system like "{{Z|6}} or {{Z|23}}". <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 17:53, 28 April 2026 (UTC) :What I do for this is use an "is empty" function corresponding to the type of the parameter in an If statement. If it isn't empty, the function works as intended. Otherwise, it does something else. [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 17:58, 28 April 2026 (UTC) :Unions are not a thing (yet) on Wikifunctions, but you can always define an argument of type {{Z|Z1}}, which means that all types are allowed (I already did this for {{Z|Z26737}}; note that it is still a ugly workaround, don't use it for high level functions). Also, note that usually on Wikifunctions we use {{Z|Z24}} as the null value. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 18:00, 28 April 2026 (UTC) :: {{re|JJPMaster|Dv103}} Thanks for your help! :: @[[User:Dv103|Dv103]] told me a function call with a missing parameter is treated as an invalid function call, so how does the "is empty" function work with that? :: Also, setting the type to {{Z|1}} seems naive, like setting the type as <code>any</code> in TypeScript... :: Related question: Are there plans to add default values to parameters (outside of "if empty")? <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 18:19, 28 April 2026 (UTC) :::Setting the type to {{Z|Z1}} is actually naive, and that's why I advised you to only use it for low-level functions. Currently there is nothing better. Sometimes, type correctness is not actually checked, so it might seem that nullable types are possible. But it is still an hack, and it could broke anytime since it is not intended behavior. :::I don't think that there are current plans to add default values (but correct me if I'm wrong). The closest thing that comes to my mind is that, if you incorporate Wikifunctions into Wikitext, you can leave empty some fields (only of some specific types) and Parsoid will replace them to their default value. This is done only depending on the type, and not on the functions. For example, {{Z|Z6091}} and {{Z|Z6001}} are assigned the QID associated to the page, and {{Z|Z20420}} is assigned the current date. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 18:56, 28 April 2026 (UTC) :::@[[User:QuickQuokka|QuickQuokka]]: At the very least, [[Z10008]] accepts a null input. Maybe that feature is unique to the String type—I am not sure. [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 19:10, 28 April 2026 (UTC) ::::I think it's just not checked, but it shouldn't be intended. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 19:20, 28 April 2026 (UTC) ::::Strings and typed lists can be “empty” in the sense that their length can be zero. Typed pairs may also be “empty” in a degenerate sense, but such an object will not be returned from a code implementation. A typed map with no entries will also fail to be returned from code, although it is fine in compositions. ::::For a genuinely optional parameter, I prefer a properly typed list, which at least encourages an argument of the correct type. {{Z|Z813}} is also typically faster than {{Z|Z10008}}. Quite a good example of this approach is {{Z|Z23723}}, where it helps to resolve the type union (using [[Z1]]) for both Z6003K1 and Z6003K3. Of course, there’s nothing to prevent more than one element in the list, but additional elements are easily ignored. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 22:55, 28 April 2026 (UTC) :Pinging {{ping|Jdforrester (WMF)|prefix=|p=}}, I believe there are no current plans. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 19:02, 28 April 2026 (UTC) ::@[[User:QuickQuokka|QuickQuokka]]: I'm afraid there are no current plans to build out optional params, indeed; we would be happy to review this if a compelling case was made, but it'd be a lot of work to re-build the [[Wikifunctions:Function model|function model]] with that support and ensure we don't break (too many) things. [[User:Jdforrester (WMF)|Jdforrester (WMF)]] ([[User talk:Jdforrester (WMF)|talk]]) 19:11, 28 April 2026 (UTC) == Z6830 for Chinese == I was trying to use {{Z|Z6830}} for implementation in the Chinese-language. And turns out most of the Lexeme on Wikidata is using [[d:Q727694]] as the language instead of [[d:Q7850]]. This makes it impossible to use the mentioned function above, since Standard Chinese is not available (or did I miss something?). Is there a way to fetch lexemes with language=[[d:Q727694]] from item? [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 18:20, 30 April 2026 (UTC) :@[[User:Sun8908|Sun8908]] There is [[Z1006]] for Chinese and it has the language code zh. There is an overview of languages in [[Module:Wikifunctions label]] so you can search there for chinese versions and choose the one you need. [[User:Hogü-456|Hogü-456]] ([[User talk:Hogü-456|talk]]) 20:53, 5 May 2026 (UTC) == Key not found error == Is there a reason why I am getting key not found error for this [[Z34677|function]] {{Z|Z34677}}? All the underlying functions run and all the test cases work. The debug information does not give more details. Any pointers? Thanks in advance [[User:Jsamwrites|John Samuel]] 19:24, 1 May 2026 (UTC) :It was passing the [[Z6091]] to {{Z|34641}} when that takes a [[Z6001]]. I've fixed that, but there's some other problem with the logic, so I've left it disconnected. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 19:42, 1 May 2026 (UTC) ::@[[User:YoshiRulz|YoshiRulz]] Thanks a lot. [[User:Jsamwrites|John Samuel]] 20:21, 1 May 2026 (UTC) == Wikifunctions & Abstract Wikipedia Newsletter #246 is out: Request for input: what should we count for Abstract Wikipedia == There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-05-02|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it! In this issue, we ask you what would be the relevant metrics for Abstract Wikipedia, we discuss our latest news on 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]]) 12:21, 2 May 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=30325620 --> == Any formal process for deletion of pages == Does a formal process exist for the deletion of functions, implementations, and tests that includes a notification system for creators, analogous to Wikidata’s process, explaining the rationale behind the deletion (or proposal for deletion)? [[User:Jsamwrites|John Samuel]] 12:36, 3 May 2026 (UTC) :Does [[Wikifunctions:Requests for deletions]] work? [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 13:00, 3 May 2026 (UTC) :Please see the discussion at [[Wikifunctions talk:Requests for deletions#Should we expect Objects' creators to get pinged on deletion proposals?]]. :As I see it, it is the proposer’s responsibility to consult appropriately before making a request and we expect our administrators to act only when satisfied that appropriate consultation has occurred. In many cases, no consultation is required. Administrators may delete their own contributions without making a request, but this is not a practice I would encourage. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 13:51, 3 May 2026 (UTC) == Implementation of rational number in JS doesn't match in Z19677 (Rational number) and Z28579 (RGBA colour) == In {{Z|19677}} it's <syntaxhighlight lang=js> { "K1": sign * numerator, "K2": denominator } </syntaxhighlight> but in {{Z|28579}} it's <syntaxhighlight lang=js> [ sign * numerator, denominator ] </syntaxhighlight> '''<span style="font-family:Iosevka,monospace">[[User:沈澄心|<span style="color:#9f3526">dring</span>]][[User talk:沈澄心|<span style="color:#534fa3">sim</span>]]</span>''' 05:15, 4 May 2026 (UTC) tccgkzqko0wzht63mt83puagrx9ihdn 272514 272513 2026-05-05T21:10:56Z Hogü-456 617 /* Nested functions in compositions */ new section 272514 wikitext text/x-wiki {{shortcut|[[WF:CHAT]]|[[WF:PC]]|[[WF:VP]]}} __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/ }} == "language" argument for certain functions == Hello. I am relatively new to Wikifunctions. Recently, I tried to create functions for Chinese translation of {{Z|Z26570}} and {{Z|Z26095}} (which became [[Z32788]] and [[Z32900]]). During the creation of these functions, I was trying to take {{Z|Z32212}} as reference. And I realized that the defining role sentence function is taking <code>language</code> as an argument (and the test case of the Chinese-language function already contains two varieties of Chinese). This makes it possible to output monolingual text in <code>zh-hant</code>, <code>zh-hans</code>, <code>zh-tw</code>, or any varieties of the language. I think for this reason, it is better to have <code>language</code> as arguments for the implementation of Z26570 and Z26095, and potentially more functions that require {{Z|Z14294}}, since it would output the varieties code instead of just saying <code>zh</code> for <code>zh-hant</code>, <code>zh-hans</code>, <code>zh-tw</code> in the output of type {{Z|Z11}}. I am not sure how the fallback mechanism works if one of the language (varieties) do not have a labels/lexemes, but to me, it is reasonable to have a <code>language</code> argument. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 09:38, 31 March 2026 (UTC) :The functions you mention do have a language argument. For Wikifunctions, the {{Z|Z60}} can be at a higher or lower level; whether a {{Z|Z11}} is for a language or a variant is determined by the function that constructs it. Please see {{Z|Z26565}} for an example and feel free to add test cases in Chinese. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 17:54, 11 April 2026 (UTC) ::Hello @[[User:GrounderUK|GrounderUK]], thanks for the answer. I understand that whether {{Z|Z11}} is for a language or a variant depends on the function. But that is exactly what I am asking for. It is true that [[Z26570]] and [[Z26095]] takes [[Z60]] as argument, but the language-specific functions in {{Z|Z29843}} and {{Z|Z26096}} don't. ::Let me give you an example: INPUT to [[Z26570]]: <code>entity</code>: Tokyo, <code>class</code>: city, <code>location</code>: Japan, <code>language</code>: zh-cn, the config would select [[Z33030]] (created after my previous comment by elseone) as the implementation, and it would RETURN 东京是日本的一个城市。(zh-hans), which is not zh-cn as requested in the INPUT. It would also be using the term not for the variant (when it is different) because it is hardcoded to use the term in zh-hans. However, if we have the implementation like [[Z32790]] (which was created by me but a natural language argument was added by elseone) or [[Z32213]] (that works in the defining role sentence function because of the extra argument), it could cater for different variant. ::If we don't have the language argument in the language-specific function, the desire for article creation on Abstract Wikipedia would be to create a function for every variant. Is it then better to create functions for every variant? [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 18:18, 11 April 2026 (UTC) :::I forgot to mention that there are some hardcoding in {{Z|Z32790}} as well, but I cannot fix it because it is a connected function and I am not a functioneer. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 18:31, 11 April 2026 (UTC) ::::Okay, I think it’s safe to disconnect this one as the function is not yet configured for use on Abstract Wikipedia. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 19:04, 11 April 2026 (UTC) :::Ah, sorry… I misunderstood you. I agree that the called function should be able to accept the original language argument. That is simpler in theory than in practice, because the configured functions all have to have the same argument types, as I understand it. I’m not sure which the best approach is, really, but we probably want to avoid two levels of configuration. That suggests that all language-specific functions would need to accept the additional argument, which is unrewarding work for someone. @[[User:99of9|99of9]], @[[User:Jdforrester (WMF)|Jdforrester (WMF)]], @[[User:DVrandecic (WMF)|DVrandecic (WMF)]] Any thoughts? [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 18:57, 11 April 2026 (UTC) ::::I mean, we would need to modify all the functions in each language, which could take some time. But we are still in an early stage. If we don't fix it now and we want to fix it later, it would be a disaster. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 19:25, 11 April 2026 (UTC) :::::Agreed. And we probably want them converted to HTML too, with separate language spans for text in different languages. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 19:35, 11 April 2026 (UTC) ::::@[[User:GrounderUK|GrounderUK]]: This sounds like a reasonable change to make. Note that (given these Functions are primarily for use on Abstract Wikipedia), altering/replacing them to return Z89/HTML fragments is already a desired but breaking change, so making a second breaking change at the same time is probably easiest for fixing things swiftly. That said, that's of course a decision for the Abstract Wikipedia and Wikifunctions communities, not me! [[User:Jdforrester (WMF)|Jdforrester (WMF)]] ([[User talk:Jdforrester (WMF)|talk]]) 19:43, 12 April 2026 (UTC) ::::@[[User:GrounderUK|GrounderUK]]@[[User:Sun8908|Sun8908]] to make it a non-breaking change, I've created {{Z|Z34039}} which allows a composition {{Z|Z34043}}. This way you can make functions which either need the specified variant or don't! --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 05:52, 24 April 2026 (UTC) :I have now created {{Z|Z33465}}, which is an implementation of [[Z26570]]. Maybe we can migrate to use that function when more (language-specific) functions for it are ready? [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 18:19, 14 April 2026 (UTC) == Help me understand why test passes but running function with same input errors == I've been working on a function that I thought I had working correctly: {{Z+|Z31108}}. It has a test which is passing, but when I enter the same Wikidata item as the test uses (or any other relevant item that it ought to work for), it errors. I can't figure out what's wrong (and the function itself seemed to be working as expected the last time worked on it, a month ago), and I don't know how to interpret the error info. The error output is: <code> Error type: Unspecified error Error data: error information: "cannot read property 'Z6003K4' of undefined" Execution debug logs: Z12696K2 (find this) ==> ZObject<Z1K1:{'Z1K1': 'Z9', 'Z9K1': 'Z6007'},Z6007K1:ZObject<Z1K1:{'Z1K1': 'Z9', 'Z9K1': 'Z6092'},Z6092K1:P3831>,Z6007K2:ZObject<Z1K1:{'Z1K1': 'Z9', 'Z9K1': 'Z6091'},Z6091K1:Q7380503>,Z6007K3:ZReference<Z6021>> </code> -- [[User:Ragesoss|Ragesoss]] ([[User talk:Ragesoss|talk]]) 18:02, 10 April 2026 (UTC) :Hmm… I’ve had a quick look and found a comparable error with {{Z|Z29937}}, which was passing “4 months ago”. The debug comes from {{Z|Z12863}}, after it fails to find a match. This is probably because Z6007K3 is ZReference("Z6021") rather than a Z6020 object, as it appears in the debug logs for your test “28 days ago”: :"Z6007K3":{"Z1K1":{"Z1K1":"Z9","Z9K1":"Z6020"},"Z6020K1":{"Z9K1":"Z6021"}} :This means it’s probably a bug introduced by a recent software change. I’ll take a closer look over the weekend, but the actual error for your test case now is: :Unspecified error (error information: "cannot read property 'Z6003K4' of undefined") :I’m guessing that’s from there being no guard against an empty array in {{Z|Z23681}}, but we’ll see. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 23:22, 10 April 2026 (UTC) :I tracked down the bug to [[Z29869]] and fixed that, but the tests for [[Z31659]] are still failing. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 05:44, 11 April 2026 (UTC) ::Thanks. I’ve re-implemented {{Z|Z23680}} with {{Z|Z33331}} so we at least get a meaningful error in {{Z|Z31108}}. The new implementation explicitly caters for the alternative representation of {{Z|Z6040}} and errors on the empty list it gets from {{Z|Z31659}}. ::I also made a [[Z33332|simple Python implementation]], which seems to work. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 16:29, 11 April 2026 (UTC) == No place to ask to activate a function? == I just discovered the {{Z|Z11390}} function and decided to make an overarching language-selecting function for it. After some fiddling around and studying how {{Z|Z32321}} and its set works, I now have {{Z|Z33439}} which has a config object ({{Z|Z33441}}) that selects between the two preexisting language-specific versions I found (English and Malayalam) and the new one I created for my other native language, {{Z|Z33440}}. Except I can't get these to work, because, from what I understand, only [[Wikifunctions:Functioneers|functioneers]] can activate newly created functions and implementations? So where do I apply for the {{Z|Z33439}} and {{Z|Z33440}} functions to be activated? Perhaps we should have a place to ask for it, a la [[w:WP:NPP]] — call it [[Project:New Functions Patrol|New Functions Patrol]] if you will. —[[User:UndueMarmot|<span style="color:#705ccb;">Undue</span><span style="color:#cfdfa3;background-color:#705ccb;">Marmot</span>]] ([[User talk:UndueMarmot|talk]]) 08:58, 14 April 2026 (UTC) :There's [[Wikifunctions:Community portal]] for this. By the way, {{Z|Z33445}} doesn't work because all the code must be inside the main function in Python code. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 09:19, 14 April 2026 (UTC) ::Huh. How could I have missed that? ::But anyway, I've moved the code in {{Z|Z33445}} into inside the main function block. ::Is there any reason why WF decided not to simply allow anyone to write functions? After all, that's how it works with wikitext templates, and these functions are fundamentally serving the same purposes as templates, just written in a different way. —[[User:UndueMarmot|<span style="color:#705ccb;">Undue</span><span style="color:#cfdfa3;background-color:#705ccb;">Marmot</span>]] <small>([[User talk:UndueMarmot|talk]])</small> 11:25, 14 April 2026 (UTC) :::I've fixed a couple of technical issues, but tests still fail. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 11:28, 14 April 2026 (UTC) ::::The tests pass now after some more changes to the code: [[Special:Diff/265232/cur]]. —[[User:UndueMarmot|<span style="color:#705ccb;">Undue</span><span style="color:#cfdfa3;background-color:#705ccb;">Marmot</span>]] <small>([[User talk:UndueMarmot|talk]])</small> 12:01, 14 April 2026 (UTC) :::::{{D|Connected}} [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 12:02, 14 April 2026 (UTC) :::I think it's a security issue, since Wikifunctions implementations could teoretically be malicious. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 11:29, 14 April 2026 (UTC) ::::This ^^^. We're very lenient, though, once you've created a few working functions you can apply for the right, per [[WF:Functioneer]]. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 12:26, 14 April 2026 (UTC) ::::That explanation [[phab:T343559#11421293|doesn't add up]]. A reason to limit ''connection powers'' to Functioneers might be to prevent vandalism, considering Functions can be used across wikis. But user-provided code is already being executed even without a Functioneer connecting it. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 20:01, 16 April 2026 (UTC) == Actual difference between {{Z|Z26039}} and {{Z|Z26095}} == What is the actual difference between these two functions? I ask, since it seems to me that the current distinction is more or less that the first one doesn't use an indefinite article in English, while the second does. Which is not a good distinction in a project that should be language neutral. This doubt emerged from my use of the first one in [[abstract:Q124441]], which @[[User:Hogü-456|Hogü-456]] made me notice that is probably wrong. My question is: why is it wrong? How could we clarify the difference? [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 19:46, 19 April 2026 (UTC) :I think the difference is if there is an indefinite article like a or an before the subject or not. In German there can be cases where a definite article is necessary before the subject. I looked at the functions and before the object both times an article is mentioned. As it depends on the language and the word what is the correct function to use I hope it will be clarified and it is an example of the necessity to have a human with understanding in a specific language check it. I hope there will be longer functions what generate more content about a specific kind of item. Then it is necessary to write one such function per language and it can be then applied to several items. It still requires checks and so maybe it is better to write down what item category needs what kind of introduction sentence function for what language. [[User:Hogü-456|Hogü-456]] ([[User talk:Hogü-456|talk]]) 20:05, 19 April 2026 (UTC) ::The point of these two functions (and of the entire Abstract Wikipedia project) is that they should be defined in a purely language-independent way, so that the translation to actual language can be done automatically. This is the reason why these functions have been renamed; I think that this attempt was not succesful, since meaning is still unclear. My proposal to clarify them would be to invoke the concept of [[w:specificity (linguistics)|specificity]]: {{Z|Z26039}} should be named "specific subject is instance of (string)", and should be used only when the QID of the subject uniquely identifies a single thing; {{Z|Z26095}} should instead be renamed in "non-specific subject is kind of (Monolingual text)", and should be used when the QID refers to a multitude of real life items, and we are specifying the class that all these item belong to. This clarification would not still be enough, since it doesn't explain how mass nouns are handled (is water a unique thing? Does {{Q|Q7802}} refer to a single piece of bread or to the entirety of bread, like water?). This problem is very tricky, since mass noun are language-specific and blurry the line between these two functions. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 20:58, 19 April 2026 (UTC) :Simply put, one corresponds to P31 and the other to P279. Paris is an {{Q|P31}} a {{Q|Q1549591}} :whereas a {{Q|Q1549591}} is a {{Q|P279}} (alias “kind of”) {{Q|Q515}}. Whether the Wikidata knowledge representation will be sufficient to resolve into fluent natural language representations in all languages is, of course, a crucial question. Where it is not, the Abstract Wikipedia knowledge representation will need to supplement the Wikidata content with additional details about the relation between the participants or the participants themselves, and these details should be language-neutral, to the extent that this is practicable. The item {{Q|Q124441}} has no [[:d:Q124441#P31|P31]] statements; it has only [[:d:Q124441#P279|P279]]s, including one relating it to {{Q|Q212920}}, which suggests {{Z|Z26095}} is the appropriate choice here even if the rendering in some languages is the same. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 22:52, 19 April 2026 (UTC) ::Thanks for explaining it. I think that I'll change the implementation of {{Z|Z26095}}, so that in Italian it produces more or less the same output of {{Z|Z26039}} (both with the definite article). [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 11:24, 20 April 2026 (UTC) == Equivalent of Z6830 for lexemes == Is there an equivalent of {{Z|Z6830}} that enables retrieving all lexemes pointing to a particular lexeme using a specific property? [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 21:06, 20 April 2026 (UTC) :There's {{Z|6831}} but I think that's slightly different again to what you're after. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 12:31, 21 April 2026 (UTC) ::Thanks for sharing that one, I did not know it existed. But you are right, it’s not quite what I am looking for. I want a function that would take a Wikidata property reference (like P5191, which is ‘derived from lexeme’) and a Wikidata lexeme reference, and return a list of lexemes that reference that lexeme using that property. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 13:23, 21 April 2026 (UTC) == Storing huge datasets == It is not a necessity I suppose, but an idea came to me earlier to write a function that would give the corresponding [[en:Shavian alphabet|Shavian alphabet representation]] of an English word written with the Latin alphabet, or perhaps apply that operation to an entire sentence. However, just trying to guess as to what the IPA pronunciation of each word passed into it could be is is both not ideal (pronunciations obviously can and will vary widely between accents) and infeasible <s>(Wikidata lexemes don't really seem to account for pronunciation)</s>. It happens, though, that a comprehensive Shavian dictionary exists named the [https://readlex.pythonanywhere.com/ ''Read Lexicon''], which uses pronunciation and spelling similar to that used by the creator of the alphabet himself. This would be a good dataset to use in performing this translation in the function, but it appears that, all in all, the total size of the dictionary is [https://github.com/Shavian-info/readlex/blob/main/readlex.json ''nearly 26MB''] when formatted as JSON, which would certainly be larger when converted into a typed list. I am wondering if this will ever be feasible or admissible, or if there is really a way around this if importing such a large set of data is deemed impractical. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 22:30, 20 April 2026 (UTC) :{{re|Theki}} "Wikidata lexemes don't really seem to account for pronunciation"" is patently untrue; not only does every Bokmål lexeme form have IPA attached to it (thanks to Jon Harald Søby), but there are lots of languages--including English--that have pronunciation information, whether through IPA or otherwise, indicated on their forms. The big issue of course is that adding this data is not always possible to perform efficiently--for instance, I'd love to have Yiddish pronunciation respellings from Paul Abelson's dictionary on as many English forms as possible, but this dictionary not being previously processed makes this difficult. The data set you have brought up, if a suitable reading of [[:m:Wikilegal/Lexicographical_Data]] allows it, could be added as {{P|7243}} statements on various English forms. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 23:20, 20 April 2026 (UTC) ::Well, sorry... I haven't witnessed these pronunciation statements before, I wasn't aware of their existence until you pointed it out. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 15:02, 21 April 2026 (UTC) :I got 1,900,000 characters into [[Z33875]] before the UI gave up on me. I'm not sure what the limit is. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 15:21, 21 April 2026 (UTC) == Could not serialize input JS object: Number <small><small>[insert tested number here]</small></small> == I'm not one to throw my problems at others, but I have no idea how to fix this. Am implementing {{Z|Z24602}} in JavaScript, which requires returning a typed map. It now works for every type of value except numbers. Tried explicitly converting the numbers to float64, but either way it throws the error above. Would appreciate it if anyone could diagnose or fix the problem, as my knowledge of Wikifunctions is amateur at best. Thank you. [[User:Some helpful person|Some helpful person]] ([[User talk:Some helpful person|talk]]) 00:32, 23 April 2026 (UTC) :The quick answer is that like some list-related functions, code implementations returning typed maps are not possible unless the type of the objects in the map is specified in the function signature (e.g. if it was a map from Strings to Natural numbers only). So unfortunately, I think you've chosen a function that is not really possible at the moment. There are a few ideas of how we might address this, but for the moment, work on something else. Sorry! --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 13:21, 23 April 2026 (UTC) :Maybe explicitly using [[Z13518|natural numbers]] would work? I would try using <code>{ "Z1K1": "Z13518", "Z13518K1": "[number]" }</code> to represent numbers, perhaps, and seeing if that works. Of course, you would also probably have to adapt this for other types that cannot be serialized, and I'm not sure how easy that would be to generalize (assuming [[w:Don't repeat yourself|DRYness]] is desired). &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 14:39, 23 April 2026 (UTC) == Help with creating a function for Abstract Wikipedia == Hello! I was inspired by {{Z|Z26570}} to create {{Z|Z33975}}, however I'm not sure how I add specific language implementations here. Can anybody help me? [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 10:41, 23 April 2026 (UTC) : I think I figured it out, I created a new object with the language config type, added {{Z|Z14310}} to my implementation, and added a new function for English... At least I think that's how it works... [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 13:16, 23 April 2026 (UTC) ::You have the right idea, as far as I know. I went ahead and connected the implementations you created as they appear to work fine for English, and added a test for {{Z|Z33975}} (which passes [[File:Twemoji 1f601.svg|24px]]). I also corrected an error you made on the config object where you appear to have accidentally connected English to {{Z|Z33975}} instead of {{Z|Z33977}}. Thank you for contributing! &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 13:45, 23 April 2026 (UTC) ::: {{re|Theki}} Thank you so much for you help! Could you please kindly also connect the implementations for {{Z|Z33986}} which I just made, which is going to be used for the Hebrew implementation of {{Z|Z33975}}. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 14:11, 23 April 2026 (UTC) ::::You seem to be returning the wrong type in both implementations. Functioneers should not connect implementations that don't work for non-functioneers. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:13, 23 April 2026 (UTC) ::::: {{re|Feeglgeef}} Oh thank you for pointing that out! I am still a bit new to this project and confused, so I need to read up some more about this. How do I return a monolingual text object? [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 14:17, 23 April 2026 (UTC) ::::::I'm trying to fix it for you, the construction of ZObjects in code implementations is a bit difficult right now. Since the State origin using entity and class function will (presumably) be composition, perhaps {{Z|33975}} can be adjusted to return a string, using {{Z|26107}} and {{Z|26107}}? [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:21, 23 April 2026 (UTC) :::::I did not notice any discrepancies from looking at the functions by themselves, and it seemed to work fine on my end. Is it bad practice for NLG functions to return the monolingual text type? I had assumed it was logical. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 14:24, 23 April 2026 (UTC) ::::::Both implementations are failing all three tests on my end. No consensus has been established as to whether monolingual texts or strings should be used, so it's like the [[w:War of the currents|war of the currents]] but for Wikifunctions. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:27, 23 April 2026 (UTC) :::::::Oh, you were referring to {{Z|Z33986}}. I assumed you were stating that something was wrong in the earlier English functions that I missed; I apologize for the misunderstanding. Has there been any centralized discussion on this string vs. monolingual text issue? &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 14:31, 23 April 2026 (UTC) ::::::::Not that I'm aware of, I've brought it up on the telegram twice before, though. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:49, 23 April 2026 (UTC) ::::::::The centralised discussion is at [[WT:Abstract Wikipedia/2025 fragment experiments#Proposed recommendation: Fragments should return Z11/monolingual strings]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 07:19, 24 April 2026 (UTC) ::::::: {{re|Theki|Feeglgeef}} Can only functioneers test implementations? For me I can't test it at all... [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 14:32, 23 April 2026 (UTC) ::::::::AFAIK, test cases are only immediately testable during editing of a function if they are connected. This is one of my personal pain points with Wikifunctions, iterating on functions without exhaustive connected test cases makes debugging practically impossible for non-functioneers working on newly-created functions... I (or Feeglgeef) can quickly connect the tests you need for you if you want, although if they are not well-formed they may need to be disconnected again afterwards. Additionally, I could temporarily connect the implementation you are writing so that you can test it on the sidebar as you work, but I'm not sure if this is advisable. That functionality is also something that unfortunately only works when not disconnected. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 14:43, 23 April 2026 (UTC) :::::::::Yup, agree with you on all points, thanks. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:48, 23 April 2026 (UTC) == Please disconnect implementation == I think I've fixed my issue with {{Z|Z33986}}, but I can't edit an actively connected implementations with my rights. I must admit it is an AI-aided fix, I feel very strongly about disclosing that. Courtesy pinging [[User:Theki]] and [[User:Feeglgeef]]. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 18:51, 23 April 2026 (UTC) : Additionally, I think the JS might be working. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 18:52, 23 April 2026 (UTC) : Just to clarify, I mean disconnect the Python implementation please. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 18:53, 23 April 2026 (UTC) :{{Done}} I've disconnected the Python implementation. :I've also added a couple of tests. The rule is a bit more complicated than adding a maqaf before every character that is not a Hebrew letter. Unfortunately, I don't think I'll have time to fix the implementations any time soon. [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 19:03, 23 April 2026 (UTC) :: Thank you! :: Also, for some reason I thought you put a maqaf before all gershayim, so thanks for correcting me. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 19:09, 23 April 2026 (UTC) :::No, that's not the rule. :::The rest of this reply is an [[:wikt:info-dump|infodump]], feel free to ignore it :) :::In [https://hebrew-academy.org.il/topic/hahlatot/punctuation/ the Academy's punctuation rules], the rule for adding a maqaf is written kind of badly: שמים מקף ברצף שיש בו שני סוגי גופנים, כגון אותיות ומספרים ("maqaf is added in a sequence in which there are two types of fonts, such as letters and numerals"). These are not different types of "fonts", but different types of characters, and I should email them about it. It gives the examples <span lang="he" dir="rtl">ה־12</span> and <span lang="he" dir="rtl">ב־DNA</span>. It doesn't say anything explicitly about quotation marks, but in other places on the same page, you have stuff like <span lang="he" dir="rtl">ב"הארץ"</span>, and from that I deduce that a maqaf is not needed before double quotes if there are Hebrew letters inside the double quotes. :::That said, a few people do think that there must be a maqaf before double quotes. I have a somewhat surprising example of somebody who always does it: translators of Scientology materials into Hebrew. At least that's what they did last time I looked at them, about ten years ago. Those people are certainly prolific, and they get points from me for consistency, but this not the prevalent standard. (And if I recall correctly, they use the minus and not the proper Hebrew maqaf, and they don't get any points from me for that!) :::Also, the name of the character is just "double quotes" and not "gershayim". Gershayim are mostly for abbreviations, although most people use the same character for them. I use ״ for gershayim, as do a few other nerds, but we're the minority. [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 19:35, 23 April 2026 (UTC) :::: {{re|Amire80}} Yeah, "font" is a weird choice of wording here by the Academy...<br> I think I'll follow your guidance and not use a maqaf for quotes beginning with Hebrew letters. <br> I should also add more tests for different types of quotes, like straight (", '), curly (“, ”, ‘, ’), gershayim (״, ׳), including single quotes.<br> P.S. gotta deduct points from Scientology for being a cult but that's neither here nor there [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 20:49, 23 April 2026 (UTC) :::: {{re|Amire80}} Courtesy ping because I mistyped your username on the last message. Anyways I'm also gonna do that tomorrow because I'm tired now... [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 20:50, 23 April 2026 (UTC) == Connect implementations == Hello! I'm done with the implementations of {{Z|Z33986}} both in JS and Python, and all tests pass. Pinging @[[User:Amire80|Amire80]] to check if all the tests I've added are alright. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 15:24, 24 April 2026 (UTC) :Connected. It's possible that some more changes will be needed, but it looks OK now. :Another little comment: It should be called "clitic" and not "prefix". [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 15:56, 24 April 2026 (UTC) : {{re|Amire80}} Thanks for your comment! Luckily labels are easy to edit, so I'll get to it. : Currently I'm working on Bulgarian {{z|Z34072}} and {{z|Z34084}}, along with other Bulgarian functions. After I'm finished with those I'll take your advice. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 16:01, 24 April 2026 (UTC) == Please connect my Bulgarian implementations == I recently created the following Bulgarian functions: * {{Z|Z34070}} (currently broken, I think because another function I built it upon is unimplemented) * {{Z|Z34088}} * {{Z|Z34105}} * {{Z|Z34072}} * {{Z|Z34084}} Can somebody please connect these functions, and perhaps suggest other functions I could localize? [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 19:03, 24 April 2026 (UTC) : Specifically, [[Z34070]] is based on [[Z34072]] [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 19:05, 24 April 2026 (UTC) :{{done}} for everything that passes, [[Z34070]] still does not work after purging WF's cache, though. For future reference, please request on the [[WF:Community portal|community portal]] instead of the project chat. Thank you for your work! [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 20:03, 24 April 2026 (UTC) :: {{re|Feeglgeef}} Thank you for your help! I will keep in mind to go to the [[project: community portal| community portal]] in future instead for this. :: I still don't understand why {{Z|Z34070}} fails... It's implementation is almost completely identical to [[Z30399]] from {{Z|Z30397}}, unless I messed something up... [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 20:11, 24 April 2026 (UTC) :::{{done}} No, it was mostly just timing out. It is better to use selective fetches where possible. One case is failing to match the expected results, but at least it is returning something. For all I know, it might even be acceptable! [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 20:35, 24 April 2026 (UTC) :::: {{re|GrounderUK}} Thank you so much for your help! The one failed case is with a definite article, so I feel like that might be fixed in the future... <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 20:43, 24 April 2026 (UTC) == Editor experience suggestions == I'm a bit frustrated with the editing experience on Wikifunctions, and I have suggestions based on pain points I've had contributing to this project: * Adding a wizard to create functions, implementations, and tests in one flow, somewhat like Wikimedia Commons' upload wizard * A sandbox for experimenting without changing mainspace functions, and maybe letting non-functioneers connect implementations ([[Project: Sandbox]] doesn't seem to fit this) * We could have functions for creation based on the sandbox, like how Wikipedia has articles for creation and edit requests, * Maybe even another test instance of Wikifunctions, like how Wikidata has [[testwikidata:|Test Wikidata]] I really like this project and I don't mean to whine, but it certainly has a lot of pain points both for technical and non-technical people. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 20:41, 24 April 2026 (UTC) : It's also really complicated to localize functions, so maybe we should add another wizard for that, where you can choose a language, and then create the new function with the aforementioned function wizard, and it just automatically adds it to the related language configuration object of the related function. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 20:48, 24 April 2026 (UTC) :# Sounds good to me. :# A sandbox available is [[Z10119]], though an extension-provided sandbox that allows you to manipulate the types, code, and tests easily without interfering with the mainspace would be nice. :# [[WF:Suggest a function|This page]] works to some extent, though it's too messy in my opinion. :# We used to have a "beta cluster" but it [[phab:rOMWC5f625c5846b5f779473fa32c9a02d87e59215dfa|got shut down]] just over a year ago because it was broken. :[[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 21:07, 24 April 2026 (UTC) == Language parameters in language-specific functions == I think that an effort should be made to give the different natural language options corresponding to different English dialects, Chinese scripts, etc. more of a use (I added the test {{Z|Z34119}} to {{Z|Z26095}} and unsurprisingly it fails). There are two main problems with this approach that I can identify: * If you ask the majority of these functions to make a sentence in British English, much of the time it will give you an output with missing words, because it does not fallback to English labels in the case of a British English label for that item missing. The same applies for every other English dialect, British English is just an example here. * Uninformed editors will probably see the presence of a language parameter on these functions, consider it redundant, and remove it. [[Special:Diff/268074|I have made this mistake before]]. In my opinion, in a perfect world, all of these language generation functions would output monolingual text, and if the user asks for American English text, then American English text is what they'll get. If the user asks for Japanese text in hiragana specifically, then that's what they'll get in return. This is not as high-priority as just rendering text in the language plainly in the first place, but it's something that I feel is still worth devoting some effort to. Right now switching functions to use this paradigm is difficult because, on the one hand, I don't know if consensus tends towards this direction being ideal or advisable, and I don't want to make changes like this without at least notifying the wider community. In addition, all tests break once a parameter is added or removed, and the function editor does not recognize the change in number of parameters and therefore you have to remove the function call, re-add it along with all of its parameters it had previously (which is a tedious cut-and-paste job), and then it will work again. This is something that you can do in five seconds by just adding a few lines of JSON to the test source, but this is not directly editable from the Web browser. This tedium is largely what's preventing me from doing this on a larger scale, besides asking for comments first. If anyone has any insights or comments on this, then that would be appreciated. If a reference of functions with and without the support for language variants is needed, of course [[WF:NLG]] can be perused, but I've also my own list cataloged at [[User:Theki/functions#language]]... Of course, this thread has many similarities to [[#"language" argument for certain functions|the one above]], but this concerns me going out and making this consistent across these NLG functions. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 21:09, 24 April 2026 (UTC) :I've created {{Z|Z34122}} as an extension to {{Z|Z34039}} for larger functions. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 21:34, 24 April 2026 (UTC) :Just to confirm that I, for one, support a Natural language parameter for all natural-language functions. The concern about getting them all aligned is just that we haven’t finally settled on {{Z|Z11}} being preferred to {{Z|Z89}} or some other type that conserves the text’s provenance, so we risk having to change them all again. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:07, 25 April 2026 (UTC) == “Key not found ()”? == What am I doing wrong in {{Z|Z34137}}? [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 00:39, 25 April 2026 (UTC) :You were passing a [[Z6091]] to {{Z|32290}}, but it takes a [[Z6001]]. Fixed. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 07:10, 26 April 2026 (UTC) ::{{done|Thank you}}! [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 14:13, 26 April 2026 (UTC) == Why is my test failing? == Hello! I recently made {{Z|Z34139}} based on [[wikt:Module:bg-translit]], and the test case {{Z|Z34141}} is failing on both implementations, despite the expected output and actual output being the same as far as I can tell. I tried looking at the Unicode codepoints of the output, but those are also identical. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 06:21, 25 April 2026 (UTC) :Yes, it’s a tricky one. I’ve added a normalize step to the result validation in {{Z|Z34141}}, which confirms it is a normalization issue. It looks like it is in the code but I don’t know whether simply normalizing the result is the way to go. Logically, you would normalize both the input and the result. The implementations of {{Z|Z10384}} show you how to do this. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 09:41, 25 April 2026 (UTC) == Edit request == Hello! I have an edit request for {{Z|Z23752}} and {{Z|Z23414}}. Please replace all the "an/a" logic with <code>Z21739(Argument reference)</code>, both for readability and for more accuracy ("a university is an institution") <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 09:50, 25 April 2026 (UTC) :{{D}} [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 12:24, 25 April 2026 (UTC) == Wikifunctions & Abstract Wikipedia Newsletter #245 is out: The Foundation's search for the perfect language == There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-04-25|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it! In this issue, we present an academic paper about Abstract Wikipedia, we discuss our latest Type created, and we take a look at the newest created functions. 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]]) 09:54, 25 April 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=30325620 --> :@[[User:Sannita (WMF)|Sannita (WMF)]], @[[User:DVrandecic (WMF)|DVrandecic (WMF)]], technical meta-question: the newsletter quotes the article: ::the only way to contest its algorithm is to click 👍 or 👎 (Crawford and Gillespie 2016) :This quotation sounds sensible, but the article's [https://link.springer.com/article/10.1007/s00146-026-02899-w web version], and the PDF that is downloadable from the same page doesn't actually show the emojis. It rather shows text that looks lacking: ::the only way to contest its algorithm is to click or (Crawford and Gillespie [https://link.springer.com/article/10.1007/s00146-026-02899-w#ref-CR14 2016]) :Where did you get the emojis? Is it your (probably correct) guess or is there a version somewhere that actually shows the emojis? [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 15:16, 25 April 2026 (UTC) ::Scratch that. I've found a version with correct emojis: https://wikihistories.github.io/wikilambda-the-ultimate/ [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 15:37, 25 April 2026 (UTC) == Requested deletion of test == Please delete {{Z|Z34143}}. this was never valid Bulgarian, I messed up. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 10:19, 25 April 2026 (UTC) :[[WF:RFD]] please. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 16:40, 25 April 2026 (UTC) == Request for comment (global AI policy) == <bdi lang="en" dir="ltr" class="mw-content-ltr"> A [[:m:Requests for comment/Artificial intelligence policy|request for comment]] is currently being held to decide on a global AI policy. {{int:Feedback-thanks-title}} [[User:MediaWiki message delivery|MediaWiki message delivery]] ([[User talk:MediaWiki message delivery|talk]]) 00:57, 26 April 2026 (UTC) </bdi> <!-- Message sent by User:Codename Noreste@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30424282 --> == Is it OK to connect the implementation? == Hello! I recently applied for functioneer on [[WF:RFG]], and I was wondering whether I could connect the implementation for {{Z|Z34165}} despite its dependency {{Z|Z34149}} being currently unimplemented. That is <em>if</em> I get accepted. I am planning on implementing it based on [[wikt:module:bg-nominal]], but am still having trouble figuring it out for now. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 09:04, 26 April 2026 (UTC) == Past tense function == Is there a function like {{Z|Z26039}}, but for the past tense (e.g. "Leo Tolstoy <em>was</em> a writer.")? If not, I will create it myself, I just want to make sure there's not a duplicate. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 10:10, 26 April 2026 (UTC) : {{Done}} with {{Z|Z34224}}, but I have a few kinks to work out with it. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 10:35, 26 April 2026 (UTC) :: I need to create some other similar functions for the past tense, I have some ideas: ::* {{Z|Z26095}} ::* {{Z|Z32643}} ::* {{Z|Z28016}} ::* {{Z|Z26570}} ::* {{Z|Z33975}} ::* {{Z|Z27243}} ::* <ins>{{Z|Z26627}}</ins> ::* <ins>{{Z|Z27627}}</ins> ::* <ins>{{Z|Z27173}}</ins> ::* <ins>{{Z|Z29591}}</ins> :: :: Are there any I have missed? <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 10:57, 26 April 2026 (UTC) :I think that here we are starting to walk on dangerous waters: what does past mean? Is it a recent o a far past? Does it have ripercussions on the present or not? Is it just a thing that happened once, many times or for a continuative period of time? :Consider that various languages distinguish between many different types of past. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 12:38, 26 April 2026 (UTC) :: {{re|Dv103}} That is a fair point... :: How do we go about solving this problem though? I don't think having every sentence on Abstract Wikipedia be "X is a Y" is a very good idea. :: Maybe we have different functions for all these variations of past you mentioned that just map into "X was a Y." in English? <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 13:31, 26 April 2026 (UTC) :::To properly solve this problem, we should use a more complete abstract content representation model, like for example the proposal of [[Wikifunctions:Type proposals/Semantic unit|Semantic units]] (look at [[Wikifunctions:Type proposals/Semantic unit/Douglas Adams|the example]] to see how times could be handled). For now, since we're still stuck with single fragment generation functions (that I hope will be slowly replaced with the complete represenation model, when available), we could just restrict your function to a very specific meaning, like "subject was an instance of, for most of its existence" (which means for example that it could be used to say "Douglas Adams was a writer", but not "Abraham Lincoln was a president", since he only was a president for 4 years). Probably my definition is still too vague, and this is why we need to go beyond these fragment generating functions. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 19:47, 26 April 2026 (UTC) ::Nitpick... I don't like that it outputs a string instead of monolingual text. With {{Z|Z26039}} it's used so much that I think it's unfixable in that case beyond deprecating it if people care that much, but {{Z|Z34224}} doesn't even have any connected implementations yet. Consider it, maybe? ::Nitpick 2... {{Z|Z34227}} is missing a language parameter. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 16:08, 26 April 2026 (UTC) ::: I will consider that! ::: I just did that because that's what {{Z|Z26039}} does, so I assumed I should follow suit with it. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 16:48, 26 April 2026 (UTC) == Legacy functions == If and when more robust methods of abstractly representing and generating linguistic content come around, and more efficient ways of creating abstract content are devised and implemented, I suspect that our current methods will require some form of deprecation. This is a significant source of concern for me in relation to WF and AW, questioning how prone our current methods of doing things are and eventually will be prone to obsolescence, and how it will be worked around when it comes. We have over 1 250 articles on AW presently, and these are rather all over the place. I suspect the maintenance burden from keeping these articles up to code will eventually, err, creep up on us, I suppose, and some kind of major refactoring will be necessary. We are definitely in a period of experimentation and whatnot right now but eventually, like with enwiki, some sort of structure and rigor will form and I suspect it will start to become rather boring for me... I, for one, very much enjoy experimenting with new and better ways to do things here. I don't personally mind changing things to use a new and better paradigm if need be, that sort of thing highly excites me, but of course there will be things that are left behind, and I suspect maybe bots will be employed to deal with this? A lot of Wikipedia sister sites seem to do that, e.g. going and fixing up use of deprecated templates. Considering the nature of Wikifunctions and Abstract Wikipedia I suspect certain maintenance tasks will be made simpler or even trivial by the typical uniformity of our implementations. I guess I am just concerned if Wikifunctions or Abstract Wikipedia will ever accrue its own kind of "technical debt" with how we are plowing through things presently, and if there is a plan for how we will eventually seek to mitigate that. Maybe too early to ask this question, but I am a notoriously anxious person, so I thought it wouldn't hurt to raise the question regardless... &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 21:30, 26 April 2026 (UTC) :I very much agree, thank you for expressing my position so well. {{ping|Immanuelle}} has been using an AI-generated tool (well, they haven't edited in a week, perhaps it's a break or perhaps they don't wish to contribute to the project any more) to create a bunch of articles en masse, which I have warned them multiple times is a bad idea (on top of evolving functions, all of the articles are one-sentence-per-paragraph, [[abstract:Q12184|like so]]). That's why I've been avoiding creating articles recently, I'd say I have a good fourth (no data to support, rough guess) of the comments on the wiki, yet less than a percentage of the article count (only three, including the [[abstract:Q319|first article]], though, so perhaps I'm the next [[w:Special:Permalink/908493298|office.bomis.com]]). [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 19:41, 27 April 2026 (UTC) :: I feel that the overwhelming presence of these low-quality articles (which I admit I myself am [[abstract:Q1710970|guilty]]/[[abstract:Q7601858|of]]/[[abstract:Q39338|creating]], usually as testbeds) may incur a large maintenance burden. I do expect them to be easy to detect, however, as searching for the presence of "deprecated" NLG functions is trivial, and it is possible that replacing them with their future ''even abstracter&trade;'' counterparts could be done automatically since they all have the same signatures and can be expected to create the same form of sentence. If it needs to be done manually for a while or for certain delinquent instances, my hope is that it will be fun, at least for a while. :: I just hope that these hypothetical future waves of "this new and versatile way of abstractly representing linguistic content" obsoleting previous methods and requiring refactoring across all articles is only a one-time thing. We should strive to be as robust and flexible as possible from the outset as each brand new paradigm of abstraction is also a brand new maintenance burden for updating old articles. At the end of the day, at least ''some'' of these articles will still render to many different languages even if their methods of creating those sentences of theirs is completely outdated. Ergo, the time it takes for the switchover to be performed across our articles should not be a persistent inconvenience for users (as, of course, they will always still be able to read the content as it was before since these legacy functions aren't being deleted outright), and the increased availability that the new methods will bring about will likely act as motivation for them to join the effort in refactoring (&#x300C;You're telling me that if I rewrite this article in this cool Lisp-looking stuff then I can probably read it in [[abstract:Q9307|Galician]]?? COOL!&#x300D;). &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 20:26, 27 April 2026 (UTC) :::Totally agree. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 02:54, 28 April 2026 (UTC) :::My vague plan is to implement a default function returning an {{Z|Z89}}, for each language-neutral function. A single function would convert any of these to a {{Z|Z11}}, so that a composition of the two can be implemented as the current default until such time as the language-neutral function is ready to return a [[Z89]]. We can already convert a [[Z11]] to a [[Z89]] so, although there is more to be done in this space, existing language-specific functions could be adapted to return a [[Z89]] quite mechanistically. :::Although we certainly could deliver parallel Z89 functions for each existing Z11 function, I don’t think we should assume that particular outcome. Provided the Z89 captures a lang attribute from the Z11’s language tag, the two representations should be largely interchangeable, although I am expecting a Z89 to carry additional attributes at the span level that would be lost on conversion to a Z11 (along with any higher-level tags and attributes). :::When I say there is “more to be done in this space”, I am referring to a new type that would allow HTML fragments to be represented as tractable Wikifunctions objects, but this is currently drafted only in my head! [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:21, 29 April 2026 (UTC) == Filtering types of objects == Hello! I have tried to comb through my own edit history several times, but it's really hard to search for specifics because there's no differentiation between different types of objects (functions, implementations, tests, etc.) in the logs as far as I can tell. Am I missing anything? I want it to work sort of like how filtering by namespace works. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 16:48, 27 April 2026 (UTC) :There is differentiation, it's just rather hard to look through. Since all ZObjects are just JSON data at their core, you can search for instances of <code>{ "Z1K1": "Z[type]"</code>. I haven't tried this so I'm not sure how well it would work and I know MediaWiki search syntax treats quotation marks as a special character, but I have seen Wikifunctions pages link to searches using this before. There is also [[Special:ListObjectsByType]] but it is sitewide rather than specific to your edit history in particular. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 18:59, 27 April 2026 (UTC) ::''[It doesn’t help directly here, but please see [[WF:Find]] for more details of how this works.]'' [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:24, 29 April 2026 (UTC) :See the feature requests [[phab:T399244]]/[[phab:T373735]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 06:06, 28 April 2026 (UTC) :The lack of filtering edits by namespace is exactly the problem that I was trying to solve with the [[User:Amire80/wikifunctionsanalytics]] tool. :I even kind of succeeded, but it has two major problems: :# It doesn't have any real frontend, so you have to know some SQL to use it (or ask other people who know SQL). :# It doesn't get information from the live site, but from the dump, which appears to be updated once a month. :I've made a [https://quarry.wmcloud.org/query/104794 sample query for you]. Unfortunately, it won't do anything at the moment because of the second problem—your edits started in April 2026, which isn't over yet, so the dump for it hasn't been processed. But I hope that early in May you'll be able to use the same query and see something useful. :(I plan to add support for recent edits, but I haven't done it yet. Now that I more or less figured out how to process Wikifunctions edits, I'm focused on trying to understand Abstract Wikipedia edits. Processing up-to-date edits from both sites will possibly be the next thing I work on, but if you know some Python and want to try doing it yourself, don't wait for me—[https://gitlab.wikimedia.org/toolforge-repos/wikifunctions-analytics Patches welcome].) [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 18:51, 28 April 2026 (UTC) ::@[[User:QuickQuokka|QuickQuokka]], I've just updated the data until the end of April. Now the query to which I linked above gives some results. You can also try running other queries if you know SQL. (Or try asking for other queries if you don't.) [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 03:26, 3 May 2026 (UTC) == [[Z34213]] == I'm not quite sure why this implementation is failing. Could someone take a look? [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 02:24, 28 April 2026 (UTC) :I've [https://phabricator.wikimedia.org/T419933#11863997 notified] the team that this is still occurring, the issue was marked as resolved. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 02:52, 28 April 2026 (UTC) :Some useful tips: :* create more testcases: sometimes it is a random error, so try to see how consistent it is between testcases :* your implementation is very inefficient, since it fetches items and lexemes a lot of times. Ideally, each item and each lexeme should be only fetched once in all the execution tree. :[[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 06:06, 28 April 2026 (UTC) ::Caching (''should?'') means that the lexeme and item data are cached, so the call doesn't actually execute multiple times. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 17:51, 28 April 2026 (UTC) :::Are lexemes and items actually cached within the same function execution? Even if they are only partially fetched and/or fetched in bulk? [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 17:54, 28 April 2026 (UTC) ::::I don't have any evidence to prove that it works but that's definitely A. what's supposed to happen and B. the ideal behavior. This happens because the Z680X functions can be cached just like any other. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 18:02, 28 April 2026 (UTC) ::::It is unclear. In general, I believe identical branches are resolved only once in orchestration, but there is also independent caching of Wikidata fetches. ::::According to @[[User:DMartin (WMF)|DMartin (WMF)]] ([https://t.me/Wikifunctions/30374 on Telegram]): ::::<blockquote>Well, no. We have caching of Wikidata entities that have been retrieved, but not of the results of nested function calls. There is a proposal for doing this in the context of the V2 composition language, when it's a bit more mature, and it's regarded as a relatively high priority.</blockquote> ::::It’s hard to tell whether fetches in nested calls are, in fact, cached and available for other nested calls in the same call, since it is not generally the actual fetch that consumes the most resources. Rather (I believe), it is construction and transmission of the result object, which is currently repeated afresh in each nested call (unless it is in an identical branch). ::::I hope that’s clear, and I apologise in advance if it happens to be inaccurate! [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:16, 29 April 2026 (UTC) :::::Oh, I should clarify.  There is a lot of caching going on, in several different places.  Lexemes and items ''are'' cached by the orchestrator within the same function execution, even if they are only partially fetched and/or fetched in bulk.  When I said that we don't have caching of the results of nested function calls, I meant that's not happening in general, for all nested function calls in compositions.  But fetching of Wikidata entities gets special treatment, so yes, fetched content from Wikidata is cached, regardless if it was fetched by a top-level call or a nested call. :::::It is also true that the construction of a ZObject from the fetched JSON might happen more than once within the same function execution, depending on how a composition has been structured. However, the construction of the ZObject is actually very fast, compared to the elapsed time of getting the JSON from Wikidata. [[User:DMartin (WMF)|DMartin (WMF)]] ([[User talk:DMartin (WMF)|talk]]) 18:04, 1 May 2026 (UTC) == Question about cardinal numbers == I was about to edit {{Z|Z16435}} to add my function {{Z|Z34308}}, but I noticed that none of the other functions have a gender parameter. Should I create a new wrapper function "Bulgarian cardinal, neuter", or should I just remove the gender parameter and always return neuter? <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 10:39, 28 April 2026 (UTC) :The “cardinal” functions should return the words used for “counting” numbers in the abstract. :We should consider converting them to return a {{Z|Z11}} rather than a {{Z|Z6}}. It may even be appropriate to return a {{Z|Z12}} to cater for language variants. Either way, I think that would be the approach to adopt for inflected forms, unless reference to specific lexeme-forms is required. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 12:52, 28 April 2026 (UTC) ::This. If a native of your language were to count up, which form would they be most likely to use? [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 13:29, 28 April 2026 (UTC) ::: {{re|GrounderUK|Feeglgeef}} Thanks for both your input! ::: I relabeled the aforementioned function to {{Z|Z34308}}, and created a new wrapper function {{Z|Z34457}}. ::: Should I specify that my old function is a monolingual text in parentheses? <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 16:26, 28 April 2026 (UTC) ::::You don't have to, unless you think that is something that would require distinction when viewing the function in a list of search results &c. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 16:36, 28 April 2026 (UTC) == Optional/nullable function parameters == Hello! Recently, I was informed that Wikifunctions has no optional/nullable function parameters as of now. Are there any future plans to support this, and/or workarounds? Maybe create a union type system like "{{Z|6}} or {{Z|23}}". <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 17:53, 28 April 2026 (UTC) :What I do for this is use an "is empty" function corresponding to the type of the parameter in an If statement. If it isn't empty, the function works as intended. Otherwise, it does something else. [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 17:58, 28 April 2026 (UTC) :Unions are not a thing (yet) on Wikifunctions, but you can always define an argument of type {{Z|Z1}}, which means that all types are allowed (I already did this for {{Z|Z26737}}; note that it is still a ugly workaround, don't use it for high level functions). Also, note that usually on Wikifunctions we use {{Z|Z24}} as the null value. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 18:00, 28 April 2026 (UTC) :: {{re|JJPMaster|Dv103}} Thanks for your help! :: @[[User:Dv103|Dv103]] told me a function call with a missing parameter is treated as an invalid function call, so how does the "is empty" function work with that? :: Also, setting the type to {{Z|1}} seems naive, like setting the type as <code>any</code> in TypeScript... :: Related question: Are there plans to add default values to parameters (outside of "if empty")? <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 18:19, 28 April 2026 (UTC) :::Setting the type to {{Z|Z1}} is actually naive, and that's why I advised you to only use it for low-level functions. Currently there is nothing better. Sometimes, type correctness is not actually checked, so it might seem that nullable types are possible. But it is still an hack, and it could broke anytime since it is not intended behavior. :::I don't think that there are current plans to add default values (but correct me if I'm wrong). The closest thing that comes to my mind is that, if you incorporate Wikifunctions into Wikitext, you can leave empty some fields (only of some specific types) and Parsoid will replace them to their default value. This is done only depending on the type, and not on the functions. For example, {{Z|Z6091}} and {{Z|Z6001}} are assigned the QID associated to the page, and {{Z|Z20420}} is assigned the current date. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 18:56, 28 April 2026 (UTC) :::@[[User:QuickQuokka|QuickQuokka]]: At the very least, [[Z10008]] accepts a null input. Maybe that feature is unique to the String type—I am not sure. [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 19:10, 28 April 2026 (UTC) ::::I think it's just not checked, but it shouldn't be intended. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 19:20, 28 April 2026 (UTC) ::::Strings and typed lists can be “empty” in the sense that their length can be zero. Typed pairs may also be “empty” in a degenerate sense, but such an object will not be returned from a code implementation. A typed map with no entries will also fail to be returned from code, although it is fine in compositions. ::::For a genuinely optional parameter, I prefer a properly typed list, which at least encourages an argument of the correct type. {{Z|Z813}} is also typically faster than {{Z|Z10008}}. Quite a good example of this approach is {{Z|Z23723}}, where it helps to resolve the type union (using [[Z1]]) for both Z6003K1 and Z6003K3. Of course, there’s nothing to prevent more than one element in the list, but additional elements are easily ignored. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 22:55, 28 April 2026 (UTC) :Pinging {{ping|Jdforrester (WMF)|prefix=|p=}}, I believe there are no current plans. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 19:02, 28 April 2026 (UTC) ::@[[User:QuickQuokka|QuickQuokka]]: I'm afraid there are no current plans to build out optional params, indeed; we would be happy to review this if a compelling case was made, but it'd be a lot of work to re-build the [[Wikifunctions:Function model|function model]] with that support and ensure we don't break (too many) things. [[User:Jdforrester (WMF)|Jdforrester (WMF)]] ([[User talk:Jdforrester (WMF)|talk]]) 19:11, 28 April 2026 (UTC) == Z6830 for Chinese == I was trying to use {{Z|Z6830}} for implementation in the Chinese-language. And turns out most of the Lexeme on Wikidata is using [[d:Q727694]] as the language instead of [[d:Q7850]]. This makes it impossible to use the mentioned function above, since Standard Chinese is not available (or did I miss something?). Is there a way to fetch lexemes with language=[[d:Q727694]] from item? [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 18:20, 30 April 2026 (UTC) :@[[User:Sun8908|Sun8908]] There is [[Z1006]] for Chinese and it has the language code zh. There is an overview of languages in [[Module:Wikifunctions label]] so you can search there for chinese versions and choose the one you need. [[User:Hogü-456|Hogü-456]] ([[User talk:Hogü-456|talk]]) 20:53, 5 May 2026 (UTC) == Key not found error == Is there a reason why I am getting key not found error for this [[Z34677|function]] {{Z|Z34677}}? All the underlying functions run and all the test cases work. The debug information does not give more details. Any pointers? Thanks in advance [[User:Jsamwrites|John Samuel]] 19:24, 1 May 2026 (UTC) :It was passing the [[Z6091]] to {{Z|34641}} when that takes a [[Z6001]]. I've fixed that, but there's some other problem with the logic, so I've left it disconnected. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 19:42, 1 May 2026 (UTC) ::@[[User:YoshiRulz|YoshiRulz]] Thanks a lot. [[User:Jsamwrites|John Samuel]] 20:21, 1 May 2026 (UTC) == Wikifunctions & Abstract Wikipedia Newsletter #246 is out: Request for input: what should we count for Abstract Wikipedia == There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-05-02|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it! In this issue, we ask you what would be the relevant metrics for Abstract Wikipedia, we discuss our latest news on 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]]) 12:21, 2 May 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=30325620 --> == Any formal process for deletion of pages == Does a formal process exist for the deletion of functions, implementations, and tests that includes a notification system for creators, analogous to Wikidata’s process, explaining the rationale behind the deletion (or proposal for deletion)? [[User:Jsamwrites|John Samuel]] 12:36, 3 May 2026 (UTC) :Does [[Wikifunctions:Requests for deletions]] work? [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 13:00, 3 May 2026 (UTC) :Please see the discussion at [[Wikifunctions talk:Requests for deletions#Should we expect Objects' creators to get pinged on deletion proposals?]]. :As I see it, it is the proposer’s responsibility to consult appropriately before making a request and we expect our administrators to act only when satisfied that appropriate consultation has occurred. In many cases, no consultation is required. Administrators may delete their own contributions without making a request, but this is not a practice I would encourage. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 13:51, 3 May 2026 (UTC) == Implementation of rational number in JS doesn't match in Z19677 (Rational number) and Z28579 (RGBA colour) == In {{Z|19677}} it's <syntaxhighlight lang=js> { "K1": sign * numerator, "K2": denominator } </syntaxhighlight> but in {{Z|28579}} it's <syntaxhighlight lang=js> [ sign * numerator, denominator ] </syntaxhighlight> '''<span style="font-family:Iosevka,monospace">[[User:沈澄心|<span style="color:#9f3526">dring</span>]][[User talk:沈澄心|<span style="color:#534fa3">sim</span>]]</span>''' 05:15, 4 May 2026 (UTC) == Nested functions in compositions == I wish it will be easier to a add another function about a specific existing function in a function implementation based on a composition. When I write long functions in spreadsheets I usually stat with a small part and then I try to go further and after important steps I test if the output is as expected. I created [[Z34826]] to get the German gender specific occupation lexeme for a specific person based on their gender. I wanted to add a function around the existing one and it was not successful. It is not very easy to implement as it requires the possibily to move a part to another section but I think it can be helpful if it will be implemented. So far I spend more time as expected on the function. Describing it with words what the function needs to do is much easier than implementing it here in Wikifunctions. So I think there needs to be improvement to make Wikifunctions more accessible. [[User:Hogü-456|Hogü-456]] ([[User talk:Hogü-456|talk]]) 21:10, 5 May 2026 (UTC) 1z8e7zab6umrdivsahz0v8ezh5qxjyp 272604 272514 2026-05-06T05:39:56Z Sun8908 9804 /* Z6830 for Chinese */ Reply 272604 wikitext text/x-wiki {{shortcut|[[WF:CHAT]]|[[WF:PC]]|[[WF:VP]]}} __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/ }} == "language" argument for certain functions == Hello. I am relatively new to Wikifunctions. Recently, I tried to create functions for Chinese translation of {{Z|Z26570}} and {{Z|Z26095}} (which became [[Z32788]] and [[Z32900]]). During the creation of these functions, I was trying to take {{Z|Z32212}} as reference. And I realized that the defining role sentence function is taking <code>language</code> as an argument (and the test case of the Chinese-language function already contains two varieties of Chinese). This makes it possible to output monolingual text in <code>zh-hant</code>, <code>zh-hans</code>, <code>zh-tw</code>, or any varieties of the language. I think for this reason, it is better to have <code>language</code> as arguments for the implementation of Z26570 and Z26095, and potentially more functions that require {{Z|Z14294}}, since it would output the varieties code instead of just saying <code>zh</code> for <code>zh-hant</code>, <code>zh-hans</code>, <code>zh-tw</code> in the output of type {{Z|Z11}}. I am not sure how the fallback mechanism works if one of the language (varieties) do not have a labels/lexemes, but to me, it is reasonable to have a <code>language</code> argument. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 09:38, 31 March 2026 (UTC) :The functions you mention do have a language argument. For Wikifunctions, the {{Z|Z60}} can be at a higher or lower level; whether a {{Z|Z11}} is for a language or a variant is determined by the function that constructs it. Please see {{Z|Z26565}} for an example and feel free to add test cases in Chinese. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 17:54, 11 April 2026 (UTC) ::Hello @[[User:GrounderUK|GrounderUK]], thanks for the answer. I understand that whether {{Z|Z11}} is for a language or a variant depends on the function. But that is exactly what I am asking for. It is true that [[Z26570]] and [[Z26095]] takes [[Z60]] as argument, but the language-specific functions in {{Z|Z29843}} and {{Z|Z26096}} don't. ::Let me give you an example: INPUT to [[Z26570]]: <code>entity</code>: Tokyo, <code>class</code>: city, <code>location</code>: Japan, <code>language</code>: zh-cn, the config would select [[Z33030]] (created after my previous comment by elseone) as the implementation, and it would RETURN 东京是日本的一个城市。(zh-hans), which is not zh-cn as requested in the INPUT. It would also be using the term not for the variant (when it is different) because it is hardcoded to use the term in zh-hans. However, if we have the implementation like [[Z32790]] (which was created by me but a natural language argument was added by elseone) or [[Z32213]] (that works in the defining role sentence function because of the extra argument), it could cater for different variant. ::If we don't have the language argument in the language-specific function, the desire for article creation on Abstract Wikipedia would be to create a function for every variant. Is it then better to create functions for every variant? [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 18:18, 11 April 2026 (UTC) :::I forgot to mention that there are some hardcoding in {{Z|Z32790}} as well, but I cannot fix it because it is a connected function and I am not a functioneer. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 18:31, 11 April 2026 (UTC) ::::Okay, I think it’s safe to disconnect this one as the function is not yet configured for use on Abstract Wikipedia. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 19:04, 11 April 2026 (UTC) :::Ah, sorry… I misunderstood you. I agree that the called function should be able to accept the original language argument. That is simpler in theory than in practice, because the configured functions all have to have the same argument types, as I understand it. I’m not sure which the best approach is, really, but we probably want to avoid two levels of configuration. That suggests that all language-specific functions would need to accept the additional argument, which is unrewarding work for someone. @[[User:99of9|99of9]], @[[User:Jdforrester (WMF)|Jdforrester (WMF)]], @[[User:DVrandecic (WMF)|DVrandecic (WMF)]] Any thoughts? [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 18:57, 11 April 2026 (UTC) ::::I mean, we would need to modify all the functions in each language, which could take some time. But we are still in an early stage. If we don't fix it now and we want to fix it later, it would be a disaster. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 19:25, 11 April 2026 (UTC) :::::Agreed. And we probably want them converted to HTML too, with separate language spans for text in different languages. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 19:35, 11 April 2026 (UTC) ::::@[[User:GrounderUK|GrounderUK]]: This sounds like a reasonable change to make. Note that (given these Functions are primarily for use on Abstract Wikipedia), altering/replacing them to return Z89/HTML fragments is already a desired but breaking change, so making a second breaking change at the same time is probably easiest for fixing things swiftly. That said, that's of course a decision for the Abstract Wikipedia and Wikifunctions communities, not me! [[User:Jdforrester (WMF)|Jdforrester (WMF)]] ([[User talk:Jdforrester (WMF)|talk]]) 19:43, 12 April 2026 (UTC) ::::@[[User:GrounderUK|GrounderUK]]@[[User:Sun8908|Sun8908]] to make it a non-breaking change, I've created {{Z|Z34039}} which allows a composition {{Z|Z34043}}. This way you can make functions which either need the specified variant or don't! --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 05:52, 24 April 2026 (UTC) :I have now created {{Z|Z33465}}, which is an implementation of [[Z26570]]. Maybe we can migrate to use that function when more (language-specific) functions for it are ready? [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 18:19, 14 April 2026 (UTC) == Help me understand why test passes but running function with same input errors == I've been working on a function that I thought I had working correctly: {{Z+|Z31108}}. It has a test which is passing, but when I enter the same Wikidata item as the test uses (or any other relevant item that it ought to work for), it errors. I can't figure out what's wrong (and the function itself seemed to be working as expected the last time worked on it, a month ago), and I don't know how to interpret the error info. The error output is: <code> Error type: Unspecified error Error data: error information: "cannot read property 'Z6003K4' of undefined" Execution debug logs: Z12696K2 (find this) ==> ZObject<Z1K1:{'Z1K1': 'Z9', 'Z9K1': 'Z6007'},Z6007K1:ZObject<Z1K1:{'Z1K1': 'Z9', 'Z9K1': 'Z6092'},Z6092K1:P3831>,Z6007K2:ZObject<Z1K1:{'Z1K1': 'Z9', 'Z9K1': 'Z6091'},Z6091K1:Q7380503>,Z6007K3:ZReference<Z6021>> </code> -- [[User:Ragesoss|Ragesoss]] ([[User talk:Ragesoss|talk]]) 18:02, 10 April 2026 (UTC) :Hmm… I’ve had a quick look and found a comparable error with {{Z|Z29937}}, which was passing “4 months ago”. The debug comes from {{Z|Z12863}}, after it fails to find a match. This is probably because Z6007K3 is ZReference("Z6021") rather than a Z6020 object, as it appears in the debug logs for your test “28 days ago”: :"Z6007K3":{"Z1K1":{"Z1K1":"Z9","Z9K1":"Z6020"},"Z6020K1":{"Z9K1":"Z6021"}} :This means it’s probably a bug introduced by a recent software change. I’ll take a closer look over the weekend, but the actual error for your test case now is: :Unspecified error (error information: "cannot read property 'Z6003K4' of undefined") :I’m guessing that’s from there being no guard against an empty array in {{Z|Z23681}}, but we’ll see. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 23:22, 10 April 2026 (UTC) :I tracked down the bug to [[Z29869]] and fixed that, but the tests for [[Z31659]] are still failing. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 05:44, 11 April 2026 (UTC) ::Thanks. I’ve re-implemented {{Z|Z23680}} with {{Z|Z33331}} so we at least get a meaningful error in {{Z|Z31108}}. The new implementation explicitly caters for the alternative representation of {{Z|Z6040}} and errors on the empty list it gets from {{Z|Z31659}}. ::I also made a [[Z33332|simple Python implementation]], which seems to work. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 16:29, 11 April 2026 (UTC) == No place to ask to activate a function? == I just discovered the {{Z|Z11390}} function and decided to make an overarching language-selecting function for it. After some fiddling around and studying how {{Z|Z32321}} and its set works, I now have {{Z|Z33439}} which has a config object ({{Z|Z33441}}) that selects between the two preexisting language-specific versions I found (English and Malayalam) and the new one I created for my other native language, {{Z|Z33440}}. Except I can't get these to work, because, from what I understand, only [[Wikifunctions:Functioneers|functioneers]] can activate newly created functions and implementations? So where do I apply for the {{Z|Z33439}} and {{Z|Z33440}} functions to be activated? Perhaps we should have a place to ask for it, a la [[w:WP:NPP]] — call it [[Project:New Functions Patrol|New Functions Patrol]] if you will. —[[User:UndueMarmot|<span style="color:#705ccb;">Undue</span><span style="color:#cfdfa3;background-color:#705ccb;">Marmot</span>]] ([[User talk:UndueMarmot|talk]]) 08:58, 14 April 2026 (UTC) :There's [[Wikifunctions:Community portal]] for this. By the way, {{Z|Z33445}} doesn't work because all the code must be inside the main function in Python code. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 09:19, 14 April 2026 (UTC) ::Huh. How could I have missed that? ::But anyway, I've moved the code in {{Z|Z33445}} into inside the main function block. ::Is there any reason why WF decided not to simply allow anyone to write functions? After all, that's how it works with wikitext templates, and these functions are fundamentally serving the same purposes as templates, just written in a different way. —[[User:UndueMarmot|<span style="color:#705ccb;">Undue</span><span style="color:#cfdfa3;background-color:#705ccb;">Marmot</span>]] <small>([[User talk:UndueMarmot|talk]])</small> 11:25, 14 April 2026 (UTC) :::I've fixed a couple of technical issues, but tests still fail. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 11:28, 14 April 2026 (UTC) ::::The tests pass now after some more changes to the code: [[Special:Diff/265232/cur]]. —[[User:UndueMarmot|<span style="color:#705ccb;">Undue</span><span style="color:#cfdfa3;background-color:#705ccb;">Marmot</span>]] <small>([[User talk:UndueMarmot|talk]])</small> 12:01, 14 April 2026 (UTC) :::::{{D|Connected}} [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 12:02, 14 April 2026 (UTC) :::I think it's a security issue, since Wikifunctions implementations could teoretically be malicious. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 11:29, 14 April 2026 (UTC) ::::This ^^^. We're very lenient, though, once you've created a few working functions you can apply for the right, per [[WF:Functioneer]]. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 12:26, 14 April 2026 (UTC) ::::That explanation [[phab:T343559#11421293|doesn't add up]]. A reason to limit ''connection powers'' to Functioneers might be to prevent vandalism, considering Functions can be used across wikis. But user-provided code is already being executed even without a Functioneer connecting it. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 20:01, 16 April 2026 (UTC) == Actual difference between {{Z|Z26039}} and {{Z|Z26095}} == What is the actual difference between these two functions? I ask, since it seems to me that the current distinction is more or less that the first one doesn't use an indefinite article in English, while the second does. Which is not a good distinction in a project that should be language neutral. This doubt emerged from my use of the first one in [[abstract:Q124441]], which @[[User:Hogü-456|Hogü-456]] made me notice that is probably wrong. My question is: why is it wrong? How could we clarify the difference? [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 19:46, 19 April 2026 (UTC) :I think the difference is if there is an indefinite article like a or an before the subject or not. In German there can be cases where a definite article is necessary before the subject. I looked at the functions and before the object both times an article is mentioned. As it depends on the language and the word what is the correct function to use I hope it will be clarified and it is an example of the necessity to have a human with understanding in a specific language check it. I hope there will be longer functions what generate more content about a specific kind of item. Then it is necessary to write one such function per language and it can be then applied to several items. It still requires checks and so maybe it is better to write down what item category needs what kind of introduction sentence function for what language. [[User:Hogü-456|Hogü-456]] ([[User talk:Hogü-456|talk]]) 20:05, 19 April 2026 (UTC) ::The point of these two functions (and of the entire Abstract Wikipedia project) is that they should be defined in a purely language-independent way, so that the translation to actual language can be done automatically. This is the reason why these functions have been renamed; I think that this attempt was not succesful, since meaning is still unclear. My proposal to clarify them would be to invoke the concept of [[w:specificity (linguistics)|specificity]]: {{Z|Z26039}} should be named "specific subject is instance of (string)", and should be used only when the QID of the subject uniquely identifies a single thing; {{Z|Z26095}} should instead be renamed in "non-specific subject is kind of (Monolingual text)", and should be used when the QID refers to a multitude of real life items, and we are specifying the class that all these item belong to. This clarification would not still be enough, since it doesn't explain how mass nouns are handled (is water a unique thing? Does {{Q|Q7802}} refer to a single piece of bread or to the entirety of bread, like water?). This problem is very tricky, since mass noun are language-specific and blurry the line between these two functions. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 20:58, 19 April 2026 (UTC) :Simply put, one corresponds to P31 and the other to P279. Paris is an {{Q|P31}} a {{Q|Q1549591}} :whereas a {{Q|Q1549591}} is a {{Q|P279}} (alias “kind of”) {{Q|Q515}}. Whether the Wikidata knowledge representation will be sufficient to resolve into fluent natural language representations in all languages is, of course, a crucial question. Where it is not, the Abstract Wikipedia knowledge representation will need to supplement the Wikidata content with additional details about the relation between the participants or the participants themselves, and these details should be language-neutral, to the extent that this is practicable. The item {{Q|Q124441}} has no [[:d:Q124441#P31|P31]] statements; it has only [[:d:Q124441#P279|P279]]s, including one relating it to {{Q|Q212920}}, which suggests {{Z|Z26095}} is the appropriate choice here even if the rendering in some languages is the same. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 22:52, 19 April 2026 (UTC) ::Thanks for explaining it. I think that I'll change the implementation of {{Z|Z26095}}, so that in Italian it produces more or less the same output of {{Z|Z26039}} (both with the definite article). [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 11:24, 20 April 2026 (UTC) == Equivalent of Z6830 for lexemes == Is there an equivalent of {{Z|Z6830}} that enables retrieving all lexemes pointing to a particular lexeme using a specific property? [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 21:06, 20 April 2026 (UTC) :There's {{Z|6831}} but I think that's slightly different again to what you're after. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 12:31, 21 April 2026 (UTC) ::Thanks for sharing that one, I did not know it existed. But you are right, it’s not quite what I am looking for. I want a function that would take a Wikidata property reference (like P5191, which is ‘derived from lexeme’) and a Wikidata lexeme reference, and return a list of lexemes that reference that lexeme using that property. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 13:23, 21 April 2026 (UTC) == Storing huge datasets == It is not a necessity I suppose, but an idea came to me earlier to write a function that would give the corresponding [[en:Shavian alphabet|Shavian alphabet representation]] of an English word written with the Latin alphabet, or perhaps apply that operation to an entire sentence. However, just trying to guess as to what the IPA pronunciation of each word passed into it could be is is both not ideal (pronunciations obviously can and will vary widely between accents) and infeasible <s>(Wikidata lexemes don't really seem to account for pronunciation)</s>. It happens, though, that a comprehensive Shavian dictionary exists named the [https://readlex.pythonanywhere.com/ ''Read Lexicon''], which uses pronunciation and spelling similar to that used by the creator of the alphabet himself. This would be a good dataset to use in performing this translation in the function, but it appears that, all in all, the total size of the dictionary is [https://github.com/Shavian-info/readlex/blob/main/readlex.json ''nearly 26MB''] when formatted as JSON, which would certainly be larger when converted into a typed list. I am wondering if this will ever be feasible or admissible, or if there is really a way around this if importing such a large set of data is deemed impractical. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 22:30, 20 April 2026 (UTC) :{{re|Theki}} "Wikidata lexemes don't really seem to account for pronunciation"" is patently untrue; not only does every Bokmål lexeme form have IPA attached to it (thanks to Jon Harald Søby), but there are lots of languages--including English--that have pronunciation information, whether through IPA or otherwise, indicated on their forms. The big issue of course is that adding this data is not always possible to perform efficiently--for instance, I'd love to have Yiddish pronunciation respellings from Paul Abelson's dictionary on as many English forms as possible, but this dictionary not being previously processed makes this difficult. The data set you have brought up, if a suitable reading of [[:m:Wikilegal/Lexicographical_Data]] allows it, could be added as {{P|7243}} statements on various English forms. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 23:20, 20 April 2026 (UTC) ::Well, sorry... I haven't witnessed these pronunciation statements before, I wasn't aware of their existence until you pointed it out. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 15:02, 21 April 2026 (UTC) :I got 1,900,000 characters into [[Z33875]] before the UI gave up on me. I'm not sure what the limit is. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 15:21, 21 April 2026 (UTC) == Could not serialize input JS object: Number <small><small>[insert tested number here]</small></small> == I'm not one to throw my problems at others, but I have no idea how to fix this. Am implementing {{Z|Z24602}} in JavaScript, which requires returning a typed map. It now works for every type of value except numbers. Tried explicitly converting the numbers to float64, but either way it throws the error above. Would appreciate it if anyone could diagnose or fix the problem, as my knowledge of Wikifunctions is amateur at best. Thank you. [[User:Some helpful person|Some helpful person]] ([[User talk:Some helpful person|talk]]) 00:32, 23 April 2026 (UTC) :The quick answer is that like some list-related functions, code implementations returning typed maps are not possible unless the type of the objects in the map is specified in the function signature (e.g. if it was a map from Strings to Natural numbers only). So unfortunately, I think you've chosen a function that is not really possible at the moment. There are a few ideas of how we might address this, but for the moment, work on something else. Sorry! --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 13:21, 23 April 2026 (UTC) :Maybe explicitly using [[Z13518|natural numbers]] would work? I would try using <code>{ "Z1K1": "Z13518", "Z13518K1": "[number]" }</code> to represent numbers, perhaps, and seeing if that works. Of course, you would also probably have to adapt this for other types that cannot be serialized, and I'm not sure how easy that would be to generalize (assuming [[w:Don't repeat yourself|DRYness]] is desired). &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 14:39, 23 April 2026 (UTC) == Help with creating a function for Abstract Wikipedia == Hello! I was inspired by {{Z|Z26570}} to create {{Z|Z33975}}, however I'm not sure how I add specific language implementations here. Can anybody help me? [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 10:41, 23 April 2026 (UTC) : I think I figured it out, I created a new object with the language config type, added {{Z|Z14310}} to my implementation, and added a new function for English... At least I think that's how it works... [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 13:16, 23 April 2026 (UTC) ::You have the right idea, as far as I know. I went ahead and connected the implementations you created as they appear to work fine for English, and added a test for {{Z|Z33975}} (which passes [[File:Twemoji 1f601.svg|24px]]). I also corrected an error you made on the config object where you appear to have accidentally connected English to {{Z|Z33975}} instead of {{Z|Z33977}}. Thank you for contributing! &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 13:45, 23 April 2026 (UTC) ::: {{re|Theki}} Thank you so much for you help! Could you please kindly also connect the implementations for {{Z|Z33986}} which I just made, which is going to be used for the Hebrew implementation of {{Z|Z33975}}. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 14:11, 23 April 2026 (UTC) ::::You seem to be returning the wrong type in both implementations. Functioneers should not connect implementations that don't work for non-functioneers. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:13, 23 April 2026 (UTC) ::::: {{re|Feeglgeef}} Oh thank you for pointing that out! I am still a bit new to this project and confused, so I need to read up some more about this. How do I return a monolingual text object? [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 14:17, 23 April 2026 (UTC) ::::::I'm trying to fix it for you, the construction of ZObjects in code implementations is a bit difficult right now. Since the State origin using entity and class function will (presumably) be composition, perhaps {{Z|33975}} can be adjusted to return a string, using {{Z|26107}} and {{Z|26107}}? [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:21, 23 April 2026 (UTC) :::::I did not notice any discrepancies from looking at the functions by themselves, and it seemed to work fine on my end. Is it bad practice for NLG functions to return the monolingual text type? I had assumed it was logical. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 14:24, 23 April 2026 (UTC) ::::::Both implementations are failing all three tests on my end. No consensus has been established as to whether monolingual texts or strings should be used, so it's like the [[w:War of the currents|war of the currents]] but for Wikifunctions. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:27, 23 April 2026 (UTC) :::::::Oh, you were referring to {{Z|Z33986}}. I assumed you were stating that something was wrong in the earlier English functions that I missed; I apologize for the misunderstanding. Has there been any centralized discussion on this string vs. monolingual text issue? &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 14:31, 23 April 2026 (UTC) ::::::::Not that I'm aware of, I've brought it up on the telegram twice before, though. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:49, 23 April 2026 (UTC) ::::::::The centralised discussion is at [[WT:Abstract Wikipedia/2025 fragment experiments#Proposed recommendation: Fragments should return Z11/monolingual strings]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 07:19, 24 April 2026 (UTC) ::::::: {{re|Theki|Feeglgeef}} Can only functioneers test implementations? For me I can't test it at all... [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 14:32, 23 April 2026 (UTC) ::::::::AFAIK, test cases are only immediately testable during editing of a function if they are connected. This is one of my personal pain points with Wikifunctions, iterating on functions without exhaustive connected test cases makes debugging practically impossible for non-functioneers working on newly-created functions... I (or Feeglgeef) can quickly connect the tests you need for you if you want, although if they are not well-formed they may need to be disconnected again afterwards. Additionally, I could temporarily connect the implementation you are writing so that you can test it on the sidebar as you work, but I'm not sure if this is advisable. That functionality is also something that unfortunately only works when not disconnected. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 14:43, 23 April 2026 (UTC) :::::::::Yup, agree with you on all points, thanks. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:48, 23 April 2026 (UTC) == Please disconnect implementation == I think I've fixed my issue with {{Z|Z33986}}, but I can't edit an actively connected implementations with my rights. I must admit it is an AI-aided fix, I feel very strongly about disclosing that. Courtesy pinging [[User:Theki]] and [[User:Feeglgeef]]. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 18:51, 23 April 2026 (UTC) : Additionally, I think the JS might be working. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 18:52, 23 April 2026 (UTC) : Just to clarify, I mean disconnect the Python implementation please. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 18:53, 23 April 2026 (UTC) :{{Done}} I've disconnected the Python implementation. :I've also added a couple of tests. The rule is a bit more complicated than adding a maqaf before every character that is not a Hebrew letter. Unfortunately, I don't think I'll have time to fix the implementations any time soon. [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 19:03, 23 April 2026 (UTC) :: Thank you! :: Also, for some reason I thought you put a maqaf before all gershayim, so thanks for correcting me. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 19:09, 23 April 2026 (UTC) :::No, that's not the rule. :::The rest of this reply is an [[:wikt:info-dump|infodump]], feel free to ignore it :) :::In [https://hebrew-academy.org.il/topic/hahlatot/punctuation/ the Academy's punctuation rules], the rule for adding a maqaf is written kind of badly: שמים מקף ברצף שיש בו שני סוגי גופנים, כגון אותיות ומספרים ("maqaf is added in a sequence in which there are two types of fonts, such as letters and numerals"). These are not different types of "fonts", but different types of characters, and I should email them about it. It gives the examples <span lang="he" dir="rtl">ה־12</span> and <span lang="he" dir="rtl">ב־DNA</span>. It doesn't say anything explicitly about quotation marks, but in other places on the same page, you have stuff like <span lang="he" dir="rtl">ב"הארץ"</span>, and from that I deduce that a maqaf is not needed before double quotes if there are Hebrew letters inside the double quotes. :::That said, a few people do think that there must be a maqaf before double quotes. I have a somewhat surprising example of somebody who always does it: translators of Scientology materials into Hebrew. At least that's what they did last time I looked at them, about ten years ago. Those people are certainly prolific, and they get points from me for consistency, but this not the prevalent standard. (And if I recall correctly, they use the minus and not the proper Hebrew maqaf, and they don't get any points from me for that!) :::Also, the name of the character is just "double quotes" and not "gershayim". Gershayim are mostly for abbreviations, although most people use the same character for them. I use ״ for gershayim, as do a few other nerds, but we're the minority. [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 19:35, 23 April 2026 (UTC) :::: {{re|Amire80}} Yeah, "font" is a weird choice of wording here by the Academy...<br> I think I'll follow your guidance and not use a maqaf for quotes beginning with Hebrew letters. <br> I should also add more tests for different types of quotes, like straight (", '), curly (“, ”, ‘, ’), gershayim (״, ׳), including single quotes.<br> P.S. gotta deduct points from Scientology for being a cult but that's neither here nor there [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 20:49, 23 April 2026 (UTC) :::: {{re|Amire80}} Courtesy ping because I mistyped your username on the last message. Anyways I'm also gonna do that tomorrow because I'm tired now... [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 20:50, 23 April 2026 (UTC) == Connect implementations == Hello! I'm done with the implementations of {{Z|Z33986}} both in JS and Python, and all tests pass. Pinging @[[User:Amire80|Amire80]] to check if all the tests I've added are alright. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 15:24, 24 April 2026 (UTC) :Connected. It's possible that some more changes will be needed, but it looks OK now. :Another little comment: It should be called "clitic" and not "prefix". [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 15:56, 24 April 2026 (UTC) : {{re|Amire80}} Thanks for your comment! Luckily labels are easy to edit, so I'll get to it. : Currently I'm working on Bulgarian {{z|Z34072}} and {{z|Z34084}}, along with other Bulgarian functions. After I'm finished with those I'll take your advice. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 16:01, 24 April 2026 (UTC) == Please connect my Bulgarian implementations == I recently created the following Bulgarian functions: * {{Z|Z34070}} (currently broken, I think because another function I built it upon is unimplemented) * {{Z|Z34088}} * {{Z|Z34105}} * {{Z|Z34072}} * {{Z|Z34084}} Can somebody please connect these functions, and perhaps suggest other functions I could localize? [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 19:03, 24 April 2026 (UTC) : Specifically, [[Z34070]] is based on [[Z34072]] [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 19:05, 24 April 2026 (UTC) :{{done}} for everything that passes, [[Z34070]] still does not work after purging WF's cache, though. For future reference, please request on the [[WF:Community portal|community portal]] instead of the project chat. Thank you for your work! [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 20:03, 24 April 2026 (UTC) :: {{re|Feeglgeef}} Thank you for your help! I will keep in mind to go to the [[project: community portal| community portal]] in future instead for this. :: I still don't understand why {{Z|Z34070}} fails... It's implementation is almost completely identical to [[Z30399]] from {{Z|Z30397}}, unless I messed something up... [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 20:11, 24 April 2026 (UTC) :::{{done}} No, it was mostly just timing out. It is better to use selective fetches where possible. One case is failing to match the expected results, but at least it is returning something. For all I know, it might even be acceptable! [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 20:35, 24 April 2026 (UTC) :::: {{re|GrounderUK}} Thank you so much for your help! The one failed case is with a definite article, so I feel like that might be fixed in the future... <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 20:43, 24 April 2026 (UTC) == Editor experience suggestions == I'm a bit frustrated with the editing experience on Wikifunctions, and I have suggestions based on pain points I've had contributing to this project: * Adding a wizard to create functions, implementations, and tests in one flow, somewhat like Wikimedia Commons' upload wizard * A sandbox for experimenting without changing mainspace functions, and maybe letting non-functioneers connect implementations ([[Project: Sandbox]] doesn't seem to fit this) * We could have functions for creation based on the sandbox, like how Wikipedia has articles for creation and edit requests, * Maybe even another test instance of Wikifunctions, like how Wikidata has [[testwikidata:|Test Wikidata]] I really like this project and I don't mean to whine, but it certainly has a lot of pain points both for technical and non-technical people. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 20:41, 24 April 2026 (UTC) : It's also really complicated to localize functions, so maybe we should add another wizard for that, where you can choose a language, and then create the new function with the aforementioned function wizard, and it just automatically adds it to the related language configuration object of the related function. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 20:48, 24 April 2026 (UTC) :# Sounds good to me. :# A sandbox available is [[Z10119]], though an extension-provided sandbox that allows you to manipulate the types, code, and tests easily without interfering with the mainspace would be nice. :# [[WF:Suggest a function|This page]] works to some extent, though it's too messy in my opinion. :# We used to have a "beta cluster" but it [[phab:rOMWC5f625c5846b5f779473fa32c9a02d87e59215dfa|got shut down]] just over a year ago because it was broken. :[[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 21:07, 24 April 2026 (UTC) == Language parameters in language-specific functions == I think that an effort should be made to give the different natural language options corresponding to different English dialects, Chinese scripts, etc. more of a use (I added the test {{Z|Z34119}} to {{Z|Z26095}} and unsurprisingly it fails). There are two main problems with this approach that I can identify: * If you ask the majority of these functions to make a sentence in British English, much of the time it will give you an output with missing words, because it does not fallback to English labels in the case of a British English label for that item missing. The same applies for every other English dialect, British English is just an example here. * Uninformed editors will probably see the presence of a language parameter on these functions, consider it redundant, and remove it. [[Special:Diff/268074|I have made this mistake before]]. In my opinion, in a perfect world, all of these language generation functions would output monolingual text, and if the user asks for American English text, then American English text is what they'll get. If the user asks for Japanese text in hiragana specifically, then that's what they'll get in return. This is not as high-priority as just rendering text in the language plainly in the first place, but it's something that I feel is still worth devoting some effort to. Right now switching functions to use this paradigm is difficult because, on the one hand, I don't know if consensus tends towards this direction being ideal or advisable, and I don't want to make changes like this without at least notifying the wider community. In addition, all tests break once a parameter is added or removed, and the function editor does not recognize the change in number of parameters and therefore you have to remove the function call, re-add it along with all of its parameters it had previously (which is a tedious cut-and-paste job), and then it will work again. This is something that you can do in five seconds by just adding a few lines of JSON to the test source, but this is not directly editable from the Web browser. This tedium is largely what's preventing me from doing this on a larger scale, besides asking for comments first. If anyone has any insights or comments on this, then that would be appreciated. If a reference of functions with and without the support for language variants is needed, of course [[WF:NLG]] can be perused, but I've also my own list cataloged at [[User:Theki/functions#language]]... Of course, this thread has many similarities to [[#"language" argument for certain functions|the one above]], but this concerns me going out and making this consistent across these NLG functions. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 21:09, 24 April 2026 (UTC) :I've created {{Z|Z34122}} as an extension to {{Z|Z34039}} for larger functions. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 21:34, 24 April 2026 (UTC) :Just to confirm that I, for one, support a Natural language parameter for all natural-language functions. The concern about getting them all aligned is just that we haven’t finally settled on {{Z|Z11}} being preferred to {{Z|Z89}} or some other type that conserves the text’s provenance, so we risk having to change them all again. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:07, 25 April 2026 (UTC) == “Key not found ()”? == What am I doing wrong in {{Z|Z34137}}? [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 00:39, 25 April 2026 (UTC) :You were passing a [[Z6091]] to {{Z|32290}}, but it takes a [[Z6001]]. Fixed. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 07:10, 26 April 2026 (UTC) ::{{done|Thank you}}! [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 14:13, 26 April 2026 (UTC) == Why is my test failing? == Hello! I recently made {{Z|Z34139}} based on [[wikt:Module:bg-translit]], and the test case {{Z|Z34141}} is failing on both implementations, despite the expected output and actual output being the same as far as I can tell. I tried looking at the Unicode codepoints of the output, but those are also identical. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 06:21, 25 April 2026 (UTC) :Yes, it’s a tricky one. I’ve added a normalize step to the result validation in {{Z|Z34141}}, which confirms it is a normalization issue. It looks like it is in the code but I don’t know whether simply normalizing the result is the way to go. Logically, you would normalize both the input and the result. The implementations of {{Z|Z10384}} show you how to do this. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 09:41, 25 April 2026 (UTC) == Edit request == Hello! I have an edit request for {{Z|Z23752}} and {{Z|Z23414}}. Please replace all the "an/a" logic with <code>Z21739(Argument reference)</code>, both for readability and for more accuracy ("a university is an institution") <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 09:50, 25 April 2026 (UTC) :{{D}} [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 12:24, 25 April 2026 (UTC) == Wikifunctions & Abstract Wikipedia Newsletter #245 is out: The Foundation's search for the perfect language == There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-04-25|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it! In this issue, we present an academic paper about Abstract Wikipedia, we discuss our latest Type created, and we take a look at the newest created functions. 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]]) 09:54, 25 April 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=30325620 --> :@[[User:Sannita (WMF)|Sannita (WMF)]], @[[User:DVrandecic (WMF)|DVrandecic (WMF)]], technical meta-question: the newsletter quotes the article: ::the only way to contest its algorithm is to click 👍 or 👎 (Crawford and Gillespie 2016) :This quotation sounds sensible, but the article's [https://link.springer.com/article/10.1007/s00146-026-02899-w web version], and the PDF that is downloadable from the same page doesn't actually show the emojis. It rather shows text that looks lacking: ::the only way to contest its algorithm is to click or (Crawford and Gillespie [https://link.springer.com/article/10.1007/s00146-026-02899-w#ref-CR14 2016]) :Where did you get the emojis? Is it your (probably correct) guess or is there a version somewhere that actually shows the emojis? [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 15:16, 25 April 2026 (UTC) ::Scratch that. I've found a version with correct emojis: https://wikihistories.github.io/wikilambda-the-ultimate/ [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 15:37, 25 April 2026 (UTC) == Requested deletion of test == Please delete {{Z|Z34143}}. this was never valid Bulgarian, I messed up. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 10:19, 25 April 2026 (UTC) :[[WF:RFD]] please. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 16:40, 25 April 2026 (UTC) == Request for comment (global AI policy) == <bdi lang="en" dir="ltr" class="mw-content-ltr"> A [[:m:Requests for comment/Artificial intelligence policy|request for comment]] is currently being held to decide on a global AI policy. {{int:Feedback-thanks-title}} [[User:MediaWiki message delivery|MediaWiki message delivery]] ([[User talk:MediaWiki message delivery|talk]]) 00:57, 26 April 2026 (UTC) </bdi> <!-- Message sent by User:Codename Noreste@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30424282 --> == Is it OK to connect the implementation? == Hello! I recently applied for functioneer on [[WF:RFG]], and I was wondering whether I could connect the implementation for {{Z|Z34165}} despite its dependency {{Z|Z34149}} being currently unimplemented. That is <em>if</em> I get accepted. I am planning on implementing it based on [[wikt:module:bg-nominal]], but am still having trouble figuring it out for now. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 09:04, 26 April 2026 (UTC) == Past tense function == Is there a function like {{Z|Z26039}}, but for the past tense (e.g. "Leo Tolstoy <em>was</em> a writer.")? If not, I will create it myself, I just want to make sure there's not a duplicate. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 10:10, 26 April 2026 (UTC) : {{Done}} with {{Z|Z34224}}, but I have a few kinks to work out with it. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 10:35, 26 April 2026 (UTC) :: I need to create some other similar functions for the past tense, I have some ideas: ::* {{Z|Z26095}} ::* {{Z|Z32643}} ::* {{Z|Z28016}} ::* {{Z|Z26570}} ::* {{Z|Z33975}} ::* {{Z|Z27243}} ::* <ins>{{Z|Z26627}}</ins> ::* <ins>{{Z|Z27627}}</ins> ::* <ins>{{Z|Z27173}}</ins> ::* <ins>{{Z|Z29591}}</ins> :: :: Are there any I have missed? <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 10:57, 26 April 2026 (UTC) :I think that here we are starting to walk on dangerous waters: what does past mean? Is it a recent o a far past? Does it have ripercussions on the present or not? Is it just a thing that happened once, many times or for a continuative period of time? :Consider that various languages distinguish between many different types of past. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 12:38, 26 April 2026 (UTC) :: {{re|Dv103}} That is a fair point... :: How do we go about solving this problem though? I don't think having every sentence on Abstract Wikipedia be "X is a Y" is a very good idea. :: Maybe we have different functions for all these variations of past you mentioned that just map into "X was a Y." in English? <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 13:31, 26 April 2026 (UTC) :::To properly solve this problem, we should use a more complete abstract content representation model, like for example the proposal of [[Wikifunctions:Type proposals/Semantic unit|Semantic units]] (look at [[Wikifunctions:Type proposals/Semantic unit/Douglas Adams|the example]] to see how times could be handled). For now, since we're still stuck with single fragment generation functions (that I hope will be slowly replaced with the complete represenation model, when available), we could just restrict your function to a very specific meaning, like "subject was an instance of, for most of its existence" (which means for example that it could be used to say "Douglas Adams was a writer", but not "Abraham Lincoln was a president", since he only was a president for 4 years). Probably my definition is still too vague, and this is why we need to go beyond these fragment generating functions. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 19:47, 26 April 2026 (UTC) ::Nitpick... I don't like that it outputs a string instead of monolingual text. With {{Z|Z26039}} it's used so much that I think it's unfixable in that case beyond deprecating it if people care that much, but {{Z|Z34224}} doesn't even have any connected implementations yet. Consider it, maybe? ::Nitpick 2... {{Z|Z34227}} is missing a language parameter. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 16:08, 26 April 2026 (UTC) ::: I will consider that! ::: I just did that because that's what {{Z|Z26039}} does, so I assumed I should follow suit with it. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 16:48, 26 April 2026 (UTC) == Legacy functions == If and when more robust methods of abstractly representing and generating linguistic content come around, and more efficient ways of creating abstract content are devised and implemented, I suspect that our current methods will require some form of deprecation. This is a significant source of concern for me in relation to WF and AW, questioning how prone our current methods of doing things are and eventually will be prone to obsolescence, and how it will be worked around when it comes. We have over 1 250 articles on AW presently, and these are rather all over the place. I suspect the maintenance burden from keeping these articles up to code will eventually, err, creep up on us, I suppose, and some kind of major refactoring will be necessary. We are definitely in a period of experimentation and whatnot right now but eventually, like with enwiki, some sort of structure and rigor will form and I suspect it will start to become rather boring for me... I, for one, very much enjoy experimenting with new and better ways to do things here. I don't personally mind changing things to use a new and better paradigm if need be, that sort of thing highly excites me, but of course there will be things that are left behind, and I suspect maybe bots will be employed to deal with this? A lot of Wikipedia sister sites seem to do that, e.g. going and fixing up use of deprecated templates. Considering the nature of Wikifunctions and Abstract Wikipedia I suspect certain maintenance tasks will be made simpler or even trivial by the typical uniformity of our implementations. I guess I am just concerned if Wikifunctions or Abstract Wikipedia will ever accrue its own kind of "technical debt" with how we are plowing through things presently, and if there is a plan for how we will eventually seek to mitigate that. Maybe too early to ask this question, but I am a notoriously anxious person, so I thought it wouldn't hurt to raise the question regardless... &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 21:30, 26 April 2026 (UTC) :I very much agree, thank you for expressing my position so well. {{ping|Immanuelle}} has been using an AI-generated tool (well, they haven't edited in a week, perhaps it's a break or perhaps they don't wish to contribute to the project any more) to create a bunch of articles en masse, which I have warned them multiple times is a bad idea (on top of evolving functions, all of the articles are one-sentence-per-paragraph, [[abstract:Q12184|like so]]). That's why I've been avoiding creating articles recently, I'd say I have a good fourth (no data to support, rough guess) of the comments on the wiki, yet less than a percentage of the article count (only three, including the [[abstract:Q319|first article]], though, so perhaps I'm the next [[w:Special:Permalink/908493298|office.bomis.com]]). [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 19:41, 27 April 2026 (UTC) :: I feel that the overwhelming presence of these low-quality articles (which I admit I myself am [[abstract:Q1710970|guilty]]/[[abstract:Q7601858|of]]/[[abstract:Q39338|creating]], usually as testbeds) may incur a large maintenance burden. I do expect them to be easy to detect, however, as searching for the presence of "deprecated" NLG functions is trivial, and it is possible that replacing them with their future ''even abstracter&trade;'' counterparts could be done automatically since they all have the same signatures and can be expected to create the same form of sentence. If it needs to be done manually for a while or for certain delinquent instances, my hope is that it will be fun, at least for a while. :: I just hope that these hypothetical future waves of "this new and versatile way of abstractly representing linguistic content" obsoleting previous methods and requiring refactoring across all articles is only a one-time thing. We should strive to be as robust and flexible as possible from the outset as each brand new paradigm of abstraction is also a brand new maintenance burden for updating old articles. At the end of the day, at least ''some'' of these articles will still render to many different languages even if their methods of creating those sentences of theirs is completely outdated. Ergo, the time it takes for the switchover to be performed across our articles should not be a persistent inconvenience for users (as, of course, they will always still be able to read the content as it was before since these legacy functions aren't being deleted outright), and the increased availability that the new methods will bring about will likely act as motivation for them to join the effort in refactoring (&#x300C;You're telling me that if I rewrite this article in this cool Lisp-looking stuff then I can probably read it in [[abstract:Q9307|Galician]]?? COOL!&#x300D;). &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 20:26, 27 April 2026 (UTC) :::Totally agree. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 02:54, 28 April 2026 (UTC) :::My vague plan is to implement a default function returning an {{Z|Z89}}, for each language-neutral function. A single function would convert any of these to a {{Z|Z11}}, so that a composition of the two can be implemented as the current default until such time as the language-neutral function is ready to return a [[Z89]]. We can already convert a [[Z11]] to a [[Z89]] so, although there is more to be done in this space, existing language-specific functions could be adapted to return a [[Z89]] quite mechanistically. :::Although we certainly could deliver parallel Z89 functions for each existing Z11 function, I don’t think we should assume that particular outcome. Provided the Z89 captures a lang attribute from the Z11’s language tag, the two representations should be largely interchangeable, although I am expecting a Z89 to carry additional attributes at the span level that would be lost on conversion to a Z11 (along with any higher-level tags and attributes). :::When I say there is “more to be done in this space”, I am referring to a new type that would allow HTML fragments to be represented as tractable Wikifunctions objects, but this is currently drafted only in my head! [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:21, 29 April 2026 (UTC) == Filtering types of objects == Hello! I have tried to comb through my own edit history several times, but it's really hard to search for specifics because there's no differentiation between different types of objects (functions, implementations, tests, etc.) in the logs as far as I can tell. Am I missing anything? I want it to work sort of like how filtering by namespace works. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 16:48, 27 April 2026 (UTC) :There is differentiation, it's just rather hard to look through. Since all ZObjects are just JSON data at their core, you can search for instances of <code>{ "Z1K1": "Z[type]"</code>. I haven't tried this so I'm not sure how well it would work and I know MediaWiki search syntax treats quotation marks as a special character, but I have seen Wikifunctions pages link to searches using this before. There is also [[Special:ListObjectsByType]] but it is sitewide rather than specific to your edit history in particular. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 18:59, 27 April 2026 (UTC) ::''[It doesn’t help directly here, but please see [[WF:Find]] for more details of how this works.]'' [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:24, 29 April 2026 (UTC) :See the feature requests [[phab:T399244]]/[[phab:T373735]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 06:06, 28 April 2026 (UTC) :The lack of filtering edits by namespace is exactly the problem that I was trying to solve with the [[User:Amire80/wikifunctionsanalytics]] tool. :I even kind of succeeded, but it has two major problems: :# It doesn't have any real frontend, so you have to know some SQL to use it (or ask other people who know SQL). :# It doesn't get information from the live site, but from the dump, which appears to be updated once a month. :I've made a [https://quarry.wmcloud.org/query/104794 sample query for you]. Unfortunately, it won't do anything at the moment because of the second problem—your edits started in April 2026, which isn't over yet, so the dump for it hasn't been processed. But I hope that early in May you'll be able to use the same query and see something useful. :(I plan to add support for recent edits, but I haven't done it yet. Now that I more or less figured out how to process Wikifunctions edits, I'm focused on trying to understand Abstract Wikipedia edits. Processing up-to-date edits from both sites will possibly be the next thing I work on, but if you know some Python and want to try doing it yourself, don't wait for me—[https://gitlab.wikimedia.org/toolforge-repos/wikifunctions-analytics Patches welcome].) [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 18:51, 28 April 2026 (UTC) ::@[[User:QuickQuokka|QuickQuokka]], I've just updated the data until the end of April. Now the query to which I linked above gives some results. You can also try running other queries if you know SQL. (Or try asking for other queries if you don't.) [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 03:26, 3 May 2026 (UTC) == [[Z34213]] == I'm not quite sure why this implementation is failing. Could someone take a look? [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 02:24, 28 April 2026 (UTC) :I've [https://phabricator.wikimedia.org/T419933#11863997 notified] the team that this is still occurring, the issue was marked as resolved. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 02:52, 28 April 2026 (UTC) :Some useful tips: :* create more testcases: sometimes it is a random error, so try to see how consistent it is between testcases :* your implementation is very inefficient, since it fetches items and lexemes a lot of times. Ideally, each item and each lexeme should be only fetched once in all the execution tree. :[[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 06:06, 28 April 2026 (UTC) ::Caching (''should?'') means that the lexeme and item data are cached, so the call doesn't actually execute multiple times. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 17:51, 28 April 2026 (UTC) :::Are lexemes and items actually cached within the same function execution? Even if they are only partially fetched and/or fetched in bulk? [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 17:54, 28 April 2026 (UTC) ::::I don't have any evidence to prove that it works but that's definitely A. what's supposed to happen and B. the ideal behavior. This happens because the Z680X functions can be cached just like any other. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 18:02, 28 April 2026 (UTC) ::::It is unclear. In general, I believe identical branches are resolved only once in orchestration, but there is also independent caching of Wikidata fetches. ::::According to @[[User:DMartin (WMF)|DMartin (WMF)]] ([https://t.me/Wikifunctions/30374 on Telegram]): ::::<blockquote>Well, no. We have caching of Wikidata entities that have been retrieved, but not of the results of nested function calls. There is a proposal for doing this in the context of the V2 composition language, when it's a bit more mature, and it's regarded as a relatively high priority.</blockquote> ::::It’s hard to tell whether fetches in nested calls are, in fact, cached and available for other nested calls in the same call, since it is not generally the actual fetch that consumes the most resources. Rather (I believe), it is construction and transmission of the result object, which is currently repeated afresh in each nested call (unless it is in an identical branch). ::::I hope that’s clear, and I apologise in advance if it happens to be inaccurate! [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:16, 29 April 2026 (UTC) :::::Oh, I should clarify.  There is a lot of caching going on, in several different places.  Lexemes and items ''are'' cached by the orchestrator within the same function execution, even if they are only partially fetched and/or fetched in bulk.  When I said that we don't have caching of the results of nested function calls, I meant that's not happening in general, for all nested function calls in compositions.  But fetching of Wikidata entities gets special treatment, so yes, fetched content from Wikidata is cached, regardless if it was fetched by a top-level call or a nested call. :::::It is also true that the construction of a ZObject from the fetched JSON might happen more than once within the same function execution, depending on how a composition has been structured. However, the construction of the ZObject is actually very fast, compared to the elapsed time of getting the JSON from Wikidata. [[User:DMartin (WMF)|DMartin (WMF)]] ([[User talk:DMartin (WMF)|talk]]) 18:04, 1 May 2026 (UTC) == Question about cardinal numbers == I was about to edit {{Z|Z16435}} to add my function {{Z|Z34308}}, but I noticed that none of the other functions have a gender parameter. Should I create a new wrapper function "Bulgarian cardinal, neuter", or should I just remove the gender parameter and always return neuter? <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 10:39, 28 April 2026 (UTC) :The “cardinal” functions should return the words used for “counting” numbers in the abstract. :We should consider converting them to return a {{Z|Z11}} rather than a {{Z|Z6}}. It may even be appropriate to return a {{Z|Z12}} to cater for language variants. Either way, I think that would be the approach to adopt for inflected forms, unless reference to specific lexeme-forms is required. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 12:52, 28 April 2026 (UTC) ::This. If a native of your language were to count up, which form would they be most likely to use? [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 13:29, 28 April 2026 (UTC) ::: {{re|GrounderUK|Feeglgeef}} Thanks for both your input! ::: I relabeled the aforementioned function to {{Z|Z34308}}, and created a new wrapper function {{Z|Z34457}}. ::: Should I specify that my old function is a monolingual text in parentheses? <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 16:26, 28 April 2026 (UTC) ::::You don't have to, unless you think that is something that would require distinction when viewing the function in a list of search results &c. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 16:36, 28 April 2026 (UTC) == Optional/nullable function parameters == Hello! Recently, I was informed that Wikifunctions has no optional/nullable function parameters as of now. Are there any future plans to support this, and/or workarounds? Maybe create a union type system like "{{Z|6}} or {{Z|23}}". <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 17:53, 28 April 2026 (UTC) :What I do for this is use an "is empty" function corresponding to the type of the parameter in an If statement. If it isn't empty, the function works as intended. Otherwise, it does something else. [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 17:58, 28 April 2026 (UTC) :Unions are not a thing (yet) on Wikifunctions, but you can always define an argument of type {{Z|Z1}}, which means that all types are allowed (I already did this for {{Z|Z26737}}; note that it is still a ugly workaround, don't use it for high level functions). Also, note that usually on Wikifunctions we use {{Z|Z24}} as the null value. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 18:00, 28 April 2026 (UTC) :: {{re|JJPMaster|Dv103}} Thanks for your help! :: @[[User:Dv103|Dv103]] told me a function call with a missing parameter is treated as an invalid function call, so how does the "is empty" function work with that? :: Also, setting the type to {{Z|1}} seems naive, like setting the type as <code>any</code> in TypeScript... :: Related question: Are there plans to add default values to parameters (outside of "if empty")? <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 18:19, 28 April 2026 (UTC) :::Setting the type to {{Z|Z1}} is actually naive, and that's why I advised you to only use it for low-level functions. Currently there is nothing better. Sometimes, type correctness is not actually checked, so it might seem that nullable types are possible. But it is still an hack, and it could broke anytime since it is not intended behavior. :::I don't think that there are current plans to add default values (but correct me if I'm wrong). The closest thing that comes to my mind is that, if you incorporate Wikifunctions into Wikitext, you can leave empty some fields (only of some specific types) and Parsoid will replace them to their default value. This is done only depending on the type, and not on the functions. For example, {{Z|Z6091}} and {{Z|Z6001}} are assigned the QID associated to the page, and {{Z|Z20420}} is assigned the current date. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 18:56, 28 April 2026 (UTC) :::@[[User:QuickQuokka|QuickQuokka]]: At the very least, [[Z10008]] accepts a null input. Maybe that feature is unique to the String type—I am not sure. [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 19:10, 28 April 2026 (UTC) ::::I think it's just not checked, but it shouldn't be intended. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 19:20, 28 April 2026 (UTC) ::::Strings and typed lists can be “empty” in the sense that their length can be zero. Typed pairs may also be “empty” in a degenerate sense, but such an object will not be returned from a code implementation. A typed map with no entries will also fail to be returned from code, although it is fine in compositions. ::::For a genuinely optional parameter, I prefer a properly typed list, which at least encourages an argument of the correct type. {{Z|Z813}} is also typically faster than {{Z|Z10008}}. Quite a good example of this approach is {{Z|Z23723}}, where it helps to resolve the type union (using [[Z1]]) for both Z6003K1 and Z6003K3. Of course, there’s nothing to prevent more than one element in the list, but additional elements are easily ignored. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 22:55, 28 April 2026 (UTC) :Pinging {{ping|Jdforrester (WMF)|prefix=|p=}}, I believe there are no current plans. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 19:02, 28 April 2026 (UTC) ::@[[User:QuickQuokka|QuickQuokka]]: I'm afraid there are no current plans to build out optional params, indeed; we would be happy to review this if a compelling case was made, but it'd be a lot of work to re-build the [[Wikifunctions:Function model|function model]] with that support and ensure we don't break (too many) things. [[User:Jdforrester (WMF)|Jdforrester (WMF)]] ([[User talk:Jdforrester (WMF)|talk]]) 19:11, 28 April 2026 (UTC) == Z6830 for Chinese == I was trying to use {{Z|Z6830}} for implementation in the Chinese-language. And turns out most of the Lexeme on Wikidata is using [[d:Q727694]] as the language instead of [[d:Q7850]]. This makes it impossible to use the mentioned function above, since Standard Chinese is not available (or did I miss something?). Is there a way to fetch lexemes with language=[[d:Q727694]] from item? [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 18:20, 30 April 2026 (UTC) :@[[User:Sun8908|Sun8908]] There is [[Z1006]] for Chinese and it has the language code zh. There is an overview of languages in [[Module:Wikifunctions label]] so you can search there for chinese versions and choose the one you need. [[User:Hogü-456|Hogü-456]] ([[User talk:Hogü-456|talk]]) 20:53, 5 May 2026 (UTC) ::I know that. The problem is when using the function [[Z6830]], it cannot retrieve lexeme with language [[d:Q727694]] (but it is the "Chinese language" with the most current Wikidata lexemes, see [https://ordia.toolforge.org/language/ ordia]). I think it should be a Wikidata problem, I might fix it (possibly by creating the same lexemes with language code zh) on Wikidata. Thanks anyway. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 05:39, 6 May 2026 (UTC) == Key not found error == Is there a reason why I am getting key not found error for this [[Z34677|function]] {{Z|Z34677}}? All the underlying functions run and all the test cases work. The debug information does not give more details. Any pointers? Thanks in advance [[User:Jsamwrites|John Samuel]] 19:24, 1 May 2026 (UTC) :It was passing the [[Z6091]] to {{Z|34641}} when that takes a [[Z6001]]. I've fixed that, but there's some other problem with the logic, so I've left it disconnected. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 19:42, 1 May 2026 (UTC) ::@[[User:YoshiRulz|YoshiRulz]] Thanks a lot. [[User:Jsamwrites|John Samuel]] 20:21, 1 May 2026 (UTC) == Wikifunctions & Abstract Wikipedia Newsletter #246 is out: Request for input: what should we count for Abstract Wikipedia == There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-05-02|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it! In this issue, we ask you what would be the relevant metrics for Abstract Wikipedia, we discuss our latest news on 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]]) 12:21, 2 May 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=30325620 --> == Any formal process for deletion of pages == Does a formal process exist for the deletion of functions, implementations, and tests that includes a notification system for creators, analogous to Wikidata’s process, explaining the rationale behind the deletion (or proposal for deletion)? [[User:Jsamwrites|John Samuel]] 12:36, 3 May 2026 (UTC) :Does [[Wikifunctions:Requests for deletions]] work? [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 13:00, 3 May 2026 (UTC) :Please see the discussion at [[Wikifunctions talk:Requests for deletions#Should we expect Objects' creators to get pinged on deletion proposals?]]. :As I see it, it is the proposer’s responsibility to consult appropriately before making a request and we expect our administrators to act only when satisfied that appropriate consultation has occurred. In many cases, no consultation is required. Administrators may delete their own contributions without making a request, but this is not a practice I would encourage. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 13:51, 3 May 2026 (UTC) == Implementation of rational number in JS doesn't match in Z19677 (Rational number) and Z28579 (RGBA colour) == In {{Z|19677}} it's <syntaxhighlight lang=js> { "K1": sign * numerator, "K2": denominator } </syntaxhighlight> but in {{Z|28579}} it's <syntaxhighlight lang=js> [ sign * numerator, denominator ] </syntaxhighlight> '''<span style="font-family:Iosevka,monospace">[[User:沈澄心|<span style="color:#9f3526">dring</span>]][[User talk:沈澄心|<span style="color:#534fa3">sim</span>]]</span>''' 05:15, 4 May 2026 (UTC) == Nested functions in compositions == I wish it will be easier to a add another function about a specific existing function in a function implementation based on a composition. When I write long functions in spreadsheets I usually stat with a small part and then I try to go further and after important steps I test if the output is as expected. I created [[Z34826]] to get the German gender specific occupation lexeme for a specific person based on their gender. I wanted to add a function around the existing one and it was not successful. It is not very easy to implement as it requires the possibily to move a part to another section but I think it can be helpful if it will be implemented. So far I spend more time as expected on the function. Describing it with words what the function needs to do is much easier than implementing it here in Wikifunctions. So I think there needs to be improvement to make Wikifunctions more accessible. [[User:Hogü-456|Hogü-456]] ([[User talk:Hogü-456|talk]]) 21:10, 5 May 2026 (UTC) nvjdn64h3urmrhvh8udkkvtjebbt4k7 272613 272604 2026-05-06T07:12:37Z Dv103 11127 /* Nested functions in compositions */ Reply 272613 wikitext text/x-wiki {{shortcut|[[WF:CHAT]]|[[WF:PC]]|[[WF:VP]]}} __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/ }} == "language" argument for certain functions == Hello. I am relatively new to Wikifunctions. Recently, I tried to create functions for Chinese translation of {{Z|Z26570}} and {{Z|Z26095}} (which became [[Z32788]] and [[Z32900]]). During the creation of these functions, I was trying to take {{Z|Z32212}} as reference. And I realized that the defining role sentence function is taking <code>language</code> as an argument (and the test case of the Chinese-language function already contains two varieties of Chinese). This makes it possible to output monolingual text in <code>zh-hant</code>, <code>zh-hans</code>, <code>zh-tw</code>, or any varieties of the language. I think for this reason, it is better to have <code>language</code> as arguments for the implementation of Z26570 and Z26095, and potentially more functions that require {{Z|Z14294}}, since it would output the varieties code instead of just saying <code>zh</code> for <code>zh-hant</code>, <code>zh-hans</code>, <code>zh-tw</code> in the output of type {{Z|Z11}}. I am not sure how the fallback mechanism works if one of the language (varieties) do not have a labels/lexemes, but to me, it is reasonable to have a <code>language</code> argument. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 09:38, 31 March 2026 (UTC) :The functions you mention do have a language argument. For Wikifunctions, the {{Z|Z60}} can be at a higher or lower level; whether a {{Z|Z11}} is for a language or a variant is determined by the function that constructs it. Please see {{Z|Z26565}} for an example and feel free to add test cases in Chinese. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 17:54, 11 April 2026 (UTC) ::Hello @[[User:GrounderUK|GrounderUK]], thanks for the answer. I understand that whether {{Z|Z11}} is for a language or a variant depends on the function. But that is exactly what I am asking for. It is true that [[Z26570]] and [[Z26095]] takes [[Z60]] as argument, but the language-specific functions in {{Z|Z29843}} and {{Z|Z26096}} don't. ::Let me give you an example: INPUT to [[Z26570]]: <code>entity</code>: Tokyo, <code>class</code>: city, <code>location</code>: Japan, <code>language</code>: zh-cn, the config would select [[Z33030]] (created after my previous comment by elseone) as the implementation, and it would RETURN 东京是日本的一个城市。(zh-hans), which is not zh-cn as requested in the INPUT. It would also be using the term not for the variant (when it is different) because it is hardcoded to use the term in zh-hans. However, if we have the implementation like [[Z32790]] (which was created by me but a natural language argument was added by elseone) or [[Z32213]] (that works in the defining role sentence function because of the extra argument), it could cater for different variant. ::If we don't have the language argument in the language-specific function, the desire for article creation on Abstract Wikipedia would be to create a function for every variant. Is it then better to create functions for every variant? [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 18:18, 11 April 2026 (UTC) :::I forgot to mention that there are some hardcoding in {{Z|Z32790}} as well, but I cannot fix it because it is a connected function and I am not a functioneer. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 18:31, 11 April 2026 (UTC) ::::Okay, I think it’s safe to disconnect this one as the function is not yet configured for use on Abstract Wikipedia. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 19:04, 11 April 2026 (UTC) :::Ah, sorry… I misunderstood you. I agree that the called function should be able to accept the original language argument. That is simpler in theory than in practice, because the configured functions all have to have the same argument types, as I understand it. I’m not sure which the best approach is, really, but we probably want to avoid two levels of configuration. That suggests that all language-specific functions would need to accept the additional argument, which is unrewarding work for someone. @[[User:99of9|99of9]], @[[User:Jdforrester (WMF)|Jdforrester (WMF)]], @[[User:DVrandecic (WMF)|DVrandecic (WMF)]] Any thoughts? [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 18:57, 11 April 2026 (UTC) ::::I mean, we would need to modify all the functions in each language, which could take some time. But we are still in an early stage. If we don't fix it now and we want to fix it later, it would be a disaster. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 19:25, 11 April 2026 (UTC) :::::Agreed. And we probably want them converted to HTML too, with separate language spans for text in different languages. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 19:35, 11 April 2026 (UTC) ::::@[[User:GrounderUK|GrounderUK]]: This sounds like a reasonable change to make. Note that (given these Functions are primarily for use on Abstract Wikipedia), altering/replacing them to return Z89/HTML fragments is already a desired but breaking change, so making a second breaking change at the same time is probably easiest for fixing things swiftly. That said, that's of course a decision for the Abstract Wikipedia and Wikifunctions communities, not me! [[User:Jdforrester (WMF)|Jdforrester (WMF)]] ([[User talk:Jdforrester (WMF)|talk]]) 19:43, 12 April 2026 (UTC) ::::@[[User:GrounderUK|GrounderUK]]@[[User:Sun8908|Sun8908]] to make it a non-breaking change, I've created {{Z|Z34039}} which allows a composition {{Z|Z34043}}. This way you can make functions which either need the specified variant or don't! --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 05:52, 24 April 2026 (UTC) :I have now created {{Z|Z33465}}, which is an implementation of [[Z26570]]. Maybe we can migrate to use that function when more (language-specific) functions for it are ready? [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 18:19, 14 April 2026 (UTC) == Help me understand why test passes but running function with same input errors == I've been working on a function that I thought I had working correctly: {{Z+|Z31108}}. It has a test which is passing, but when I enter the same Wikidata item as the test uses (or any other relevant item that it ought to work for), it errors. I can't figure out what's wrong (and the function itself seemed to be working as expected the last time worked on it, a month ago), and I don't know how to interpret the error info. The error output is: <code> Error type: Unspecified error Error data: error information: "cannot read property 'Z6003K4' of undefined" Execution debug logs: Z12696K2 (find this) ==> ZObject<Z1K1:{'Z1K1': 'Z9', 'Z9K1': 'Z6007'},Z6007K1:ZObject<Z1K1:{'Z1K1': 'Z9', 'Z9K1': 'Z6092'},Z6092K1:P3831>,Z6007K2:ZObject<Z1K1:{'Z1K1': 'Z9', 'Z9K1': 'Z6091'},Z6091K1:Q7380503>,Z6007K3:ZReference<Z6021>> </code> -- [[User:Ragesoss|Ragesoss]] ([[User talk:Ragesoss|talk]]) 18:02, 10 April 2026 (UTC) :Hmm… I’ve had a quick look and found a comparable error with {{Z|Z29937}}, which was passing “4 months ago”. The debug comes from {{Z|Z12863}}, after it fails to find a match. This is probably because Z6007K3 is ZReference("Z6021") rather than a Z6020 object, as it appears in the debug logs for your test “28 days ago”: :"Z6007K3":{"Z1K1":{"Z1K1":"Z9","Z9K1":"Z6020"},"Z6020K1":{"Z9K1":"Z6021"}} :This means it’s probably a bug introduced by a recent software change. I’ll take a closer look over the weekend, but the actual error for your test case now is: :Unspecified error (error information: "cannot read property 'Z6003K4' of undefined") :I’m guessing that’s from there being no guard against an empty array in {{Z|Z23681}}, but we’ll see. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 23:22, 10 April 2026 (UTC) :I tracked down the bug to [[Z29869]] and fixed that, but the tests for [[Z31659]] are still failing. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 05:44, 11 April 2026 (UTC) ::Thanks. I’ve re-implemented {{Z|Z23680}} with {{Z|Z33331}} so we at least get a meaningful error in {{Z|Z31108}}. The new implementation explicitly caters for the alternative representation of {{Z|Z6040}} and errors on the empty list it gets from {{Z|Z31659}}. ::I also made a [[Z33332|simple Python implementation]], which seems to work. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 16:29, 11 April 2026 (UTC) == No place to ask to activate a function? == I just discovered the {{Z|Z11390}} function and decided to make an overarching language-selecting function for it. After some fiddling around and studying how {{Z|Z32321}} and its set works, I now have {{Z|Z33439}} which has a config object ({{Z|Z33441}}) that selects between the two preexisting language-specific versions I found (English and Malayalam) and the new one I created for my other native language, {{Z|Z33440}}. Except I can't get these to work, because, from what I understand, only [[Wikifunctions:Functioneers|functioneers]] can activate newly created functions and implementations? So where do I apply for the {{Z|Z33439}} and {{Z|Z33440}} functions to be activated? Perhaps we should have a place to ask for it, a la [[w:WP:NPP]] — call it [[Project:New Functions Patrol|New Functions Patrol]] if you will. —[[User:UndueMarmot|<span style="color:#705ccb;">Undue</span><span style="color:#cfdfa3;background-color:#705ccb;">Marmot</span>]] ([[User talk:UndueMarmot|talk]]) 08:58, 14 April 2026 (UTC) :There's [[Wikifunctions:Community portal]] for this. By the way, {{Z|Z33445}} doesn't work because all the code must be inside the main function in Python code. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 09:19, 14 April 2026 (UTC) ::Huh. How could I have missed that? ::But anyway, I've moved the code in {{Z|Z33445}} into inside the main function block. ::Is there any reason why WF decided not to simply allow anyone to write functions? After all, that's how it works with wikitext templates, and these functions are fundamentally serving the same purposes as templates, just written in a different way. —[[User:UndueMarmot|<span style="color:#705ccb;">Undue</span><span style="color:#cfdfa3;background-color:#705ccb;">Marmot</span>]] <small>([[User talk:UndueMarmot|talk]])</small> 11:25, 14 April 2026 (UTC) :::I've fixed a couple of technical issues, but tests still fail. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 11:28, 14 April 2026 (UTC) ::::The tests pass now after some more changes to the code: [[Special:Diff/265232/cur]]. —[[User:UndueMarmot|<span style="color:#705ccb;">Undue</span><span style="color:#cfdfa3;background-color:#705ccb;">Marmot</span>]] <small>([[User talk:UndueMarmot|talk]])</small> 12:01, 14 April 2026 (UTC) :::::{{D|Connected}} [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 12:02, 14 April 2026 (UTC) :::I think it's a security issue, since Wikifunctions implementations could teoretically be malicious. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 11:29, 14 April 2026 (UTC) ::::This ^^^. We're very lenient, though, once you've created a few working functions you can apply for the right, per [[WF:Functioneer]]. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 12:26, 14 April 2026 (UTC) ::::That explanation [[phab:T343559#11421293|doesn't add up]]. A reason to limit ''connection powers'' to Functioneers might be to prevent vandalism, considering Functions can be used across wikis. But user-provided code is already being executed even without a Functioneer connecting it. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 20:01, 16 April 2026 (UTC) == Actual difference between {{Z|Z26039}} and {{Z|Z26095}} == What is the actual difference between these two functions? I ask, since it seems to me that the current distinction is more or less that the first one doesn't use an indefinite article in English, while the second does. Which is not a good distinction in a project that should be language neutral. This doubt emerged from my use of the first one in [[abstract:Q124441]], which @[[User:Hogü-456|Hogü-456]] made me notice that is probably wrong. My question is: why is it wrong? How could we clarify the difference? [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 19:46, 19 April 2026 (UTC) :I think the difference is if there is an indefinite article like a or an before the subject or not. In German there can be cases where a definite article is necessary before the subject. I looked at the functions and before the object both times an article is mentioned. As it depends on the language and the word what is the correct function to use I hope it will be clarified and it is an example of the necessity to have a human with understanding in a specific language check it. I hope there will be longer functions what generate more content about a specific kind of item. Then it is necessary to write one such function per language and it can be then applied to several items. It still requires checks and so maybe it is better to write down what item category needs what kind of introduction sentence function for what language. [[User:Hogü-456|Hogü-456]] ([[User talk:Hogü-456|talk]]) 20:05, 19 April 2026 (UTC) ::The point of these two functions (and of the entire Abstract Wikipedia project) is that they should be defined in a purely language-independent way, so that the translation to actual language can be done automatically. This is the reason why these functions have been renamed; I think that this attempt was not succesful, since meaning is still unclear. My proposal to clarify them would be to invoke the concept of [[w:specificity (linguistics)|specificity]]: {{Z|Z26039}} should be named "specific subject is instance of (string)", and should be used only when the QID of the subject uniquely identifies a single thing; {{Z|Z26095}} should instead be renamed in "non-specific subject is kind of (Monolingual text)", and should be used when the QID refers to a multitude of real life items, and we are specifying the class that all these item belong to. This clarification would not still be enough, since it doesn't explain how mass nouns are handled (is water a unique thing? Does {{Q|Q7802}} refer to a single piece of bread or to the entirety of bread, like water?). This problem is very tricky, since mass noun are language-specific and blurry the line between these two functions. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 20:58, 19 April 2026 (UTC) :Simply put, one corresponds to P31 and the other to P279. Paris is an {{Q|P31}} a {{Q|Q1549591}} :whereas a {{Q|Q1549591}} is a {{Q|P279}} (alias “kind of”) {{Q|Q515}}. Whether the Wikidata knowledge representation will be sufficient to resolve into fluent natural language representations in all languages is, of course, a crucial question. Where it is not, the Abstract Wikipedia knowledge representation will need to supplement the Wikidata content with additional details about the relation between the participants or the participants themselves, and these details should be language-neutral, to the extent that this is practicable. The item {{Q|Q124441}} has no [[:d:Q124441#P31|P31]] statements; it has only [[:d:Q124441#P279|P279]]s, including one relating it to {{Q|Q212920}}, which suggests {{Z|Z26095}} is the appropriate choice here even if the rendering in some languages is the same. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 22:52, 19 April 2026 (UTC) ::Thanks for explaining it. I think that I'll change the implementation of {{Z|Z26095}}, so that in Italian it produces more or less the same output of {{Z|Z26039}} (both with the definite article). [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 11:24, 20 April 2026 (UTC) == Equivalent of Z6830 for lexemes == Is there an equivalent of {{Z|Z6830}} that enables retrieving all lexemes pointing to a particular lexeme using a specific property? [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 21:06, 20 April 2026 (UTC) :There's {{Z|6831}} but I think that's slightly different again to what you're after. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 12:31, 21 April 2026 (UTC) ::Thanks for sharing that one, I did not know it existed. But you are right, it’s not quite what I am looking for. I want a function that would take a Wikidata property reference (like P5191, which is ‘derived from lexeme’) and a Wikidata lexeme reference, and return a list of lexemes that reference that lexeme using that property. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 13:23, 21 April 2026 (UTC) == Storing huge datasets == It is not a necessity I suppose, but an idea came to me earlier to write a function that would give the corresponding [[en:Shavian alphabet|Shavian alphabet representation]] of an English word written with the Latin alphabet, or perhaps apply that operation to an entire sentence. However, just trying to guess as to what the IPA pronunciation of each word passed into it could be is is both not ideal (pronunciations obviously can and will vary widely between accents) and infeasible <s>(Wikidata lexemes don't really seem to account for pronunciation)</s>. It happens, though, that a comprehensive Shavian dictionary exists named the [https://readlex.pythonanywhere.com/ ''Read Lexicon''], which uses pronunciation and spelling similar to that used by the creator of the alphabet himself. This would be a good dataset to use in performing this translation in the function, but it appears that, all in all, the total size of the dictionary is [https://github.com/Shavian-info/readlex/blob/main/readlex.json ''nearly 26MB''] when formatted as JSON, which would certainly be larger when converted into a typed list. I am wondering if this will ever be feasible or admissible, or if there is really a way around this if importing such a large set of data is deemed impractical. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 22:30, 20 April 2026 (UTC) :{{re|Theki}} "Wikidata lexemes don't really seem to account for pronunciation"" is patently untrue; not only does every Bokmål lexeme form have IPA attached to it (thanks to Jon Harald Søby), but there are lots of languages--including English--that have pronunciation information, whether through IPA or otherwise, indicated on their forms. The big issue of course is that adding this data is not always possible to perform efficiently--for instance, I'd love to have Yiddish pronunciation respellings from Paul Abelson's dictionary on as many English forms as possible, but this dictionary not being previously processed makes this difficult. The data set you have brought up, if a suitable reading of [[:m:Wikilegal/Lexicographical_Data]] allows it, could be added as {{P|7243}} statements on various English forms. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 23:20, 20 April 2026 (UTC) ::Well, sorry... I haven't witnessed these pronunciation statements before, I wasn't aware of their existence until you pointed it out. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 15:02, 21 April 2026 (UTC) :I got 1,900,000 characters into [[Z33875]] before the UI gave up on me. I'm not sure what the limit is. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 15:21, 21 April 2026 (UTC) == Could not serialize input JS object: Number <small><small>[insert tested number here]</small></small> == I'm not one to throw my problems at others, but I have no idea how to fix this. Am implementing {{Z|Z24602}} in JavaScript, which requires returning a typed map. It now works for every type of value except numbers. Tried explicitly converting the numbers to float64, but either way it throws the error above. Would appreciate it if anyone could diagnose or fix the problem, as my knowledge of Wikifunctions is amateur at best. Thank you. [[User:Some helpful person|Some helpful person]] ([[User talk:Some helpful person|talk]]) 00:32, 23 April 2026 (UTC) :The quick answer is that like some list-related functions, code implementations returning typed maps are not possible unless the type of the objects in the map is specified in the function signature (e.g. if it was a map from Strings to Natural numbers only). So unfortunately, I think you've chosen a function that is not really possible at the moment. There are a few ideas of how we might address this, but for the moment, work on something else. Sorry! --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 13:21, 23 April 2026 (UTC) :Maybe explicitly using [[Z13518|natural numbers]] would work? I would try using <code>{ "Z1K1": "Z13518", "Z13518K1": "[number]" }</code> to represent numbers, perhaps, and seeing if that works. Of course, you would also probably have to adapt this for other types that cannot be serialized, and I'm not sure how easy that would be to generalize (assuming [[w:Don't repeat yourself|DRYness]] is desired). &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 14:39, 23 April 2026 (UTC) == Help with creating a function for Abstract Wikipedia == Hello! I was inspired by {{Z|Z26570}} to create {{Z|Z33975}}, however I'm not sure how I add specific language implementations here. Can anybody help me? [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 10:41, 23 April 2026 (UTC) : I think I figured it out, I created a new object with the language config type, added {{Z|Z14310}} to my implementation, and added a new function for English... At least I think that's how it works... [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 13:16, 23 April 2026 (UTC) ::You have the right idea, as far as I know. I went ahead and connected the implementations you created as they appear to work fine for English, and added a test for {{Z|Z33975}} (which passes [[File:Twemoji 1f601.svg|24px]]). I also corrected an error you made on the config object where you appear to have accidentally connected English to {{Z|Z33975}} instead of {{Z|Z33977}}. Thank you for contributing! &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 13:45, 23 April 2026 (UTC) ::: {{re|Theki}} Thank you so much for you help! Could you please kindly also connect the implementations for {{Z|Z33986}} which I just made, which is going to be used for the Hebrew implementation of {{Z|Z33975}}. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 14:11, 23 April 2026 (UTC) ::::You seem to be returning the wrong type in both implementations. Functioneers should not connect implementations that don't work for non-functioneers. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:13, 23 April 2026 (UTC) ::::: {{re|Feeglgeef}} Oh thank you for pointing that out! I am still a bit new to this project and confused, so I need to read up some more about this. How do I return a monolingual text object? [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 14:17, 23 April 2026 (UTC) ::::::I'm trying to fix it for you, the construction of ZObjects in code implementations is a bit difficult right now. Since the State origin using entity and class function will (presumably) be composition, perhaps {{Z|33975}} can be adjusted to return a string, using {{Z|26107}} and {{Z|26107}}? [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:21, 23 April 2026 (UTC) :::::I did not notice any discrepancies from looking at the functions by themselves, and it seemed to work fine on my end. Is it bad practice for NLG functions to return the monolingual text type? I had assumed it was logical. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 14:24, 23 April 2026 (UTC) ::::::Both implementations are failing all three tests on my end. No consensus has been established as to whether monolingual texts or strings should be used, so it's like the [[w:War of the currents|war of the currents]] but for Wikifunctions. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:27, 23 April 2026 (UTC) :::::::Oh, you were referring to {{Z|Z33986}}. I assumed you were stating that something was wrong in the earlier English functions that I missed; I apologize for the misunderstanding. Has there been any centralized discussion on this string vs. monolingual text issue? &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 14:31, 23 April 2026 (UTC) ::::::::Not that I'm aware of, I've brought it up on the telegram twice before, though. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:49, 23 April 2026 (UTC) ::::::::The centralised discussion is at [[WT:Abstract Wikipedia/2025 fragment experiments#Proposed recommendation: Fragments should return Z11/monolingual strings]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 07:19, 24 April 2026 (UTC) ::::::: {{re|Theki|Feeglgeef}} Can only functioneers test implementations? For me I can't test it at all... [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 14:32, 23 April 2026 (UTC) ::::::::AFAIK, test cases are only immediately testable during editing of a function if they are connected. This is one of my personal pain points with Wikifunctions, iterating on functions without exhaustive connected test cases makes debugging practically impossible for non-functioneers working on newly-created functions... I (or Feeglgeef) can quickly connect the tests you need for you if you want, although if they are not well-formed they may need to be disconnected again afterwards. Additionally, I could temporarily connect the implementation you are writing so that you can test it on the sidebar as you work, but I'm not sure if this is advisable. That functionality is also something that unfortunately only works when not disconnected. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 14:43, 23 April 2026 (UTC) :::::::::Yup, agree with you on all points, thanks. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:48, 23 April 2026 (UTC) == Please disconnect implementation == I think I've fixed my issue with {{Z|Z33986}}, but I can't edit an actively connected implementations with my rights. I must admit it is an AI-aided fix, I feel very strongly about disclosing that. Courtesy pinging [[User:Theki]] and [[User:Feeglgeef]]. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 18:51, 23 April 2026 (UTC) : Additionally, I think the JS might be working. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 18:52, 23 April 2026 (UTC) : Just to clarify, I mean disconnect the Python implementation please. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 18:53, 23 April 2026 (UTC) :{{Done}} I've disconnected the Python implementation. :I've also added a couple of tests. The rule is a bit more complicated than adding a maqaf before every character that is not a Hebrew letter. Unfortunately, I don't think I'll have time to fix the implementations any time soon. [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 19:03, 23 April 2026 (UTC) :: Thank you! :: Also, for some reason I thought you put a maqaf before all gershayim, so thanks for correcting me. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 19:09, 23 April 2026 (UTC) :::No, that's not the rule. :::The rest of this reply is an [[:wikt:info-dump|infodump]], feel free to ignore it :) :::In [https://hebrew-academy.org.il/topic/hahlatot/punctuation/ the Academy's punctuation rules], the rule for adding a maqaf is written kind of badly: שמים מקף ברצף שיש בו שני סוגי גופנים, כגון אותיות ומספרים ("maqaf is added in a sequence in which there are two types of fonts, such as letters and numerals"). These are not different types of "fonts", but different types of characters, and I should email them about it. It gives the examples <span lang="he" dir="rtl">ה־12</span> and <span lang="he" dir="rtl">ב־DNA</span>. It doesn't say anything explicitly about quotation marks, but in other places on the same page, you have stuff like <span lang="he" dir="rtl">ב"הארץ"</span>, and from that I deduce that a maqaf is not needed before double quotes if there are Hebrew letters inside the double quotes. :::That said, a few people do think that there must be a maqaf before double quotes. I have a somewhat surprising example of somebody who always does it: translators of Scientology materials into Hebrew. At least that's what they did last time I looked at them, about ten years ago. Those people are certainly prolific, and they get points from me for consistency, but this not the prevalent standard. (And if I recall correctly, they use the minus and not the proper Hebrew maqaf, and they don't get any points from me for that!) :::Also, the name of the character is just "double quotes" and not "gershayim". Gershayim are mostly for abbreviations, although most people use the same character for them. I use ״ for gershayim, as do a few other nerds, but we're the minority. [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 19:35, 23 April 2026 (UTC) :::: {{re|Amire80}} Yeah, "font" is a weird choice of wording here by the Academy...<br> I think I'll follow your guidance and not use a maqaf for quotes beginning with Hebrew letters. <br> I should also add more tests for different types of quotes, like straight (", '), curly (“, ”, ‘, ’), gershayim (״, ׳), including single quotes.<br> P.S. gotta deduct points from Scientology for being a cult but that's neither here nor there [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 20:49, 23 April 2026 (UTC) :::: {{re|Amire80}} Courtesy ping because I mistyped your username on the last message. Anyways I'm also gonna do that tomorrow because I'm tired now... [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 20:50, 23 April 2026 (UTC) == Connect implementations == Hello! I'm done with the implementations of {{Z|Z33986}} both in JS and Python, and all tests pass. Pinging @[[User:Amire80|Amire80]] to check if all the tests I've added are alright. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 15:24, 24 April 2026 (UTC) :Connected. It's possible that some more changes will be needed, but it looks OK now. :Another little comment: It should be called "clitic" and not "prefix". [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 15:56, 24 April 2026 (UTC) : {{re|Amire80}} Thanks for your comment! Luckily labels are easy to edit, so I'll get to it. : Currently I'm working on Bulgarian {{z|Z34072}} and {{z|Z34084}}, along with other Bulgarian functions. After I'm finished with those I'll take your advice. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 16:01, 24 April 2026 (UTC) == Please connect my Bulgarian implementations == I recently created the following Bulgarian functions: * {{Z|Z34070}} (currently broken, I think because another function I built it upon is unimplemented) * {{Z|Z34088}} * {{Z|Z34105}} * {{Z|Z34072}} * {{Z|Z34084}} Can somebody please connect these functions, and perhaps suggest other functions I could localize? [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 19:03, 24 April 2026 (UTC) : Specifically, [[Z34070]] is based on [[Z34072]] [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 19:05, 24 April 2026 (UTC) :{{done}} for everything that passes, [[Z34070]] still does not work after purging WF's cache, though. For future reference, please request on the [[WF:Community portal|community portal]] instead of the project chat. Thank you for your work! [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 20:03, 24 April 2026 (UTC) :: {{re|Feeglgeef}} Thank you for your help! I will keep in mind to go to the [[project: community portal| community portal]] in future instead for this. :: I still don't understand why {{Z|Z34070}} fails... It's implementation is almost completely identical to [[Z30399]] from {{Z|Z30397}}, unless I messed something up... [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 20:11, 24 April 2026 (UTC) :::{{done}} No, it was mostly just timing out. It is better to use selective fetches where possible. One case is failing to match the expected results, but at least it is returning something. For all I know, it might even be acceptable! [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 20:35, 24 April 2026 (UTC) :::: {{re|GrounderUK}} Thank you so much for your help! The one failed case is with a definite article, so I feel like that might be fixed in the future... <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 20:43, 24 April 2026 (UTC) == Editor experience suggestions == I'm a bit frustrated with the editing experience on Wikifunctions, and I have suggestions based on pain points I've had contributing to this project: * Adding a wizard to create functions, implementations, and tests in one flow, somewhat like Wikimedia Commons' upload wizard * A sandbox for experimenting without changing mainspace functions, and maybe letting non-functioneers connect implementations ([[Project: Sandbox]] doesn't seem to fit this) * We could have functions for creation based on the sandbox, like how Wikipedia has articles for creation and edit requests, * Maybe even another test instance of Wikifunctions, like how Wikidata has [[testwikidata:|Test Wikidata]] I really like this project and I don't mean to whine, but it certainly has a lot of pain points both for technical and non-technical people. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 20:41, 24 April 2026 (UTC) : It's also really complicated to localize functions, so maybe we should add another wizard for that, where you can choose a language, and then create the new function with the aforementioned function wizard, and it just automatically adds it to the related language configuration object of the related function. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 20:48, 24 April 2026 (UTC) :# Sounds good to me. :# A sandbox available is [[Z10119]], though an extension-provided sandbox that allows you to manipulate the types, code, and tests easily without interfering with the mainspace would be nice. :# [[WF:Suggest a function|This page]] works to some extent, though it's too messy in my opinion. :# We used to have a "beta cluster" but it [[phab:rOMWC5f625c5846b5f779473fa32c9a02d87e59215dfa|got shut down]] just over a year ago because it was broken. :[[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 21:07, 24 April 2026 (UTC) == Language parameters in language-specific functions == I think that an effort should be made to give the different natural language options corresponding to different English dialects, Chinese scripts, etc. more of a use (I added the test {{Z|Z34119}} to {{Z|Z26095}} and unsurprisingly it fails). There are two main problems with this approach that I can identify: * If you ask the majority of these functions to make a sentence in British English, much of the time it will give you an output with missing words, because it does not fallback to English labels in the case of a British English label for that item missing. The same applies for every other English dialect, British English is just an example here. * Uninformed editors will probably see the presence of a language parameter on these functions, consider it redundant, and remove it. [[Special:Diff/268074|I have made this mistake before]]. In my opinion, in a perfect world, all of these language generation functions would output monolingual text, and if the user asks for American English text, then American English text is what they'll get. If the user asks for Japanese text in hiragana specifically, then that's what they'll get in return. This is not as high-priority as just rendering text in the language plainly in the first place, but it's something that I feel is still worth devoting some effort to. Right now switching functions to use this paradigm is difficult because, on the one hand, I don't know if consensus tends towards this direction being ideal or advisable, and I don't want to make changes like this without at least notifying the wider community. In addition, all tests break once a parameter is added or removed, and the function editor does not recognize the change in number of parameters and therefore you have to remove the function call, re-add it along with all of its parameters it had previously (which is a tedious cut-and-paste job), and then it will work again. This is something that you can do in five seconds by just adding a few lines of JSON to the test source, but this is not directly editable from the Web browser. This tedium is largely what's preventing me from doing this on a larger scale, besides asking for comments first. If anyone has any insights or comments on this, then that would be appreciated. If a reference of functions with and without the support for language variants is needed, of course [[WF:NLG]] can be perused, but I've also my own list cataloged at [[User:Theki/functions#language]]... Of course, this thread has many similarities to [[#"language" argument for certain functions|the one above]], but this concerns me going out and making this consistent across these NLG functions. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 21:09, 24 April 2026 (UTC) :I've created {{Z|Z34122}} as an extension to {{Z|Z34039}} for larger functions. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 21:34, 24 April 2026 (UTC) :Just to confirm that I, for one, support a Natural language parameter for all natural-language functions. The concern about getting them all aligned is just that we haven’t finally settled on {{Z|Z11}} being preferred to {{Z|Z89}} or some other type that conserves the text’s provenance, so we risk having to change them all again. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:07, 25 April 2026 (UTC) == “Key not found ()”? == What am I doing wrong in {{Z|Z34137}}? [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 00:39, 25 April 2026 (UTC) :You were passing a [[Z6091]] to {{Z|32290}}, but it takes a [[Z6001]]. Fixed. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 07:10, 26 April 2026 (UTC) ::{{done|Thank you}}! [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 14:13, 26 April 2026 (UTC) == Why is my test failing? == Hello! I recently made {{Z|Z34139}} based on [[wikt:Module:bg-translit]], and the test case {{Z|Z34141}} is failing on both implementations, despite the expected output and actual output being the same as far as I can tell. I tried looking at the Unicode codepoints of the output, but those are also identical. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 06:21, 25 April 2026 (UTC) :Yes, it’s a tricky one. I’ve added a normalize step to the result validation in {{Z|Z34141}}, which confirms it is a normalization issue. It looks like it is in the code but I don’t know whether simply normalizing the result is the way to go. Logically, you would normalize both the input and the result. The implementations of {{Z|Z10384}} show you how to do this. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 09:41, 25 April 2026 (UTC) == Edit request == Hello! I have an edit request for {{Z|Z23752}} and {{Z|Z23414}}. Please replace all the "an/a" logic with <code>Z21739(Argument reference)</code>, both for readability and for more accuracy ("a university is an institution") <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 09:50, 25 April 2026 (UTC) :{{D}} [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 12:24, 25 April 2026 (UTC) == Wikifunctions & Abstract Wikipedia Newsletter #245 is out: The Foundation's search for the perfect language == There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-04-25|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it! In this issue, we present an academic paper about Abstract Wikipedia, we discuss our latest Type created, and we take a look at the newest created functions. 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]]) 09:54, 25 April 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=30325620 --> :@[[User:Sannita (WMF)|Sannita (WMF)]], @[[User:DVrandecic (WMF)|DVrandecic (WMF)]], technical meta-question: the newsletter quotes the article: ::the only way to contest its algorithm is to click 👍 or 👎 (Crawford and Gillespie 2016) :This quotation sounds sensible, but the article's [https://link.springer.com/article/10.1007/s00146-026-02899-w web version], and the PDF that is downloadable from the same page doesn't actually show the emojis. It rather shows text that looks lacking: ::the only way to contest its algorithm is to click or (Crawford and Gillespie [https://link.springer.com/article/10.1007/s00146-026-02899-w#ref-CR14 2016]) :Where did you get the emojis? Is it your (probably correct) guess or is there a version somewhere that actually shows the emojis? [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 15:16, 25 April 2026 (UTC) ::Scratch that. I've found a version with correct emojis: https://wikihistories.github.io/wikilambda-the-ultimate/ [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 15:37, 25 April 2026 (UTC) == Requested deletion of test == Please delete {{Z|Z34143}}. this was never valid Bulgarian, I messed up. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 10:19, 25 April 2026 (UTC) :[[WF:RFD]] please. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 16:40, 25 April 2026 (UTC) == Request for comment (global AI policy) == <bdi lang="en" dir="ltr" class="mw-content-ltr"> A [[:m:Requests for comment/Artificial intelligence policy|request for comment]] is currently being held to decide on a global AI policy. {{int:Feedback-thanks-title}} [[User:MediaWiki message delivery|MediaWiki message delivery]] ([[User talk:MediaWiki message delivery|talk]]) 00:57, 26 April 2026 (UTC) </bdi> <!-- Message sent by User:Codename Noreste@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30424282 --> == Is it OK to connect the implementation? == Hello! I recently applied for functioneer on [[WF:RFG]], and I was wondering whether I could connect the implementation for {{Z|Z34165}} despite its dependency {{Z|Z34149}} being currently unimplemented. That is <em>if</em> I get accepted. I am planning on implementing it based on [[wikt:module:bg-nominal]], but am still having trouble figuring it out for now. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 09:04, 26 April 2026 (UTC) == Past tense function == Is there a function like {{Z|Z26039}}, but for the past tense (e.g. "Leo Tolstoy <em>was</em> a writer.")? If not, I will create it myself, I just want to make sure there's not a duplicate. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 10:10, 26 April 2026 (UTC) : {{Done}} with {{Z|Z34224}}, but I have a few kinks to work out with it. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 10:35, 26 April 2026 (UTC) :: I need to create some other similar functions for the past tense, I have some ideas: ::* {{Z|Z26095}} ::* {{Z|Z32643}} ::* {{Z|Z28016}} ::* {{Z|Z26570}} ::* {{Z|Z33975}} ::* {{Z|Z27243}} ::* <ins>{{Z|Z26627}}</ins> ::* <ins>{{Z|Z27627}}</ins> ::* <ins>{{Z|Z27173}}</ins> ::* <ins>{{Z|Z29591}}</ins> :: :: Are there any I have missed? <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 10:57, 26 April 2026 (UTC) :I think that here we are starting to walk on dangerous waters: what does past mean? Is it a recent o a far past? Does it have ripercussions on the present or not? Is it just a thing that happened once, many times or for a continuative period of time? :Consider that various languages distinguish between many different types of past. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 12:38, 26 April 2026 (UTC) :: {{re|Dv103}} That is a fair point... :: How do we go about solving this problem though? I don't think having every sentence on Abstract Wikipedia be "X is a Y" is a very good idea. :: Maybe we have different functions for all these variations of past you mentioned that just map into "X was a Y." in English? <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 13:31, 26 April 2026 (UTC) :::To properly solve this problem, we should use a more complete abstract content representation model, like for example the proposal of [[Wikifunctions:Type proposals/Semantic unit|Semantic units]] (look at [[Wikifunctions:Type proposals/Semantic unit/Douglas Adams|the example]] to see how times could be handled). For now, since we're still stuck with single fragment generation functions (that I hope will be slowly replaced with the complete represenation model, when available), we could just restrict your function to a very specific meaning, like "subject was an instance of, for most of its existence" (which means for example that it could be used to say "Douglas Adams was a writer", but not "Abraham Lincoln was a president", since he only was a president for 4 years). Probably my definition is still too vague, and this is why we need to go beyond these fragment generating functions. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 19:47, 26 April 2026 (UTC) ::Nitpick... I don't like that it outputs a string instead of monolingual text. With {{Z|Z26039}} it's used so much that I think it's unfixable in that case beyond deprecating it if people care that much, but {{Z|Z34224}} doesn't even have any connected implementations yet. Consider it, maybe? ::Nitpick 2... {{Z|Z34227}} is missing a language parameter. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 16:08, 26 April 2026 (UTC) ::: I will consider that! ::: I just did that because that's what {{Z|Z26039}} does, so I assumed I should follow suit with it. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 16:48, 26 April 2026 (UTC) == Legacy functions == If and when more robust methods of abstractly representing and generating linguistic content come around, and more efficient ways of creating abstract content are devised and implemented, I suspect that our current methods will require some form of deprecation. This is a significant source of concern for me in relation to WF and AW, questioning how prone our current methods of doing things are and eventually will be prone to obsolescence, and how it will be worked around when it comes. We have over 1 250 articles on AW presently, and these are rather all over the place. I suspect the maintenance burden from keeping these articles up to code will eventually, err, creep up on us, I suppose, and some kind of major refactoring will be necessary. We are definitely in a period of experimentation and whatnot right now but eventually, like with enwiki, some sort of structure and rigor will form and I suspect it will start to become rather boring for me... I, for one, very much enjoy experimenting with new and better ways to do things here. I don't personally mind changing things to use a new and better paradigm if need be, that sort of thing highly excites me, but of course there will be things that are left behind, and I suspect maybe bots will be employed to deal with this? A lot of Wikipedia sister sites seem to do that, e.g. going and fixing up use of deprecated templates. Considering the nature of Wikifunctions and Abstract Wikipedia I suspect certain maintenance tasks will be made simpler or even trivial by the typical uniformity of our implementations. I guess I am just concerned if Wikifunctions or Abstract Wikipedia will ever accrue its own kind of "technical debt" with how we are plowing through things presently, and if there is a plan for how we will eventually seek to mitigate that. Maybe too early to ask this question, but I am a notoriously anxious person, so I thought it wouldn't hurt to raise the question regardless... &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 21:30, 26 April 2026 (UTC) :I very much agree, thank you for expressing my position so well. {{ping|Immanuelle}} has been using an AI-generated tool (well, they haven't edited in a week, perhaps it's a break or perhaps they don't wish to contribute to the project any more) to create a bunch of articles en masse, which I have warned them multiple times is a bad idea (on top of evolving functions, all of the articles are one-sentence-per-paragraph, [[abstract:Q12184|like so]]). That's why I've been avoiding creating articles recently, I'd say I have a good fourth (no data to support, rough guess) of the comments on the wiki, yet less than a percentage of the article count (only three, including the [[abstract:Q319|first article]], though, so perhaps I'm the next [[w:Special:Permalink/908493298|office.bomis.com]]). [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 19:41, 27 April 2026 (UTC) :: I feel that the overwhelming presence of these low-quality articles (which I admit I myself am [[abstract:Q1710970|guilty]]/[[abstract:Q7601858|of]]/[[abstract:Q39338|creating]], usually as testbeds) may incur a large maintenance burden. I do expect them to be easy to detect, however, as searching for the presence of "deprecated" NLG functions is trivial, and it is possible that replacing them with their future ''even abstracter&trade;'' counterparts could be done automatically since they all have the same signatures and can be expected to create the same form of sentence. If it needs to be done manually for a while or for certain delinquent instances, my hope is that it will be fun, at least for a while. :: I just hope that these hypothetical future waves of "this new and versatile way of abstractly representing linguistic content" obsoleting previous methods and requiring refactoring across all articles is only a one-time thing. We should strive to be as robust and flexible as possible from the outset as each brand new paradigm of abstraction is also a brand new maintenance burden for updating old articles. At the end of the day, at least ''some'' of these articles will still render to many different languages even if their methods of creating those sentences of theirs is completely outdated. Ergo, the time it takes for the switchover to be performed across our articles should not be a persistent inconvenience for users (as, of course, they will always still be able to read the content as it was before since these legacy functions aren't being deleted outright), and the increased availability that the new methods will bring about will likely act as motivation for them to join the effort in refactoring (&#x300C;You're telling me that if I rewrite this article in this cool Lisp-looking stuff then I can probably read it in [[abstract:Q9307|Galician]]?? COOL!&#x300D;). &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 20:26, 27 April 2026 (UTC) :::Totally agree. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 02:54, 28 April 2026 (UTC) :::My vague plan is to implement a default function returning an {{Z|Z89}}, for each language-neutral function. A single function would convert any of these to a {{Z|Z11}}, so that a composition of the two can be implemented as the current default until such time as the language-neutral function is ready to return a [[Z89]]. We can already convert a [[Z11]] to a [[Z89]] so, although there is more to be done in this space, existing language-specific functions could be adapted to return a [[Z89]] quite mechanistically. :::Although we certainly could deliver parallel Z89 functions for each existing Z11 function, I don’t think we should assume that particular outcome. Provided the Z89 captures a lang attribute from the Z11’s language tag, the two representations should be largely interchangeable, although I am expecting a Z89 to carry additional attributes at the span level that would be lost on conversion to a Z11 (along with any higher-level tags and attributes). :::When I say there is “more to be done in this space”, I am referring to a new type that would allow HTML fragments to be represented as tractable Wikifunctions objects, but this is currently drafted only in my head! [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:21, 29 April 2026 (UTC) == Filtering types of objects == Hello! I have tried to comb through my own edit history several times, but it's really hard to search for specifics because there's no differentiation between different types of objects (functions, implementations, tests, etc.) in the logs as far as I can tell. Am I missing anything? I want it to work sort of like how filtering by namespace works. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 16:48, 27 April 2026 (UTC) :There is differentiation, it's just rather hard to look through. Since all ZObjects are just JSON data at their core, you can search for instances of <code>{ "Z1K1": "Z[type]"</code>. I haven't tried this so I'm not sure how well it would work and I know MediaWiki search syntax treats quotation marks as a special character, but I have seen Wikifunctions pages link to searches using this before. There is also [[Special:ListObjectsByType]] but it is sitewide rather than specific to your edit history in particular. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 18:59, 27 April 2026 (UTC) ::''[It doesn’t help directly here, but please see [[WF:Find]] for more details of how this works.]'' [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:24, 29 April 2026 (UTC) :See the feature requests [[phab:T399244]]/[[phab:T373735]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 06:06, 28 April 2026 (UTC) :The lack of filtering edits by namespace is exactly the problem that I was trying to solve with the [[User:Amire80/wikifunctionsanalytics]] tool. :I even kind of succeeded, but it has two major problems: :# It doesn't have any real frontend, so you have to know some SQL to use it (or ask other people who know SQL). :# It doesn't get information from the live site, but from the dump, which appears to be updated once a month. :I've made a [https://quarry.wmcloud.org/query/104794 sample query for you]. Unfortunately, it won't do anything at the moment because of the second problem—your edits started in April 2026, which isn't over yet, so the dump for it hasn't been processed. But I hope that early in May you'll be able to use the same query and see something useful. :(I plan to add support for recent edits, but I haven't done it yet. Now that I more or less figured out how to process Wikifunctions edits, I'm focused on trying to understand Abstract Wikipedia edits. Processing up-to-date edits from both sites will possibly be the next thing I work on, but if you know some Python and want to try doing it yourself, don't wait for me—[https://gitlab.wikimedia.org/toolforge-repos/wikifunctions-analytics Patches welcome].) [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 18:51, 28 April 2026 (UTC) ::@[[User:QuickQuokka|QuickQuokka]], I've just updated the data until the end of April. Now the query to which I linked above gives some results. You can also try running other queries if you know SQL. (Or try asking for other queries if you don't.) [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 03:26, 3 May 2026 (UTC) == [[Z34213]] == I'm not quite sure why this implementation is failing. Could someone take a look? [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 02:24, 28 April 2026 (UTC) :I've [https://phabricator.wikimedia.org/T419933#11863997 notified] the team that this is still occurring, the issue was marked as resolved. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 02:52, 28 April 2026 (UTC) :Some useful tips: :* create more testcases: sometimes it is a random error, so try to see how consistent it is between testcases :* your implementation is very inefficient, since it fetches items and lexemes a lot of times. Ideally, each item and each lexeme should be only fetched once in all the execution tree. :[[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 06:06, 28 April 2026 (UTC) ::Caching (''should?'') means that the lexeme and item data are cached, so the call doesn't actually execute multiple times. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 17:51, 28 April 2026 (UTC) :::Are lexemes and items actually cached within the same function execution? Even if they are only partially fetched and/or fetched in bulk? [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 17:54, 28 April 2026 (UTC) ::::I don't have any evidence to prove that it works but that's definitely A. what's supposed to happen and B. the ideal behavior. This happens because the Z680X functions can be cached just like any other. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 18:02, 28 April 2026 (UTC) ::::It is unclear. In general, I believe identical branches are resolved only once in orchestration, but there is also independent caching of Wikidata fetches. ::::According to @[[User:DMartin (WMF)|DMartin (WMF)]] ([https://t.me/Wikifunctions/30374 on Telegram]): ::::<blockquote>Well, no. We have caching of Wikidata entities that have been retrieved, but not of the results of nested function calls. There is a proposal for doing this in the context of the V2 composition language, when it's a bit more mature, and it's regarded as a relatively high priority.</blockquote> ::::It’s hard to tell whether fetches in nested calls are, in fact, cached and available for other nested calls in the same call, since it is not generally the actual fetch that consumes the most resources. Rather (I believe), it is construction and transmission of the result object, which is currently repeated afresh in each nested call (unless it is in an identical branch). ::::I hope that’s clear, and I apologise in advance if it happens to be inaccurate! [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:16, 29 April 2026 (UTC) :::::Oh, I should clarify.  There is a lot of caching going on, in several different places.  Lexemes and items ''are'' cached by the orchestrator within the same function execution, even if they are only partially fetched and/or fetched in bulk.  When I said that we don't have caching of the results of nested function calls, I meant that's not happening in general, for all nested function calls in compositions.  But fetching of Wikidata entities gets special treatment, so yes, fetched content from Wikidata is cached, regardless if it was fetched by a top-level call or a nested call. :::::It is also true that the construction of a ZObject from the fetched JSON might happen more than once within the same function execution, depending on how a composition has been structured. However, the construction of the ZObject is actually very fast, compared to the elapsed time of getting the JSON from Wikidata. [[User:DMartin (WMF)|DMartin (WMF)]] ([[User talk:DMartin (WMF)|talk]]) 18:04, 1 May 2026 (UTC) == Question about cardinal numbers == I was about to edit {{Z|Z16435}} to add my function {{Z|Z34308}}, but I noticed that none of the other functions have a gender parameter. Should I create a new wrapper function "Bulgarian cardinal, neuter", or should I just remove the gender parameter and always return neuter? <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 10:39, 28 April 2026 (UTC) :The “cardinal” functions should return the words used for “counting” numbers in the abstract. :We should consider converting them to return a {{Z|Z11}} rather than a {{Z|Z6}}. It may even be appropriate to return a {{Z|Z12}} to cater for language variants. Either way, I think that would be the approach to adopt for inflected forms, unless reference to specific lexeme-forms is required. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 12:52, 28 April 2026 (UTC) ::This. If a native of your language were to count up, which form would they be most likely to use? [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 13:29, 28 April 2026 (UTC) ::: {{re|GrounderUK|Feeglgeef}} Thanks for both your input! ::: I relabeled the aforementioned function to {{Z|Z34308}}, and created a new wrapper function {{Z|Z34457}}. ::: Should I specify that my old function is a monolingual text in parentheses? <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 16:26, 28 April 2026 (UTC) ::::You don't have to, unless you think that is something that would require distinction when viewing the function in a list of search results &c. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 16:36, 28 April 2026 (UTC) == Optional/nullable function parameters == Hello! Recently, I was informed that Wikifunctions has no optional/nullable function parameters as of now. Are there any future plans to support this, and/or workarounds? Maybe create a union type system like "{{Z|6}} or {{Z|23}}". <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 17:53, 28 April 2026 (UTC) :What I do for this is use an "is empty" function corresponding to the type of the parameter in an If statement. If it isn't empty, the function works as intended. Otherwise, it does something else. [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 17:58, 28 April 2026 (UTC) :Unions are not a thing (yet) on Wikifunctions, but you can always define an argument of type {{Z|Z1}}, which means that all types are allowed (I already did this for {{Z|Z26737}}; note that it is still a ugly workaround, don't use it for high level functions). Also, note that usually on Wikifunctions we use {{Z|Z24}} as the null value. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 18:00, 28 April 2026 (UTC) :: {{re|JJPMaster|Dv103}} Thanks for your help! :: @[[User:Dv103|Dv103]] told me a function call with a missing parameter is treated as an invalid function call, so how does the "is empty" function work with that? :: Also, setting the type to {{Z|1}} seems naive, like setting the type as <code>any</code> in TypeScript... :: Related question: Are there plans to add default values to parameters (outside of "if empty")? <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 18:19, 28 April 2026 (UTC) :::Setting the type to {{Z|Z1}} is actually naive, and that's why I advised you to only use it for low-level functions. Currently there is nothing better. Sometimes, type correctness is not actually checked, so it might seem that nullable types are possible. But it is still an hack, and it could broke anytime since it is not intended behavior. :::I don't think that there are current plans to add default values (but correct me if I'm wrong). The closest thing that comes to my mind is that, if you incorporate Wikifunctions into Wikitext, you can leave empty some fields (only of some specific types) and Parsoid will replace them to their default value. This is done only depending on the type, and not on the functions. For example, {{Z|Z6091}} and {{Z|Z6001}} are assigned the QID associated to the page, and {{Z|Z20420}} is assigned the current date. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 18:56, 28 April 2026 (UTC) :::@[[User:QuickQuokka|QuickQuokka]]: At the very least, [[Z10008]] accepts a null input. Maybe that feature is unique to the String type—I am not sure. [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 19:10, 28 April 2026 (UTC) ::::I think it's just not checked, but it shouldn't be intended. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 19:20, 28 April 2026 (UTC) ::::Strings and typed lists can be “empty” in the sense that their length can be zero. Typed pairs may also be “empty” in a degenerate sense, but such an object will not be returned from a code implementation. A typed map with no entries will also fail to be returned from code, although it is fine in compositions. ::::For a genuinely optional parameter, I prefer a properly typed list, which at least encourages an argument of the correct type. {{Z|Z813}} is also typically faster than {{Z|Z10008}}. Quite a good example of this approach is {{Z|Z23723}}, where it helps to resolve the type union (using [[Z1]]) for both Z6003K1 and Z6003K3. Of course, there’s nothing to prevent more than one element in the list, but additional elements are easily ignored. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 22:55, 28 April 2026 (UTC) :Pinging {{ping|Jdforrester (WMF)|prefix=|p=}}, I believe there are no current plans. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 19:02, 28 April 2026 (UTC) ::@[[User:QuickQuokka|QuickQuokka]]: I'm afraid there are no current plans to build out optional params, indeed; we would be happy to review this if a compelling case was made, but it'd be a lot of work to re-build the [[Wikifunctions:Function model|function model]] with that support and ensure we don't break (too many) things. [[User:Jdforrester (WMF)|Jdforrester (WMF)]] ([[User talk:Jdforrester (WMF)|talk]]) 19:11, 28 April 2026 (UTC) == Z6830 for Chinese == I was trying to use {{Z|Z6830}} for implementation in the Chinese-language. And turns out most of the Lexeme on Wikidata is using [[d:Q727694]] as the language instead of [[d:Q7850]]. This makes it impossible to use the mentioned function above, since Standard Chinese is not available (or did I miss something?). Is there a way to fetch lexemes with language=[[d:Q727694]] from item? [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 18:20, 30 April 2026 (UTC) :@[[User:Sun8908|Sun8908]] There is [[Z1006]] for Chinese and it has the language code zh. There is an overview of languages in [[Module:Wikifunctions label]] so you can search there for chinese versions and choose the one you need. [[User:Hogü-456|Hogü-456]] ([[User talk:Hogü-456|talk]]) 20:53, 5 May 2026 (UTC) ::I know that. The problem is when using the function [[Z6830]], it cannot retrieve lexeme with language [[d:Q727694]] (but it is the "Chinese language" with the most current Wikidata lexemes, see [https://ordia.toolforge.org/language/ ordia]). I think it should be a Wikidata problem, I might fix it (possibly by creating the same lexemes with language code zh) on Wikidata. Thanks anyway. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 05:39, 6 May 2026 (UTC) == Key not found error == Is there a reason why I am getting key not found error for this [[Z34677|function]] {{Z|Z34677}}? All the underlying functions run and all the test cases work. The debug information does not give more details. Any pointers? Thanks in advance [[User:Jsamwrites|John Samuel]] 19:24, 1 May 2026 (UTC) :It was passing the [[Z6091]] to {{Z|34641}} when that takes a [[Z6001]]. I've fixed that, but there's some other problem with the logic, so I've left it disconnected. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 19:42, 1 May 2026 (UTC) ::@[[User:YoshiRulz|YoshiRulz]] Thanks a lot. [[User:Jsamwrites|John Samuel]] 20:21, 1 May 2026 (UTC) == Wikifunctions & Abstract Wikipedia Newsletter #246 is out: Request for input: what should we count for Abstract Wikipedia == There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-05-02|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it! In this issue, we ask you what would be the relevant metrics for Abstract Wikipedia, we discuss our latest news on 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]]) 12:21, 2 May 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=30325620 --> == Any formal process for deletion of pages == Does a formal process exist for the deletion of functions, implementations, and tests that includes a notification system for creators, analogous to Wikidata’s process, explaining the rationale behind the deletion (or proposal for deletion)? [[User:Jsamwrites|John Samuel]] 12:36, 3 May 2026 (UTC) :Does [[Wikifunctions:Requests for deletions]] work? [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 13:00, 3 May 2026 (UTC) :Please see the discussion at [[Wikifunctions talk:Requests for deletions#Should we expect Objects' creators to get pinged on deletion proposals?]]. :As I see it, it is the proposer’s responsibility to consult appropriately before making a request and we expect our administrators to act only when satisfied that appropriate consultation has occurred. In many cases, no consultation is required. Administrators may delete their own contributions without making a request, but this is not a practice I would encourage. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 13:51, 3 May 2026 (UTC) == Implementation of rational number in JS doesn't match in Z19677 (Rational number) and Z28579 (RGBA colour) == In {{Z|19677}} it's <syntaxhighlight lang=js> { "K1": sign * numerator, "K2": denominator } </syntaxhighlight> but in {{Z|28579}} it's <syntaxhighlight lang=js> [ sign * numerator, denominator ] </syntaxhighlight> '''<span style="font-family:Iosevka,monospace">[[User:沈澄心|<span style="color:#9f3526">dring</span>]][[User talk:沈澄心|<span style="color:#534fa3">sim</span>]]</span>''' 05:15, 4 May 2026 (UTC) == Nested functions in compositions == I wish it will be easier to a add another function about a specific existing function in a function implementation based on a composition. When I write long functions in spreadsheets I usually stat with a small part and then I try to go further and after important steps I test if the output is as expected. I created [[Z34826]] to get the German gender specific occupation lexeme for a specific person based on their gender. I wanted to add a function around the existing one and it was not successful. It is not very easy to implement as it requires the possibily to move a part to another section but I think it can be helpful if it will be implemented. So far I spend more time as expected on the function. Describing it with words what the function needs to do is much easier than implementing it here in Wikifunctions. So I think there needs to be improvement to make Wikifunctions more accessible. [[User:Hogü-456|Hogü-456]] ([[User talk:Hogü-456|talk]]) 21:10, 5 May 2026 (UTC) :Have you tried to use the copy-paste functionality? It is very useful to move parts of composition arounn. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 07:12, 6 May 2026 (UTC) fiuk3t3cdoiw0tuwpqpd8qg6eceht3d 272620 272613 2026-05-06T07:55:24Z GrounderUK 50 /* Z6830 for Chinese */ Reply 272620 wikitext text/x-wiki {{shortcut|[[WF:CHAT]]|[[WF:PC]]|[[WF:VP]]}} __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/ }} == "language" argument for certain functions == Hello. I am relatively new to Wikifunctions. Recently, I tried to create functions for Chinese translation of {{Z|Z26570}} and {{Z|Z26095}} (which became [[Z32788]] and [[Z32900]]). During the creation of these functions, I was trying to take {{Z|Z32212}} as reference. And I realized that the defining role sentence function is taking <code>language</code> as an argument (and the test case of the Chinese-language function already contains two varieties of Chinese). This makes it possible to output monolingual text in <code>zh-hant</code>, <code>zh-hans</code>, <code>zh-tw</code>, or any varieties of the language. I think for this reason, it is better to have <code>language</code> as arguments for the implementation of Z26570 and Z26095, and potentially more functions that require {{Z|Z14294}}, since it would output the varieties code instead of just saying <code>zh</code> for <code>zh-hant</code>, <code>zh-hans</code>, <code>zh-tw</code> in the output of type {{Z|Z11}}. I am not sure how the fallback mechanism works if one of the language (varieties) do not have a labels/lexemes, but to me, it is reasonable to have a <code>language</code> argument. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 09:38, 31 March 2026 (UTC) :The functions you mention do have a language argument. For Wikifunctions, the {{Z|Z60}} can be at a higher or lower level; whether a {{Z|Z11}} is for a language or a variant is determined by the function that constructs it. Please see {{Z|Z26565}} for an example and feel free to add test cases in Chinese. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 17:54, 11 April 2026 (UTC) ::Hello @[[User:GrounderUK|GrounderUK]], thanks for the answer. I understand that whether {{Z|Z11}} is for a language or a variant depends on the function. But that is exactly what I am asking for. It is true that [[Z26570]] and [[Z26095]] takes [[Z60]] as argument, but the language-specific functions in {{Z|Z29843}} and {{Z|Z26096}} don't. ::Let me give you an example: INPUT to [[Z26570]]: <code>entity</code>: Tokyo, <code>class</code>: city, <code>location</code>: Japan, <code>language</code>: zh-cn, the config would select [[Z33030]] (created after my previous comment by elseone) as the implementation, and it would RETURN 东京是日本的一个城市。(zh-hans), which is not zh-cn as requested in the INPUT. It would also be using the term not for the variant (when it is different) because it is hardcoded to use the term in zh-hans. However, if we have the implementation like [[Z32790]] (which was created by me but a natural language argument was added by elseone) or [[Z32213]] (that works in the defining role sentence function because of the extra argument), it could cater for different variant. ::If we don't have the language argument in the language-specific function, the desire for article creation on Abstract Wikipedia would be to create a function for every variant. Is it then better to create functions for every variant? [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 18:18, 11 April 2026 (UTC) :::I forgot to mention that there are some hardcoding in {{Z|Z32790}} as well, but I cannot fix it because it is a connected function and I am not a functioneer. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 18:31, 11 April 2026 (UTC) ::::Okay, I think it’s safe to disconnect this one as the function is not yet configured for use on Abstract Wikipedia. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 19:04, 11 April 2026 (UTC) :::Ah, sorry… I misunderstood you. I agree that the called function should be able to accept the original language argument. That is simpler in theory than in practice, because the configured functions all have to have the same argument types, as I understand it. I’m not sure which the best approach is, really, but we probably want to avoid two levels of configuration. That suggests that all language-specific functions would need to accept the additional argument, which is unrewarding work for someone. @[[User:99of9|99of9]], @[[User:Jdforrester (WMF)|Jdforrester (WMF)]], @[[User:DVrandecic (WMF)|DVrandecic (WMF)]] Any thoughts? [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 18:57, 11 April 2026 (UTC) ::::I mean, we would need to modify all the functions in each language, which could take some time. But we are still in an early stage. If we don't fix it now and we want to fix it later, it would be a disaster. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 19:25, 11 April 2026 (UTC) :::::Agreed. And we probably want them converted to HTML too, with separate language spans for text in different languages. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 19:35, 11 April 2026 (UTC) ::::@[[User:GrounderUK|GrounderUK]]: This sounds like a reasonable change to make. Note that (given these Functions are primarily for use on Abstract Wikipedia), altering/replacing them to return Z89/HTML fragments is already a desired but breaking change, so making a second breaking change at the same time is probably easiest for fixing things swiftly. That said, that's of course a decision for the Abstract Wikipedia and Wikifunctions communities, not me! [[User:Jdforrester (WMF)|Jdforrester (WMF)]] ([[User talk:Jdforrester (WMF)|talk]]) 19:43, 12 April 2026 (UTC) ::::@[[User:GrounderUK|GrounderUK]]@[[User:Sun8908|Sun8908]] to make it a non-breaking change, I've created {{Z|Z34039}} which allows a composition {{Z|Z34043}}. This way you can make functions which either need the specified variant or don't! --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 05:52, 24 April 2026 (UTC) :I have now created {{Z|Z33465}}, which is an implementation of [[Z26570]]. Maybe we can migrate to use that function when more (language-specific) functions for it are ready? [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 18:19, 14 April 2026 (UTC) == Help me understand why test passes but running function with same input errors == I've been working on a function that I thought I had working correctly: {{Z+|Z31108}}. It has a test which is passing, but when I enter the same Wikidata item as the test uses (or any other relevant item that it ought to work for), it errors. I can't figure out what's wrong (and the function itself seemed to be working as expected the last time worked on it, a month ago), and I don't know how to interpret the error info. The error output is: <code> Error type: Unspecified error Error data: error information: "cannot read property 'Z6003K4' of undefined" Execution debug logs: Z12696K2 (find this) ==> ZObject<Z1K1:{'Z1K1': 'Z9', 'Z9K1': 'Z6007'},Z6007K1:ZObject<Z1K1:{'Z1K1': 'Z9', 'Z9K1': 'Z6092'},Z6092K1:P3831>,Z6007K2:ZObject<Z1K1:{'Z1K1': 'Z9', 'Z9K1': 'Z6091'},Z6091K1:Q7380503>,Z6007K3:ZReference<Z6021>> </code> -- [[User:Ragesoss|Ragesoss]] ([[User talk:Ragesoss|talk]]) 18:02, 10 April 2026 (UTC) :Hmm… I’ve had a quick look and found a comparable error with {{Z|Z29937}}, which was passing “4 months ago”. The debug comes from {{Z|Z12863}}, after it fails to find a match. This is probably because Z6007K3 is ZReference("Z6021") rather than a Z6020 object, as it appears in the debug logs for your test “28 days ago”: :"Z6007K3":{"Z1K1":{"Z1K1":"Z9","Z9K1":"Z6020"},"Z6020K1":{"Z9K1":"Z6021"}} :This means it’s probably a bug introduced by a recent software change. I’ll take a closer look over the weekend, but the actual error for your test case now is: :Unspecified error (error information: "cannot read property 'Z6003K4' of undefined") :I’m guessing that’s from there being no guard against an empty array in {{Z|Z23681}}, but we’ll see. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 23:22, 10 April 2026 (UTC) :I tracked down the bug to [[Z29869]] and fixed that, but the tests for [[Z31659]] are still failing. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 05:44, 11 April 2026 (UTC) ::Thanks. I’ve re-implemented {{Z|Z23680}} with {{Z|Z33331}} so we at least get a meaningful error in {{Z|Z31108}}. The new implementation explicitly caters for the alternative representation of {{Z|Z6040}} and errors on the empty list it gets from {{Z|Z31659}}. ::I also made a [[Z33332|simple Python implementation]], which seems to work. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 16:29, 11 April 2026 (UTC) == No place to ask to activate a function? == I just discovered the {{Z|Z11390}} function and decided to make an overarching language-selecting function for it. After some fiddling around and studying how {{Z|Z32321}} and its set works, I now have {{Z|Z33439}} which has a config object ({{Z|Z33441}}) that selects between the two preexisting language-specific versions I found (English and Malayalam) and the new one I created for my other native language, {{Z|Z33440}}. Except I can't get these to work, because, from what I understand, only [[Wikifunctions:Functioneers|functioneers]] can activate newly created functions and implementations? So where do I apply for the {{Z|Z33439}} and {{Z|Z33440}} functions to be activated? Perhaps we should have a place to ask for it, a la [[w:WP:NPP]] — call it [[Project:New Functions Patrol|New Functions Patrol]] if you will. —[[User:UndueMarmot|<span style="color:#705ccb;">Undue</span><span style="color:#cfdfa3;background-color:#705ccb;">Marmot</span>]] ([[User talk:UndueMarmot|talk]]) 08:58, 14 April 2026 (UTC) :There's [[Wikifunctions:Community portal]] for this. By the way, {{Z|Z33445}} doesn't work because all the code must be inside the main function in Python code. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 09:19, 14 April 2026 (UTC) ::Huh. How could I have missed that? ::But anyway, I've moved the code in {{Z|Z33445}} into inside the main function block. ::Is there any reason why WF decided not to simply allow anyone to write functions? After all, that's how it works with wikitext templates, and these functions are fundamentally serving the same purposes as templates, just written in a different way. —[[User:UndueMarmot|<span style="color:#705ccb;">Undue</span><span style="color:#cfdfa3;background-color:#705ccb;">Marmot</span>]] <small>([[User talk:UndueMarmot|talk]])</small> 11:25, 14 April 2026 (UTC) :::I've fixed a couple of technical issues, but tests still fail. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 11:28, 14 April 2026 (UTC) ::::The tests pass now after some more changes to the code: [[Special:Diff/265232/cur]]. —[[User:UndueMarmot|<span style="color:#705ccb;">Undue</span><span style="color:#cfdfa3;background-color:#705ccb;">Marmot</span>]] <small>([[User talk:UndueMarmot|talk]])</small> 12:01, 14 April 2026 (UTC) :::::{{D|Connected}} [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 12:02, 14 April 2026 (UTC) :::I think it's a security issue, since Wikifunctions implementations could teoretically be malicious. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 11:29, 14 April 2026 (UTC) ::::This ^^^. We're very lenient, though, once you've created a few working functions you can apply for the right, per [[WF:Functioneer]]. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 12:26, 14 April 2026 (UTC) ::::That explanation [[phab:T343559#11421293|doesn't add up]]. A reason to limit ''connection powers'' to Functioneers might be to prevent vandalism, considering Functions can be used across wikis. But user-provided code is already being executed even without a Functioneer connecting it. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 20:01, 16 April 2026 (UTC) == Actual difference between {{Z|Z26039}} and {{Z|Z26095}} == What is the actual difference between these two functions? I ask, since it seems to me that the current distinction is more or less that the first one doesn't use an indefinite article in English, while the second does. Which is not a good distinction in a project that should be language neutral. This doubt emerged from my use of the first one in [[abstract:Q124441]], which @[[User:Hogü-456|Hogü-456]] made me notice that is probably wrong. My question is: why is it wrong? How could we clarify the difference? [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 19:46, 19 April 2026 (UTC) :I think the difference is if there is an indefinite article like a or an before the subject or not. In German there can be cases where a definite article is necessary before the subject. I looked at the functions and before the object both times an article is mentioned. As it depends on the language and the word what is the correct function to use I hope it will be clarified and it is an example of the necessity to have a human with understanding in a specific language check it. I hope there will be longer functions what generate more content about a specific kind of item. Then it is necessary to write one such function per language and it can be then applied to several items. It still requires checks and so maybe it is better to write down what item category needs what kind of introduction sentence function for what language. [[User:Hogü-456|Hogü-456]] ([[User talk:Hogü-456|talk]]) 20:05, 19 April 2026 (UTC) ::The point of these two functions (and of the entire Abstract Wikipedia project) is that they should be defined in a purely language-independent way, so that the translation to actual language can be done automatically. This is the reason why these functions have been renamed; I think that this attempt was not succesful, since meaning is still unclear. My proposal to clarify them would be to invoke the concept of [[w:specificity (linguistics)|specificity]]: {{Z|Z26039}} should be named "specific subject is instance of (string)", and should be used only when the QID of the subject uniquely identifies a single thing; {{Z|Z26095}} should instead be renamed in "non-specific subject is kind of (Monolingual text)", and should be used when the QID refers to a multitude of real life items, and we are specifying the class that all these item belong to. This clarification would not still be enough, since it doesn't explain how mass nouns are handled (is water a unique thing? Does {{Q|Q7802}} refer to a single piece of bread or to the entirety of bread, like water?). This problem is very tricky, since mass noun are language-specific and blurry the line between these two functions. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 20:58, 19 April 2026 (UTC) :Simply put, one corresponds to P31 and the other to P279. Paris is an {{Q|P31}} a {{Q|Q1549591}} :whereas a {{Q|Q1549591}} is a {{Q|P279}} (alias “kind of”) {{Q|Q515}}. Whether the Wikidata knowledge representation will be sufficient to resolve into fluent natural language representations in all languages is, of course, a crucial question. Where it is not, the Abstract Wikipedia knowledge representation will need to supplement the Wikidata content with additional details about the relation between the participants or the participants themselves, and these details should be language-neutral, to the extent that this is practicable. The item {{Q|Q124441}} has no [[:d:Q124441#P31|P31]] statements; it has only [[:d:Q124441#P279|P279]]s, including one relating it to {{Q|Q212920}}, which suggests {{Z|Z26095}} is the appropriate choice here even if the rendering in some languages is the same. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 22:52, 19 April 2026 (UTC) ::Thanks for explaining it. I think that I'll change the implementation of {{Z|Z26095}}, so that in Italian it produces more or less the same output of {{Z|Z26039}} (both with the definite article). [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 11:24, 20 April 2026 (UTC) == Equivalent of Z6830 for lexemes == Is there an equivalent of {{Z|Z6830}} that enables retrieving all lexemes pointing to a particular lexeme using a specific property? [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 21:06, 20 April 2026 (UTC) :There's {{Z|6831}} but I think that's slightly different again to what you're after. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 12:31, 21 April 2026 (UTC) ::Thanks for sharing that one, I did not know it existed. But you are right, it’s not quite what I am looking for. I want a function that would take a Wikidata property reference (like P5191, which is ‘derived from lexeme’) and a Wikidata lexeme reference, and return a list of lexemes that reference that lexeme using that property. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 13:23, 21 April 2026 (UTC) == Storing huge datasets == It is not a necessity I suppose, but an idea came to me earlier to write a function that would give the corresponding [[en:Shavian alphabet|Shavian alphabet representation]] of an English word written with the Latin alphabet, or perhaps apply that operation to an entire sentence. However, just trying to guess as to what the IPA pronunciation of each word passed into it could be is is both not ideal (pronunciations obviously can and will vary widely between accents) and infeasible <s>(Wikidata lexemes don't really seem to account for pronunciation)</s>. It happens, though, that a comprehensive Shavian dictionary exists named the [https://readlex.pythonanywhere.com/ ''Read Lexicon''], which uses pronunciation and spelling similar to that used by the creator of the alphabet himself. This would be a good dataset to use in performing this translation in the function, but it appears that, all in all, the total size of the dictionary is [https://github.com/Shavian-info/readlex/blob/main/readlex.json ''nearly 26MB''] when formatted as JSON, which would certainly be larger when converted into a typed list. I am wondering if this will ever be feasible or admissible, or if there is really a way around this if importing such a large set of data is deemed impractical. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 22:30, 20 April 2026 (UTC) :{{re|Theki}} "Wikidata lexemes don't really seem to account for pronunciation"" is patently untrue; not only does every Bokmål lexeme form have IPA attached to it (thanks to Jon Harald Søby), but there are lots of languages--including English--that have pronunciation information, whether through IPA or otherwise, indicated on their forms. The big issue of course is that adding this data is not always possible to perform efficiently--for instance, I'd love to have Yiddish pronunciation respellings from Paul Abelson's dictionary on as many English forms as possible, but this dictionary not being previously processed makes this difficult. The data set you have brought up, if a suitable reading of [[:m:Wikilegal/Lexicographical_Data]] allows it, could be added as {{P|7243}} statements on various English forms. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 23:20, 20 April 2026 (UTC) ::Well, sorry... I haven't witnessed these pronunciation statements before, I wasn't aware of their existence until you pointed it out. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 15:02, 21 April 2026 (UTC) :I got 1,900,000 characters into [[Z33875]] before the UI gave up on me. I'm not sure what the limit is. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 15:21, 21 April 2026 (UTC) == Could not serialize input JS object: Number <small><small>[insert tested number here]</small></small> == I'm not one to throw my problems at others, but I have no idea how to fix this. Am implementing {{Z|Z24602}} in JavaScript, which requires returning a typed map. It now works for every type of value except numbers. Tried explicitly converting the numbers to float64, but either way it throws the error above. Would appreciate it if anyone could diagnose or fix the problem, as my knowledge of Wikifunctions is amateur at best. Thank you. [[User:Some helpful person|Some helpful person]] ([[User talk:Some helpful person|talk]]) 00:32, 23 April 2026 (UTC) :The quick answer is that like some list-related functions, code implementations returning typed maps are not possible unless the type of the objects in the map is specified in the function signature (e.g. if it was a map from Strings to Natural numbers only). So unfortunately, I think you've chosen a function that is not really possible at the moment. There are a few ideas of how we might address this, but for the moment, work on something else. Sorry! --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 13:21, 23 April 2026 (UTC) :Maybe explicitly using [[Z13518|natural numbers]] would work? I would try using <code>{ "Z1K1": "Z13518", "Z13518K1": "[number]" }</code> to represent numbers, perhaps, and seeing if that works. Of course, you would also probably have to adapt this for other types that cannot be serialized, and I'm not sure how easy that would be to generalize (assuming [[w:Don't repeat yourself|DRYness]] is desired). &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 14:39, 23 April 2026 (UTC) == Help with creating a function for Abstract Wikipedia == Hello! I was inspired by {{Z|Z26570}} to create {{Z|Z33975}}, however I'm not sure how I add specific language implementations here. Can anybody help me? [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 10:41, 23 April 2026 (UTC) : I think I figured it out, I created a new object with the language config type, added {{Z|Z14310}} to my implementation, and added a new function for English... At least I think that's how it works... [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 13:16, 23 April 2026 (UTC) ::You have the right idea, as far as I know. I went ahead and connected the implementations you created as they appear to work fine for English, and added a test for {{Z|Z33975}} (which passes [[File:Twemoji 1f601.svg|24px]]). I also corrected an error you made on the config object where you appear to have accidentally connected English to {{Z|Z33975}} instead of {{Z|Z33977}}. Thank you for contributing! &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 13:45, 23 April 2026 (UTC) ::: {{re|Theki}} Thank you so much for you help! Could you please kindly also connect the implementations for {{Z|Z33986}} which I just made, which is going to be used for the Hebrew implementation of {{Z|Z33975}}. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 14:11, 23 April 2026 (UTC) ::::You seem to be returning the wrong type in both implementations. Functioneers should not connect implementations that don't work for non-functioneers. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:13, 23 April 2026 (UTC) ::::: {{re|Feeglgeef}} Oh thank you for pointing that out! I am still a bit new to this project and confused, so I need to read up some more about this. How do I return a monolingual text object? [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 14:17, 23 April 2026 (UTC) ::::::I'm trying to fix it for you, the construction of ZObjects in code implementations is a bit difficult right now. Since the State origin using entity and class function will (presumably) be composition, perhaps {{Z|33975}} can be adjusted to return a string, using {{Z|26107}} and {{Z|26107}}? [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:21, 23 April 2026 (UTC) :::::I did not notice any discrepancies from looking at the functions by themselves, and it seemed to work fine on my end. Is it bad practice for NLG functions to return the monolingual text type? I had assumed it was logical. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 14:24, 23 April 2026 (UTC) ::::::Both implementations are failing all three tests on my end. No consensus has been established as to whether monolingual texts or strings should be used, so it's like the [[w:War of the currents|war of the currents]] but for Wikifunctions. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:27, 23 April 2026 (UTC) :::::::Oh, you were referring to {{Z|Z33986}}. I assumed you were stating that something was wrong in the earlier English functions that I missed; I apologize for the misunderstanding. Has there been any centralized discussion on this string vs. monolingual text issue? &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 14:31, 23 April 2026 (UTC) ::::::::Not that I'm aware of, I've brought it up on the telegram twice before, though. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:49, 23 April 2026 (UTC) ::::::::The centralised discussion is at [[WT:Abstract Wikipedia/2025 fragment experiments#Proposed recommendation: Fragments should return Z11/monolingual strings]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 07:19, 24 April 2026 (UTC) ::::::: {{re|Theki|Feeglgeef}} Can only functioneers test implementations? For me I can't test it at all... [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 14:32, 23 April 2026 (UTC) ::::::::AFAIK, test cases are only immediately testable during editing of a function if they are connected. This is one of my personal pain points with Wikifunctions, iterating on functions without exhaustive connected test cases makes debugging practically impossible for non-functioneers working on newly-created functions... I (or Feeglgeef) can quickly connect the tests you need for you if you want, although if they are not well-formed they may need to be disconnected again afterwards. Additionally, I could temporarily connect the implementation you are writing so that you can test it on the sidebar as you work, but I'm not sure if this is advisable. That functionality is also something that unfortunately only works when not disconnected. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 14:43, 23 April 2026 (UTC) :::::::::Yup, agree with you on all points, thanks. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:48, 23 April 2026 (UTC) == Please disconnect implementation == I think I've fixed my issue with {{Z|Z33986}}, but I can't edit an actively connected implementations with my rights. I must admit it is an AI-aided fix, I feel very strongly about disclosing that. Courtesy pinging [[User:Theki]] and [[User:Feeglgeef]]. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 18:51, 23 April 2026 (UTC) : Additionally, I think the JS might be working. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 18:52, 23 April 2026 (UTC) : Just to clarify, I mean disconnect the Python implementation please. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 18:53, 23 April 2026 (UTC) :{{Done}} I've disconnected the Python implementation. :I've also added a couple of tests. The rule is a bit more complicated than adding a maqaf before every character that is not a Hebrew letter. Unfortunately, I don't think I'll have time to fix the implementations any time soon. [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 19:03, 23 April 2026 (UTC) :: Thank you! :: Also, for some reason I thought you put a maqaf before all gershayim, so thanks for correcting me. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 19:09, 23 April 2026 (UTC) :::No, that's not the rule. :::The rest of this reply is an [[:wikt:info-dump|infodump]], feel free to ignore it :) :::In [https://hebrew-academy.org.il/topic/hahlatot/punctuation/ the Academy's punctuation rules], the rule for adding a maqaf is written kind of badly: שמים מקף ברצף שיש בו שני סוגי גופנים, כגון אותיות ומספרים ("maqaf is added in a sequence in which there are two types of fonts, such as letters and numerals"). These are not different types of "fonts", but different types of characters, and I should email them about it. It gives the examples <span lang="he" dir="rtl">ה־12</span> and <span lang="he" dir="rtl">ב־DNA</span>. It doesn't say anything explicitly about quotation marks, but in other places on the same page, you have stuff like <span lang="he" dir="rtl">ב"הארץ"</span>, and from that I deduce that a maqaf is not needed before double quotes if there are Hebrew letters inside the double quotes. :::That said, a few people do think that there must be a maqaf before double quotes. I have a somewhat surprising example of somebody who always does it: translators of Scientology materials into Hebrew. At least that's what they did last time I looked at them, about ten years ago. Those people are certainly prolific, and they get points from me for consistency, but this not the prevalent standard. (And if I recall correctly, they use the minus and not the proper Hebrew maqaf, and they don't get any points from me for that!) :::Also, the name of the character is just "double quotes" and not "gershayim". Gershayim are mostly for abbreviations, although most people use the same character for them. I use ״ for gershayim, as do a few other nerds, but we're the minority. [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 19:35, 23 April 2026 (UTC) :::: {{re|Amire80}} Yeah, "font" is a weird choice of wording here by the Academy...<br> I think I'll follow your guidance and not use a maqaf for quotes beginning with Hebrew letters. <br> I should also add more tests for different types of quotes, like straight (", '), curly (“, ”, ‘, ’), gershayim (״, ׳), including single quotes.<br> P.S. gotta deduct points from Scientology for being a cult but that's neither here nor there [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 20:49, 23 April 2026 (UTC) :::: {{re|Amire80}} Courtesy ping because I mistyped your username on the last message. Anyways I'm also gonna do that tomorrow because I'm tired now... [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 20:50, 23 April 2026 (UTC) == Connect implementations == Hello! I'm done with the implementations of {{Z|Z33986}} both in JS and Python, and all tests pass. Pinging @[[User:Amire80|Amire80]] to check if all the tests I've added are alright. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 15:24, 24 April 2026 (UTC) :Connected. It's possible that some more changes will be needed, but it looks OK now. :Another little comment: It should be called "clitic" and not "prefix". [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 15:56, 24 April 2026 (UTC) : {{re|Amire80}} Thanks for your comment! Luckily labels are easy to edit, so I'll get to it. : Currently I'm working on Bulgarian {{z|Z34072}} and {{z|Z34084}}, along with other Bulgarian functions. After I'm finished with those I'll take your advice. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 16:01, 24 April 2026 (UTC) == Please connect my Bulgarian implementations == I recently created the following Bulgarian functions: * {{Z|Z34070}} (currently broken, I think because another function I built it upon is unimplemented) * {{Z|Z34088}} * {{Z|Z34105}} * {{Z|Z34072}} * {{Z|Z34084}} Can somebody please connect these functions, and perhaps suggest other functions I could localize? [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 19:03, 24 April 2026 (UTC) : Specifically, [[Z34070]] is based on [[Z34072]] [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 19:05, 24 April 2026 (UTC) :{{done}} for everything that passes, [[Z34070]] still does not work after purging WF's cache, though. For future reference, please request on the [[WF:Community portal|community portal]] instead of the project chat. Thank you for your work! [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 20:03, 24 April 2026 (UTC) :: {{re|Feeglgeef}} Thank you for your help! I will keep in mind to go to the [[project: community portal| community portal]] in future instead for this. :: I still don't understand why {{Z|Z34070}} fails... It's implementation is almost completely identical to [[Z30399]] from {{Z|Z30397}}, unless I messed something up... [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 20:11, 24 April 2026 (UTC) :::{{done}} No, it was mostly just timing out. It is better to use selective fetches where possible. One case is failing to match the expected results, but at least it is returning something. For all I know, it might even be acceptable! [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 20:35, 24 April 2026 (UTC) :::: {{re|GrounderUK}} Thank you so much for your help! The one failed case is with a definite article, so I feel like that might be fixed in the future... <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 20:43, 24 April 2026 (UTC) == Editor experience suggestions == I'm a bit frustrated with the editing experience on Wikifunctions, and I have suggestions based on pain points I've had contributing to this project: * Adding a wizard to create functions, implementations, and tests in one flow, somewhat like Wikimedia Commons' upload wizard * A sandbox for experimenting without changing mainspace functions, and maybe letting non-functioneers connect implementations ([[Project: Sandbox]] doesn't seem to fit this) * We could have functions for creation based on the sandbox, like how Wikipedia has articles for creation and edit requests, * Maybe even another test instance of Wikifunctions, like how Wikidata has [[testwikidata:|Test Wikidata]] I really like this project and I don't mean to whine, but it certainly has a lot of pain points both for technical and non-technical people. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 20:41, 24 April 2026 (UTC) : It's also really complicated to localize functions, so maybe we should add another wizard for that, where you can choose a language, and then create the new function with the aforementioned function wizard, and it just automatically adds it to the related language configuration object of the related function. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 20:48, 24 April 2026 (UTC) :# Sounds good to me. :# A sandbox available is [[Z10119]], though an extension-provided sandbox that allows you to manipulate the types, code, and tests easily without interfering with the mainspace would be nice. :# [[WF:Suggest a function|This page]] works to some extent, though it's too messy in my opinion. :# We used to have a "beta cluster" but it [[phab:rOMWC5f625c5846b5f779473fa32c9a02d87e59215dfa|got shut down]] just over a year ago because it was broken. :[[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 21:07, 24 April 2026 (UTC) == Language parameters in language-specific functions == I think that an effort should be made to give the different natural language options corresponding to different English dialects, Chinese scripts, etc. more of a use (I added the test {{Z|Z34119}} to {{Z|Z26095}} and unsurprisingly it fails). There are two main problems with this approach that I can identify: * If you ask the majority of these functions to make a sentence in British English, much of the time it will give you an output with missing words, because it does not fallback to English labels in the case of a British English label for that item missing. The same applies for every other English dialect, British English is just an example here. * Uninformed editors will probably see the presence of a language parameter on these functions, consider it redundant, and remove it. [[Special:Diff/268074|I have made this mistake before]]. In my opinion, in a perfect world, all of these language generation functions would output monolingual text, and if the user asks for American English text, then American English text is what they'll get. If the user asks for Japanese text in hiragana specifically, then that's what they'll get in return. This is not as high-priority as just rendering text in the language plainly in the first place, but it's something that I feel is still worth devoting some effort to. Right now switching functions to use this paradigm is difficult because, on the one hand, I don't know if consensus tends towards this direction being ideal or advisable, and I don't want to make changes like this without at least notifying the wider community. In addition, all tests break once a parameter is added or removed, and the function editor does not recognize the change in number of parameters and therefore you have to remove the function call, re-add it along with all of its parameters it had previously (which is a tedious cut-and-paste job), and then it will work again. This is something that you can do in five seconds by just adding a few lines of JSON to the test source, but this is not directly editable from the Web browser. This tedium is largely what's preventing me from doing this on a larger scale, besides asking for comments first. If anyone has any insights or comments on this, then that would be appreciated. If a reference of functions with and without the support for language variants is needed, of course [[WF:NLG]] can be perused, but I've also my own list cataloged at [[User:Theki/functions#language]]... Of course, this thread has many similarities to [[#"language" argument for certain functions|the one above]], but this concerns me going out and making this consistent across these NLG functions. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 21:09, 24 April 2026 (UTC) :I've created {{Z|Z34122}} as an extension to {{Z|Z34039}} for larger functions. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 21:34, 24 April 2026 (UTC) :Just to confirm that I, for one, support a Natural language parameter for all natural-language functions. The concern about getting them all aligned is just that we haven’t finally settled on {{Z|Z11}} being preferred to {{Z|Z89}} or some other type that conserves the text’s provenance, so we risk having to change them all again. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:07, 25 April 2026 (UTC) == “Key not found ()”? == What am I doing wrong in {{Z|Z34137}}? [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 00:39, 25 April 2026 (UTC) :You were passing a [[Z6091]] to {{Z|32290}}, but it takes a [[Z6001]]. Fixed. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 07:10, 26 April 2026 (UTC) ::{{done|Thank you}}! [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 14:13, 26 April 2026 (UTC) == Why is my test failing? == Hello! I recently made {{Z|Z34139}} based on [[wikt:Module:bg-translit]], and the test case {{Z|Z34141}} is failing on both implementations, despite the expected output and actual output being the same as far as I can tell. I tried looking at the Unicode codepoints of the output, but those are also identical. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 06:21, 25 April 2026 (UTC) :Yes, it’s a tricky one. I’ve added a normalize step to the result validation in {{Z|Z34141}}, which confirms it is a normalization issue. It looks like it is in the code but I don’t know whether simply normalizing the result is the way to go. Logically, you would normalize both the input and the result. The implementations of {{Z|Z10384}} show you how to do this. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 09:41, 25 April 2026 (UTC) == Edit request == Hello! I have an edit request for {{Z|Z23752}} and {{Z|Z23414}}. Please replace all the "an/a" logic with <code>Z21739(Argument reference)</code>, both for readability and for more accuracy ("a university is an institution") <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 09:50, 25 April 2026 (UTC) :{{D}} [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 12:24, 25 April 2026 (UTC) == Wikifunctions & Abstract Wikipedia Newsletter #245 is out: The Foundation's search for the perfect language == There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-04-25|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it! In this issue, we present an academic paper about Abstract Wikipedia, we discuss our latest Type created, and we take a look at the newest created functions. 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]]) 09:54, 25 April 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=30325620 --> :@[[User:Sannita (WMF)|Sannita (WMF)]], @[[User:DVrandecic (WMF)|DVrandecic (WMF)]], technical meta-question: the newsletter quotes the article: ::the only way to contest its algorithm is to click 👍 or 👎 (Crawford and Gillespie 2016) :This quotation sounds sensible, but the article's [https://link.springer.com/article/10.1007/s00146-026-02899-w web version], and the PDF that is downloadable from the same page doesn't actually show the emojis. It rather shows text that looks lacking: ::the only way to contest its algorithm is to click or (Crawford and Gillespie [https://link.springer.com/article/10.1007/s00146-026-02899-w#ref-CR14 2016]) :Where did you get the emojis? Is it your (probably correct) guess or is there a version somewhere that actually shows the emojis? [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 15:16, 25 April 2026 (UTC) ::Scratch that. I've found a version with correct emojis: https://wikihistories.github.io/wikilambda-the-ultimate/ [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 15:37, 25 April 2026 (UTC) == Requested deletion of test == Please delete {{Z|Z34143}}. this was never valid Bulgarian, I messed up. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 10:19, 25 April 2026 (UTC) :[[WF:RFD]] please. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 16:40, 25 April 2026 (UTC) == Request for comment (global AI policy) == <bdi lang="en" dir="ltr" class="mw-content-ltr"> A [[:m:Requests for comment/Artificial intelligence policy|request for comment]] is currently being held to decide on a global AI policy. {{int:Feedback-thanks-title}} [[User:MediaWiki message delivery|MediaWiki message delivery]] ([[User talk:MediaWiki message delivery|talk]]) 00:57, 26 April 2026 (UTC) </bdi> <!-- Message sent by User:Codename Noreste@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30424282 --> == Is it OK to connect the implementation? == Hello! I recently applied for functioneer on [[WF:RFG]], and I was wondering whether I could connect the implementation for {{Z|Z34165}} despite its dependency {{Z|Z34149}} being currently unimplemented. That is <em>if</em> I get accepted. I am planning on implementing it based on [[wikt:module:bg-nominal]], but am still having trouble figuring it out for now. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 09:04, 26 April 2026 (UTC) == Past tense function == Is there a function like {{Z|Z26039}}, but for the past tense (e.g. "Leo Tolstoy <em>was</em> a writer.")? If not, I will create it myself, I just want to make sure there's not a duplicate. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 10:10, 26 April 2026 (UTC) : {{Done}} with {{Z|Z34224}}, but I have a few kinks to work out with it. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 10:35, 26 April 2026 (UTC) :: I need to create some other similar functions for the past tense, I have some ideas: ::* {{Z|Z26095}} ::* {{Z|Z32643}} ::* {{Z|Z28016}} ::* {{Z|Z26570}} ::* {{Z|Z33975}} ::* {{Z|Z27243}} ::* <ins>{{Z|Z26627}}</ins> ::* <ins>{{Z|Z27627}}</ins> ::* <ins>{{Z|Z27173}}</ins> ::* <ins>{{Z|Z29591}}</ins> :: :: Are there any I have missed? <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 10:57, 26 April 2026 (UTC) :I think that here we are starting to walk on dangerous waters: what does past mean? Is it a recent o a far past? Does it have ripercussions on the present or not? Is it just a thing that happened once, many times or for a continuative period of time? :Consider that various languages distinguish between many different types of past. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 12:38, 26 April 2026 (UTC) :: {{re|Dv103}} That is a fair point... :: How do we go about solving this problem though? I don't think having every sentence on Abstract Wikipedia be "X is a Y" is a very good idea. :: Maybe we have different functions for all these variations of past you mentioned that just map into "X was a Y." in English? <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 13:31, 26 April 2026 (UTC) :::To properly solve this problem, we should use a more complete abstract content representation model, like for example the proposal of [[Wikifunctions:Type proposals/Semantic unit|Semantic units]] (look at [[Wikifunctions:Type proposals/Semantic unit/Douglas Adams|the example]] to see how times could be handled). For now, since we're still stuck with single fragment generation functions (that I hope will be slowly replaced with the complete represenation model, when available), we could just restrict your function to a very specific meaning, like "subject was an instance of, for most of its existence" (which means for example that it could be used to say "Douglas Adams was a writer", but not "Abraham Lincoln was a president", since he only was a president for 4 years). Probably my definition is still too vague, and this is why we need to go beyond these fragment generating functions. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 19:47, 26 April 2026 (UTC) ::Nitpick... I don't like that it outputs a string instead of monolingual text. With {{Z|Z26039}} it's used so much that I think it's unfixable in that case beyond deprecating it if people care that much, but {{Z|Z34224}} doesn't even have any connected implementations yet. Consider it, maybe? ::Nitpick 2... {{Z|Z34227}} is missing a language parameter. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 16:08, 26 April 2026 (UTC) ::: I will consider that! ::: I just did that because that's what {{Z|Z26039}} does, so I assumed I should follow suit with it. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 16:48, 26 April 2026 (UTC) == Legacy functions == If and when more robust methods of abstractly representing and generating linguistic content come around, and more efficient ways of creating abstract content are devised and implemented, I suspect that our current methods will require some form of deprecation. This is a significant source of concern for me in relation to WF and AW, questioning how prone our current methods of doing things are and eventually will be prone to obsolescence, and how it will be worked around when it comes. We have over 1 250 articles on AW presently, and these are rather all over the place. I suspect the maintenance burden from keeping these articles up to code will eventually, err, creep up on us, I suppose, and some kind of major refactoring will be necessary. We are definitely in a period of experimentation and whatnot right now but eventually, like with enwiki, some sort of structure and rigor will form and I suspect it will start to become rather boring for me... I, for one, very much enjoy experimenting with new and better ways to do things here. I don't personally mind changing things to use a new and better paradigm if need be, that sort of thing highly excites me, but of course there will be things that are left behind, and I suspect maybe bots will be employed to deal with this? A lot of Wikipedia sister sites seem to do that, e.g. going and fixing up use of deprecated templates. Considering the nature of Wikifunctions and Abstract Wikipedia I suspect certain maintenance tasks will be made simpler or even trivial by the typical uniformity of our implementations. I guess I am just concerned if Wikifunctions or Abstract Wikipedia will ever accrue its own kind of "technical debt" with how we are plowing through things presently, and if there is a plan for how we will eventually seek to mitigate that. Maybe too early to ask this question, but I am a notoriously anxious person, so I thought it wouldn't hurt to raise the question regardless... &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 21:30, 26 April 2026 (UTC) :I very much agree, thank you for expressing my position so well. {{ping|Immanuelle}} has been using an AI-generated tool (well, they haven't edited in a week, perhaps it's a break or perhaps they don't wish to contribute to the project any more) to create a bunch of articles en masse, which I have warned them multiple times is a bad idea (on top of evolving functions, all of the articles are one-sentence-per-paragraph, [[abstract:Q12184|like so]]). That's why I've been avoiding creating articles recently, I'd say I have a good fourth (no data to support, rough guess) of the comments on the wiki, yet less than a percentage of the article count (only three, including the [[abstract:Q319|first article]], though, so perhaps I'm the next [[w:Special:Permalink/908493298|office.bomis.com]]). [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 19:41, 27 April 2026 (UTC) :: I feel that the overwhelming presence of these low-quality articles (which I admit I myself am [[abstract:Q1710970|guilty]]/[[abstract:Q7601858|of]]/[[abstract:Q39338|creating]], usually as testbeds) may incur a large maintenance burden. I do expect them to be easy to detect, however, as searching for the presence of "deprecated" NLG functions is trivial, and it is possible that replacing them with their future ''even abstracter&trade;'' counterparts could be done automatically since they all have the same signatures and can be expected to create the same form of sentence. If it needs to be done manually for a while or for certain delinquent instances, my hope is that it will be fun, at least for a while. :: I just hope that these hypothetical future waves of "this new and versatile way of abstractly representing linguistic content" obsoleting previous methods and requiring refactoring across all articles is only a one-time thing. We should strive to be as robust and flexible as possible from the outset as each brand new paradigm of abstraction is also a brand new maintenance burden for updating old articles. At the end of the day, at least ''some'' of these articles will still render to many different languages even if their methods of creating those sentences of theirs is completely outdated. Ergo, the time it takes for the switchover to be performed across our articles should not be a persistent inconvenience for users (as, of course, they will always still be able to read the content as it was before since these legacy functions aren't being deleted outright), and the increased availability that the new methods will bring about will likely act as motivation for them to join the effort in refactoring (&#x300C;You're telling me that if I rewrite this article in this cool Lisp-looking stuff then I can probably read it in [[abstract:Q9307|Galician]]?? COOL!&#x300D;). &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 20:26, 27 April 2026 (UTC) :::Totally agree. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 02:54, 28 April 2026 (UTC) :::My vague plan is to implement a default function returning an {{Z|Z89}}, for each language-neutral function. A single function would convert any of these to a {{Z|Z11}}, so that a composition of the two can be implemented as the current default until such time as the language-neutral function is ready to return a [[Z89]]. We can already convert a [[Z11]] to a [[Z89]] so, although there is more to be done in this space, existing language-specific functions could be adapted to return a [[Z89]] quite mechanistically. :::Although we certainly could deliver parallel Z89 functions for each existing Z11 function, I don’t think we should assume that particular outcome. Provided the Z89 captures a lang attribute from the Z11’s language tag, the two representations should be largely interchangeable, although I am expecting a Z89 to carry additional attributes at the span level that would be lost on conversion to a Z11 (along with any higher-level tags and attributes). :::When I say there is “more to be done in this space”, I am referring to a new type that would allow HTML fragments to be represented as tractable Wikifunctions objects, but this is currently drafted only in my head! [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:21, 29 April 2026 (UTC) == Filtering types of objects == Hello! I have tried to comb through my own edit history several times, but it's really hard to search for specifics because there's no differentiation between different types of objects (functions, implementations, tests, etc.) in the logs as far as I can tell. Am I missing anything? I want it to work sort of like how filtering by namespace works. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 16:48, 27 April 2026 (UTC) :There is differentiation, it's just rather hard to look through. Since all ZObjects are just JSON data at their core, you can search for instances of <code>{ "Z1K1": "Z[type]"</code>. I haven't tried this so I'm not sure how well it would work and I know MediaWiki search syntax treats quotation marks as a special character, but I have seen Wikifunctions pages link to searches using this before. There is also [[Special:ListObjectsByType]] but it is sitewide rather than specific to your edit history in particular. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 18:59, 27 April 2026 (UTC) ::''[It doesn’t help directly here, but please see [[WF:Find]] for more details of how this works.]'' [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:24, 29 April 2026 (UTC) :See the feature requests [[phab:T399244]]/[[phab:T373735]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 06:06, 28 April 2026 (UTC) :The lack of filtering edits by namespace is exactly the problem that I was trying to solve with the [[User:Amire80/wikifunctionsanalytics]] tool. :I even kind of succeeded, but it has two major problems: :# It doesn't have any real frontend, so you have to know some SQL to use it (or ask other people who know SQL). :# It doesn't get information from the live site, but from the dump, which appears to be updated once a month. :I've made a [https://quarry.wmcloud.org/query/104794 sample query for you]. Unfortunately, it won't do anything at the moment because of the second problem—your edits started in April 2026, which isn't over yet, so the dump for it hasn't been processed. But I hope that early in May you'll be able to use the same query and see something useful. :(I plan to add support for recent edits, but I haven't done it yet. Now that I more or less figured out how to process Wikifunctions edits, I'm focused on trying to understand Abstract Wikipedia edits. Processing up-to-date edits from both sites will possibly be the next thing I work on, but if you know some Python and want to try doing it yourself, don't wait for me—[https://gitlab.wikimedia.org/toolforge-repos/wikifunctions-analytics Patches welcome].) [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 18:51, 28 April 2026 (UTC) ::@[[User:QuickQuokka|QuickQuokka]], I've just updated the data until the end of April. Now the query to which I linked above gives some results. You can also try running other queries if you know SQL. (Or try asking for other queries if you don't.) [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 03:26, 3 May 2026 (UTC) == [[Z34213]] == I'm not quite sure why this implementation is failing. Could someone take a look? [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 02:24, 28 April 2026 (UTC) :I've [https://phabricator.wikimedia.org/T419933#11863997 notified] the team that this is still occurring, the issue was marked as resolved. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 02:52, 28 April 2026 (UTC) :Some useful tips: :* create more testcases: sometimes it is a random error, so try to see how consistent it is between testcases :* your implementation is very inefficient, since it fetches items and lexemes a lot of times. Ideally, each item and each lexeme should be only fetched once in all the execution tree. :[[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 06:06, 28 April 2026 (UTC) ::Caching (''should?'') means that the lexeme and item data are cached, so the call doesn't actually execute multiple times. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 17:51, 28 April 2026 (UTC) :::Are lexemes and items actually cached within the same function execution? Even if they are only partially fetched and/or fetched in bulk? [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 17:54, 28 April 2026 (UTC) ::::I don't have any evidence to prove that it works but that's definitely A. what's supposed to happen and B. the ideal behavior. This happens because the Z680X functions can be cached just like any other. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 18:02, 28 April 2026 (UTC) ::::It is unclear. In general, I believe identical branches are resolved only once in orchestration, but there is also independent caching of Wikidata fetches. ::::According to @[[User:DMartin (WMF)|DMartin (WMF)]] ([https://t.me/Wikifunctions/30374 on Telegram]): ::::<blockquote>Well, no. We have caching of Wikidata entities that have been retrieved, but not of the results of nested function calls. There is a proposal for doing this in the context of the V2 composition language, when it's a bit more mature, and it's regarded as a relatively high priority.</blockquote> ::::It’s hard to tell whether fetches in nested calls are, in fact, cached and available for other nested calls in the same call, since it is not generally the actual fetch that consumes the most resources. Rather (I believe), it is construction and transmission of the result object, which is currently repeated afresh in each nested call (unless it is in an identical branch). ::::I hope that’s clear, and I apologise in advance if it happens to be inaccurate! [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:16, 29 April 2026 (UTC) :::::Oh, I should clarify.  There is a lot of caching going on, in several different places.  Lexemes and items ''are'' cached by the orchestrator within the same function execution, even if they are only partially fetched and/or fetched in bulk.  When I said that we don't have caching of the results of nested function calls, I meant that's not happening in general, for all nested function calls in compositions.  But fetching of Wikidata entities gets special treatment, so yes, fetched content from Wikidata is cached, regardless if it was fetched by a top-level call or a nested call. :::::It is also true that the construction of a ZObject from the fetched JSON might happen more than once within the same function execution, depending on how a composition has been structured. However, the construction of the ZObject is actually very fast, compared to the elapsed time of getting the JSON from Wikidata. [[User:DMartin (WMF)|DMartin (WMF)]] ([[User talk:DMartin (WMF)|talk]]) 18:04, 1 May 2026 (UTC) == Question about cardinal numbers == I was about to edit {{Z|Z16435}} to add my function {{Z|Z34308}}, but I noticed that none of the other functions have a gender parameter. Should I create a new wrapper function "Bulgarian cardinal, neuter", or should I just remove the gender parameter and always return neuter? <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 10:39, 28 April 2026 (UTC) :The “cardinal” functions should return the words used for “counting” numbers in the abstract. :We should consider converting them to return a {{Z|Z11}} rather than a {{Z|Z6}}. It may even be appropriate to return a {{Z|Z12}} to cater for language variants. Either way, I think that would be the approach to adopt for inflected forms, unless reference to specific lexeme-forms is required. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 12:52, 28 April 2026 (UTC) ::This. If a native of your language were to count up, which form would they be most likely to use? [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 13:29, 28 April 2026 (UTC) ::: {{re|GrounderUK|Feeglgeef}} Thanks for both your input! ::: I relabeled the aforementioned function to {{Z|Z34308}}, and created a new wrapper function {{Z|Z34457}}. ::: Should I specify that my old function is a monolingual text in parentheses? <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 16:26, 28 April 2026 (UTC) ::::You don't have to, unless you think that is something that would require distinction when viewing the function in a list of search results &c. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 16:36, 28 April 2026 (UTC) == Optional/nullable function parameters == Hello! Recently, I was informed that Wikifunctions has no optional/nullable function parameters as of now. Are there any future plans to support this, and/or workarounds? Maybe create a union type system like "{{Z|6}} or {{Z|23}}". <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 17:53, 28 April 2026 (UTC) :What I do for this is use an "is empty" function corresponding to the type of the parameter in an If statement. If it isn't empty, the function works as intended. Otherwise, it does something else. [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 17:58, 28 April 2026 (UTC) :Unions are not a thing (yet) on Wikifunctions, but you can always define an argument of type {{Z|Z1}}, which means that all types are allowed (I already did this for {{Z|Z26737}}; note that it is still a ugly workaround, don't use it for high level functions). Also, note that usually on Wikifunctions we use {{Z|Z24}} as the null value. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 18:00, 28 April 2026 (UTC) :: {{re|JJPMaster|Dv103}} Thanks for your help! :: @[[User:Dv103|Dv103]] told me a function call with a missing parameter is treated as an invalid function call, so how does the "is empty" function work with that? :: Also, setting the type to {{Z|1}} seems naive, like setting the type as <code>any</code> in TypeScript... :: Related question: Are there plans to add default values to parameters (outside of "if empty")? <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 18:19, 28 April 2026 (UTC) :::Setting the type to {{Z|Z1}} is actually naive, and that's why I advised you to only use it for low-level functions. Currently there is nothing better. Sometimes, type correctness is not actually checked, so it might seem that nullable types are possible. But it is still an hack, and it could broke anytime since it is not intended behavior. :::I don't think that there are current plans to add default values (but correct me if I'm wrong). The closest thing that comes to my mind is that, if you incorporate Wikifunctions into Wikitext, you can leave empty some fields (only of some specific types) and Parsoid will replace them to their default value. This is done only depending on the type, and not on the functions. For example, {{Z|Z6091}} and {{Z|Z6001}} are assigned the QID associated to the page, and {{Z|Z20420}} is assigned the current date. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 18:56, 28 April 2026 (UTC) :::@[[User:QuickQuokka|QuickQuokka]]: At the very least, [[Z10008]] accepts a null input. Maybe that feature is unique to the String type—I am not sure. [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 19:10, 28 April 2026 (UTC) ::::I think it's just not checked, but it shouldn't be intended. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 19:20, 28 April 2026 (UTC) ::::Strings and typed lists can be “empty” in the sense that their length can be zero. Typed pairs may also be “empty” in a degenerate sense, but such an object will not be returned from a code implementation. A typed map with no entries will also fail to be returned from code, although it is fine in compositions. ::::For a genuinely optional parameter, I prefer a properly typed list, which at least encourages an argument of the correct type. {{Z|Z813}} is also typically faster than {{Z|Z10008}}. Quite a good example of this approach is {{Z|Z23723}}, where it helps to resolve the type union (using [[Z1]]) for both Z6003K1 and Z6003K3. Of course, there’s nothing to prevent more than one element in the list, but additional elements are easily ignored. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 22:55, 28 April 2026 (UTC) :Pinging {{ping|Jdforrester (WMF)|prefix=|p=}}, I believe there are no current plans. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 19:02, 28 April 2026 (UTC) ::@[[User:QuickQuokka|QuickQuokka]]: I'm afraid there are no current plans to build out optional params, indeed; we would be happy to review this if a compelling case was made, but it'd be a lot of work to re-build the [[Wikifunctions:Function model|function model]] with that support and ensure we don't break (too many) things. [[User:Jdforrester (WMF)|Jdforrester (WMF)]] ([[User talk:Jdforrester (WMF)|talk]]) 19:11, 28 April 2026 (UTC) == Z6830 for Chinese == I was trying to use {{Z|Z6830}} for implementation in the Chinese-language. And turns out most of the Lexeme on Wikidata is using [[d:Q727694]] as the language instead of [[d:Q7850]]. This makes it impossible to use the mentioned function above, since Standard Chinese is not available (or did I miss something?). Is there a way to fetch lexemes with language=[[d:Q727694]] from item? [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 18:20, 30 April 2026 (UTC) :@[[User:Sun8908|Sun8908]] There is [[Z1006]] for Chinese and it has the language code zh. There is an overview of languages in [[Module:Wikifunctions label]] so you can search there for chinese versions and choose the one you need. [[User:Hogü-456|Hogü-456]] ([[User talk:Hogü-456|talk]]) 20:53, 5 May 2026 (UTC) ::I know that. The problem is when using the function [[Z6830]], it cannot retrieve lexeme with language [[d:Q727694]] (but it is the "Chinese language" with the most current Wikidata lexemes, see [https://ordia.toolforge.org/language/ ordia]). I think it should be a Wikidata problem, I might fix it (possibly by creating the same lexemes with language code zh) on Wikidata. Thanks anyway. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 05:39, 6 May 2026 (UTC) :Could you provide an example of a Chinese lexeme that has a linked Wikidata item, or a Z6830 function call that fails to find such a lexeme where one exists? [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 07:55, 6 May 2026 (UTC) == Key not found error == Is there a reason why I am getting key not found error for this [[Z34677|function]] {{Z|Z34677}}? All the underlying functions run and all the test cases work. The debug information does not give more details. Any pointers? Thanks in advance [[User:Jsamwrites|John Samuel]] 19:24, 1 May 2026 (UTC) :It was passing the [[Z6091]] to {{Z|34641}} when that takes a [[Z6001]]. I've fixed that, but there's some other problem with the logic, so I've left it disconnected. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 19:42, 1 May 2026 (UTC) ::@[[User:YoshiRulz|YoshiRulz]] Thanks a lot. [[User:Jsamwrites|John Samuel]] 20:21, 1 May 2026 (UTC) == Wikifunctions & Abstract Wikipedia Newsletter #246 is out: Request for input: what should we count for Abstract Wikipedia == There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-05-02|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it! In this issue, we ask you what would be the relevant metrics for Abstract Wikipedia, we discuss our latest news on 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]]) 12:21, 2 May 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=30325620 --> == Any formal process for deletion of pages == Does a formal process exist for the deletion of functions, implementations, and tests that includes a notification system for creators, analogous to Wikidata’s process, explaining the rationale behind the deletion (or proposal for deletion)? [[User:Jsamwrites|John Samuel]] 12:36, 3 May 2026 (UTC) :Does [[Wikifunctions:Requests for deletions]] work? [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 13:00, 3 May 2026 (UTC) :Please see the discussion at [[Wikifunctions talk:Requests for deletions#Should we expect Objects' creators to get pinged on deletion proposals?]]. :As I see it, it is the proposer’s responsibility to consult appropriately before making a request and we expect our administrators to act only when satisfied that appropriate consultation has occurred. In many cases, no consultation is required. Administrators may delete their own contributions without making a request, but this is not a practice I would encourage. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 13:51, 3 May 2026 (UTC) == Implementation of rational number in JS doesn't match in Z19677 (Rational number) and Z28579 (RGBA colour) == In {{Z|19677}} it's <syntaxhighlight lang=js> { "K1": sign * numerator, "K2": denominator } </syntaxhighlight> but in {{Z|28579}} it's <syntaxhighlight lang=js> [ sign * numerator, denominator ] </syntaxhighlight> '''<span style="font-family:Iosevka,monospace">[[User:沈澄心|<span style="color:#9f3526">dring</span>]][[User talk:沈澄心|<span style="color:#534fa3">sim</span>]]</span>''' 05:15, 4 May 2026 (UTC) == Nested functions in compositions == I wish it will be easier to a add another function about a specific existing function in a function implementation based on a composition. When I write long functions in spreadsheets I usually stat with a small part and then I try to go further and after important steps I test if the output is as expected. I created [[Z34826]] to get the German gender specific occupation lexeme for a specific person based on their gender. I wanted to add a function around the existing one and it was not successful. It is not very easy to implement as it requires the possibily to move a part to another section but I think it can be helpful if it will be implemented. So far I spend more time as expected on the function. Describing it with words what the function needs to do is much easier than implementing it here in Wikifunctions. So I think there needs to be improvement to make Wikifunctions more accessible. [[User:Hogü-456|Hogü-456]] ([[User talk:Hogü-456|talk]]) 21:10, 5 May 2026 (UTC) :Have you tried to use the copy-paste functionality? It is very useful to move parts of composition arounn. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 07:12, 6 May 2026 (UTC) 29kjqibg6h962qbn1tdassu46ylu3uv 272636 272620 2026-05-06T10:33:27Z Sun8908 9804 /* Z6830 for Chinese */ Reply 272636 wikitext text/x-wiki {{shortcut|[[WF:CHAT]]|[[WF:PC]]|[[WF:VP]]}} __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/ }} == "language" argument for certain functions == Hello. I am relatively new to Wikifunctions. Recently, I tried to create functions for Chinese translation of {{Z|Z26570}} and {{Z|Z26095}} (which became [[Z32788]] and [[Z32900]]). During the creation of these functions, I was trying to take {{Z|Z32212}} as reference. And I realized that the defining role sentence function is taking <code>language</code> as an argument (and the test case of the Chinese-language function already contains two varieties of Chinese). This makes it possible to output monolingual text in <code>zh-hant</code>, <code>zh-hans</code>, <code>zh-tw</code>, or any varieties of the language. I think for this reason, it is better to have <code>language</code> as arguments for the implementation of Z26570 and Z26095, and potentially more functions that require {{Z|Z14294}}, since it would output the varieties code instead of just saying <code>zh</code> for <code>zh-hant</code>, <code>zh-hans</code>, <code>zh-tw</code> in the output of type {{Z|Z11}}. I am not sure how the fallback mechanism works if one of the language (varieties) do not have a labels/lexemes, but to me, it is reasonable to have a <code>language</code> argument. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 09:38, 31 March 2026 (UTC) :The functions you mention do have a language argument. For Wikifunctions, the {{Z|Z60}} can be at a higher or lower level; whether a {{Z|Z11}} is for a language or a variant is determined by the function that constructs it. Please see {{Z|Z26565}} for an example and feel free to add test cases in Chinese. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 17:54, 11 April 2026 (UTC) ::Hello @[[User:GrounderUK|GrounderUK]], thanks for the answer. I understand that whether {{Z|Z11}} is for a language or a variant depends on the function. But that is exactly what I am asking for. It is true that [[Z26570]] and [[Z26095]] takes [[Z60]] as argument, but the language-specific functions in {{Z|Z29843}} and {{Z|Z26096}} don't. ::Let me give you an example: INPUT to [[Z26570]]: <code>entity</code>: Tokyo, <code>class</code>: city, <code>location</code>: Japan, <code>language</code>: zh-cn, the config would select [[Z33030]] (created after my previous comment by elseone) as the implementation, and it would RETURN 东京是日本的一个城市。(zh-hans), which is not zh-cn as requested in the INPUT. It would also be using the term not for the variant (when it is different) because it is hardcoded to use the term in zh-hans. However, if we have the implementation like [[Z32790]] (which was created by me but a natural language argument was added by elseone) or [[Z32213]] (that works in the defining role sentence function because of the extra argument), it could cater for different variant. ::If we don't have the language argument in the language-specific function, the desire for article creation on Abstract Wikipedia would be to create a function for every variant. Is it then better to create functions for every variant? [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 18:18, 11 April 2026 (UTC) :::I forgot to mention that there are some hardcoding in {{Z|Z32790}} as well, but I cannot fix it because it is a connected function and I am not a functioneer. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 18:31, 11 April 2026 (UTC) ::::Okay, I think it’s safe to disconnect this one as the function is not yet configured for use on Abstract Wikipedia. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 19:04, 11 April 2026 (UTC) :::Ah, sorry… I misunderstood you. I agree that the called function should be able to accept the original language argument. That is simpler in theory than in practice, because the configured functions all have to have the same argument types, as I understand it. I’m not sure which the best approach is, really, but we probably want to avoid two levels of configuration. That suggests that all language-specific functions would need to accept the additional argument, which is unrewarding work for someone. @[[User:99of9|99of9]], @[[User:Jdforrester (WMF)|Jdforrester (WMF)]], @[[User:DVrandecic (WMF)|DVrandecic (WMF)]] Any thoughts? [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 18:57, 11 April 2026 (UTC) ::::I mean, we would need to modify all the functions in each language, which could take some time. But we are still in an early stage. If we don't fix it now and we want to fix it later, it would be a disaster. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 19:25, 11 April 2026 (UTC) :::::Agreed. And we probably want them converted to HTML too, with separate language spans for text in different languages. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 19:35, 11 April 2026 (UTC) ::::@[[User:GrounderUK|GrounderUK]]: This sounds like a reasonable change to make. Note that (given these Functions are primarily for use on Abstract Wikipedia), altering/replacing them to return Z89/HTML fragments is already a desired but breaking change, so making a second breaking change at the same time is probably easiest for fixing things swiftly. That said, that's of course a decision for the Abstract Wikipedia and Wikifunctions communities, not me! [[User:Jdforrester (WMF)|Jdforrester (WMF)]] ([[User talk:Jdforrester (WMF)|talk]]) 19:43, 12 April 2026 (UTC) ::::@[[User:GrounderUK|GrounderUK]]@[[User:Sun8908|Sun8908]] to make it a non-breaking change, I've created {{Z|Z34039}} which allows a composition {{Z|Z34043}}. This way you can make functions which either need the specified variant or don't! --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 05:52, 24 April 2026 (UTC) :I have now created {{Z|Z33465}}, which is an implementation of [[Z26570]]. Maybe we can migrate to use that function when more (language-specific) functions for it are ready? [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 18:19, 14 April 2026 (UTC) == Help me understand why test passes but running function with same input errors == I've been working on a function that I thought I had working correctly: {{Z+|Z31108}}. It has a test which is passing, but when I enter the same Wikidata item as the test uses (or any other relevant item that it ought to work for), it errors. I can't figure out what's wrong (and the function itself seemed to be working as expected the last time worked on it, a month ago), and I don't know how to interpret the error info. The error output is: <code> Error type: Unspecified error Error data: error information: "cannot read property 'Z6003K4' of undefined" Execution debug logs: Z12696K2 (find this) ==> ZObject<Z1K1:{'Z1K1': 'Z9', 'Z9K1': 'Z6007'},Z6007K1:ZObject<Z1K1:{'Z1K1': 'Z9', 'Z9K1': 'Z6092'},Z6092K1:P3831>,Z6007K2:ZObject<Z1K1:{'Z1K1': 'Z9', 'Z9K1': 'Z6091'},Z6091K1:Q7380503>,Z6007K3:ZReference<Z6021>> </code> -- [[User:Ragesoss|Ragesoss]] ([[User talk:Ragesoss|talk]]) 18:02, 10 April 2026 (UTC) :Hmm… I’ve had a quick look and found a comparable error with {{Z|Z29937}}, which was passing “4 months ago”. The debug comes from {{Z|Z12863}}, after it fails to find a match. This is probably because Z6007K3 is ZReference("Z6021") rather than a Z6020 object, as it appears in the debug logs for your test “28 days ago”: :"Z6007K3":{"Z1K1":{"Z1K1":"Z9","Z9K1":"Z6020"},"Z6020K1":{"Z9K1":"Z6021"}} :This means it’s probably a bug introduced by a recent software change. I’ll take a closer look over the weekend, but the actual error for your test case now is: :Unspecified error (error information: "cannot read property 'Z6003K4' of undefined") :I’m guessing that’s from there being no guard against an empty array in {{Z|Z23681}}, but we’ll see. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 23:22, 10 April 2026 (UTC) :I tracked down the bug to [[Z29869]] and fixed that, but the tests for [[Z31659]] are still failing. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 05:44, 11 April 2026 (UTC) ::Thanks. I’ve re-implemented {{Z|Z23680}} with {{Z|Z33331}} so we at least get a meaningful error in {{Z|Z31108}}. The new implementation explicitly caters for the alternative representation of {{Z|Z6040}} and errors on the empty list it gets from {{Z|Z31659}}. ::I also made a [[Z33332|simple Python implementation]], which seems to work. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 16:29, 11 April 2026 (UTC) == No place to ask to activate a function? == I just discovered the {{Z|Z11390}} function and decided to make an overarching language-selecting function for it. After some fiddling around and studying how {{Z|Z32321}} and its set works, I now have {{Z|Z33439}} which has a config object ({{Z|Z33441}}) that selects between the two preexisting language-specific versions I found (English and Malayalam) and the new one I created for my other native language, {{Z|Z33440}}. Except I can't get these to work, because, from what I understand, only [[Wikifunctions:Functioneers|functioneers]] can activate newly created functions and implementations? So where do I apply for the {{Z|Z33439}} and {{Z|Z33440}} functions to be activated? Perhaps we should have a place to ask for it, a la [[w:WP:NPP]] — call it [[Project:New Functions Patrol|New Functions Patrol]] if you will. —[[User:UndueMarmot|<span style="color:#705ccb;">Undue</span><span style="color:#cfdfa3;background-color:#705ccb;">Marmot</span>]] ([[User talk:UndueMarmot|talk]]) 08:58, 14 April 2026 (UTC) :There's [[Wikifunctions:Community portal]] for this. By the way, {{Z|Z33445}} doesn't work because all the code must be inside the main function in Python code. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 09:19, 14 April 2026 (UTC) ::Huh. How could I have missed that? ::But anyway, I've moved the code in {{Z|Z33445}} into inside the main function block. ::Is there any reason why WF decided not to simply allow anyone to write functions? After all, that's how it works with wikitext templates, and these functions are fundamentally serving the same purposes as templates, just written in a different way. —[[User:UndueMarmot|<span style="color:#705ccb;">Undue</span><span style="color:#cfdfa3;background-color:#705ccb;">Marmot</span>]] <small>([[User talk:UndueMarmot|talk]])</small> 11:25, 14 April 2026 (UTC) :::I've fixed a couple of technical issues, but tests still fail. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 11:28, 14 April 2026 (UTC) ::::The tests pass now after some more changes to the code: [[Special:Diff/265232/cur]]. —[[User:UndueMarmot|<span style="color:#705ccb;">Undue</span><span style="color:#cfdfa3;background-color:#705ccb;">Marmot</span>]] <small>([[User talk:UndueMarmot|talk]])</small> 12:01, 14 April 2026 (UTC) :::::{{D|Connected}} [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 12:02, 14 April 2026 (UTC) :::I think it's a security issue, since Wikifunctions implementations could teoretically be malicious. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 11:29, 14 April 2026 (UTC) ::::This ^^^. We're very lenient, though, once you've created a few working functions you can apply for the right, per [[WF:Functioneer]]. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 12:26, 14 April 2026 (UTC) ::::That explanation [[phab:T343559#11421293|doesn't add up]]. A reason to limit ''connection powers'' to Functioneers might be to prevent vandalism, considering Functions can be used across wikis. But user-provided code is already being executed even without a Functioneer connecting it. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 20:01, 16 April 2026 (UTC) == Actual difference between {{Z|Z26039}} and {{Z|Z26095}} == What is the actual difference between these two functions? I ask, since it seems to me that the current distinction is more or less that the first one doesn't use an indefinite article in English, while the second does. Which is not a good distinction in a project that should be language neutral. This doubt emerged from my use of the first one in [[abstract:Q124441]], which @[[User:Hogü-456|Hogü-456]] made me notice that is probably wrong. My question is: why is it wrong? How could we clarify the difference? [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 19:46, 19 April 2026 (UTC) :I think the difference is if there is an indefinite article like a or an before the subject or not. In German there can be cases where a definite article is necessary before the subject. I looked at the functions and before the object both times an article is mentioned. As it depends on the language and the word what is the correct function to use I hope it will be clarified and it is an example of the necessity to have a human with understanding in a specific language check it. I hope there will be longer functions what generate more content about a specific kind of item. Then it is necessary to write one such function per language and it can be then applied to several items. It still requires checks and so maybe it is better to write down what item category needs what kind of introduction sentence function for what language. [[User:Hogü-456|Hogü-456]] ([[User talk:Hogü-456|talk]]) 20:05, 19 April 2026 (UTC) ::The point of these two functions (and of the entire Abstract Wikipedia project) is that they should be defined in a purely language-independent way, so that the translation to actual language can be done automatically. This is the reason why these functions have been renamed; I think that this attempt was not succesful, since meaning is still unclear. My proposal to clarify them would be to invoke the concept of [[w:specificity (linguistics)|specificity]]: {{Z|Z26039}} should be named "specific subject is instance of (string)", and should be used only when the QID of the subject uniquely identifies a single thing; {{Z|Z26095}} should instead be renamed in "non-specific subject is kind of (Monolingual text)", and should be used when the QID refers to a multitude of real life items, and we are specifying the class that all these item belong to. This clarification would not still be enough, since it doesn't explain how mass nouns are handled (is water a unique thing? Does {{Q|Q7802}} refer to a single piece of bread or to the entirety of bread, like water?). This problem is very tricky, since mass noun are language-specific and blurry the line between these two functions. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 20:58, 19 April 2026 (UTC) :Simply put, one corresponds to P31 and the other to P279. Paris is an {{Q|P31}} a {{Q|Q1549591}} :whereas a {{Q|Q1549591}} is a {{Q|P279}} (alias “kind of”) {{Q|Q515}}. Whether the Wikidata knowledge representation will be sufficient to resolve into fluent natural language representations in all languages is, of course, a crucial question. Where it is not, the Abstract Wikipedia knowledge representation will need to supplement the Wikidata content with additional details about the relation between the participants or the participants themselves, and these details should be language-neutral, to the extent that this is practicable. The item {{Q|Q124441}} has no [[:d:Q124441#P31|P31]] statements; it has only [[:d:Q124441#P279|P279]]s, including one relating it to {{Q|Q212920}}, which suggests {{Z|Z26095}} is the appropriate choice here even if the rendering in some languages is the same. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 22:52, 19 April 2026 (UTC) ::Thanks for explaining it. I think that I'll change the implementation of {{Z|Z26095}}, so that in Italian it produces more or less the same output of {{Z|Z26039}} (both with the definite article). [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 11:24, 20 April 2026 (UTC) == Equivalent of Z6830 for lexemes == Is there an equivalent of {{Z|Z6830}} that enables retrieving all lexemes pointing to a particular lexeme using a specific property? [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 21:06, 20 April 2026 (UTC) :There's {{Z|6831}} but I think that's slightly different again to what you're after. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 12:31, 21 April 2026 (UTC) ::Thanks for sharing that one, I did not know it existed. But you are right, it’s not quite what I am looking for. I want a function that would take a Wikidata property reference (like P5191, which is ‘derived from lexeme’) and a Wikidata lexeme reference, and return a list of lexemes that reference that lexeme using that property. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 13:23, 21 April 2026 (UTC) == Storing huge datasets == It is not a necessity I suppose, but an idea came to me earlier to write a function that would give the corresponding [[en:Shavian alphabet|Shavian alphabet representation]] of an English word written with the Latin alphabet, or perhaps apply that operation to an entire sentence. However, just trying to guess as to what the IPA pronunciation of each word passed into it could be is is both not ideal (pronunciations obviously can and will vary widely between accents) and infeasible <s>(Wikidata lexemes don't really seem to account for pronunciation)</s>. It happens, though, that a comprehensive Shavian dictionary exists named the [https://readlex.pythonanywhere.com/ ''Read Lexicon''], which uses pronunciation and spelling similar to that used by the creator of the alphabet himself. This would be a good dataset to use in performing this translation in the function, but it appears that, all in all, the total size of the dictionary is [https://github.com/Shavian-info/readlex/blob/main/readlex.json ''nearly 26MB''] when formatted as JSON, which would certainly be larger when converted into a typed list. I am wondering if this will ever be feasible or admissible, or if there is really a way around this if importing such a large set of data is deemed impractical. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 22:30, 20 April 2026 (UTC) :{{re|Theki}} "Wikidata lexemes don't really seem to account for pronunciation"" is patently untrue; not only does every Bokmål lexeme form have IPA attached to it (thanks to Jon Harald Søby), but there are lots of languages--including English--that have pronunciation information, whether through IPA or otherwise, indicated on their forms. The big issue of course is that adding this data is not always possible to perform efficiently--for instance, I'd love to have Yiddish pronunciation respellings from Paul Abelson's dictionary on as many English forms as possible, but this dictionary not being previously processed makes this difficult. The data set you have brought up, if a suitable reading of [[:m:Wikilegal/Lexicographical_Data]] allows it, could be added as {{P|7243}} statements on various English forms. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 23:20, 20 April 2026 (UTC) ::Well, sorry... I haven't witnessed these pronunciation statements before, I wasn't aware of their existence until you pointed it out. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 15:02, 21 April 2026 (UTC) :I got 1,900,000 characters into [[Z33875]] before the UI gave up on me. I'm not sure what the limit is. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 15:21, 21 April 2026 (UTC) == Could not serialize input JS object: Number <small><small>[insert tested number here]</small></small> == I'm not one to throw my problems at others, but I have no idea how to fix this. Am implementing {{Z|Z24602}} in JavaScript, which requires returning a typed map. It now works for every type of value except numbers. Tried explicitly converting the numbers to float64, but either way it throws the error above. Would appreciate it if anyone could diagnose or fix the problem, as my knowledge of Wikifunctions is amateur at best. Thank you. [[User:Some helpful person|Some helpful person]] ([[User talk:Some helpful person|talk]]) 00:32, 23 April 2026 (UTC) :The quick answer is that like some list-related functions, code implementations returning typed maps are not possible unless the type of the objects in the map is specified in the function signature (e.g. if it was a map from Strings to Natural numbers only). So unfortunately, I think you've chosen a function that is not really possible at the moment. There are a few ideas of how we might address this, but for the moment, work on something else. Sorry! --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 13:21, 23 April 2026 (UTC) :Maybe explicitly using [[Z13518|natural numbers]] would work? I would try using <code>{ "Z1K1": "Z13518", "Z13518K1": "[number]" }</code> to represent numbers, perhaps, and seeing if that works. Of course, you would also probably have to adapt this for other types that cannot be serialized, and I'm not sure how easy that would be to generalize (assuming [[w:Don't repeat yourself|DRYness]] is desired). &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 14:39, 23 April 2026 (UTC) == Help with creating a function for Abstract Wikipedia == Hello! I was inspired by {{Z|Z26570}} to create {{Z|Z33975}}, however I'm not sure how I add specific language implementations here. Can anybody help me? [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 10:41, 23 April 2026 (UTC) : I think I figured it out, I created a new object with the language config type, added {{Z|Z14310}} to my implementation, and added a new function for English... At least I think that's how it works... [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 13:16, 23 April 2026 (UTC) ::You have the right idea, as far as I know. I went ahead and connected the implementations you created as they appear to work fine for English, and added a test for {{Z|Z33975}} (which passes [[File:Twemoji 1f601.svg|24px]]). I also corrected an error you made on the config object where you appear to have accidentally connected English to {{Z|Z33975}} instead of {{Z|Z33977}}. Thank you for contributing! &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 13:45, 23 April 2026 (UTC) ::: {{re|Theki}} Thank you so much for you help! Could you please kindly also connect the implementations for {{Z|Z33986}} which I just made, which is going to be used for the Hebrew implementation of {{Z|Z33975}}. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 14:11, 23 April 2026 (UTC) ::::You seem to be returning the wrong type in both implementations. Functioneers should not connect implementations that don't work for non-functioneers. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:13, 23 April 2026 (UTC) ::::: {{re|Feeglgeef}} Oh thank you for pointing that out! I am still a bit new to this project and confused, so I need to read up some more about this. How do I return a monolingual text object? [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 14:17, 23 April 2026 (UTC) ::::::I'm trying to fix it for you, the construction of ZObjects in code implementations is a bit difficult right now. Since the State origin using entity and class function will (presumably) be composition, perhaps {{Z|33975}} can be adjusted to return a string, using {{Z|26107}} and {{Z|26107}}? [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:21, 23 April 2026 (UTC) :::::I did not notice any discrepancies from looking at the functions by themselves, and it seemed to work fine on my end. Is it bad practice for NLG functions to return the monolingual text type? I had assumed it was logical. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 14:24, 23 April 2026 (UTC) ::::::Both implementations are failing all three tests on my end. No consensus has been established as to whether monolingual texts or strings should be used, so it's like the [[w:War of the currents|war of the currents]] but for Wikifunctions. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:27, 23 April 2026 (UTC) :::::::Oh, you were referring to {{Z|Z33986}}. I assumed you were stating that something was wrong in the earlier English functions that I missed; I apologize for the misunderstanding. Has there been any centralized discussion on this string vs. monolingual text issue? &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 14:31, 23 April 2026 (UTC) ::::::::Not that I'm aware of, I've brought it up on the telegram twice before, though. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:49, 23 April 2026 (UTC) ::::::::The centralised discussion is at [[WT:Abstract Wikipedia/2025 fragment experiments#Proposed recommendation: Fragments should return Z11/monolingual strings]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 07:19, 24 April 2026 (UTC) ::::::: {{re|Theki|Feeglgeef}} Can only functioneers test implementations? For me I can't test it at all... [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 14:32, 23 April 2026 (UTC) ::::::::AFAIK, test cases are only immediately testable during editing of a function if they are connected. This is one of my personal pain points with Wikifunctions, iterating on functions without exhaustive connected test cases makes debugging practically impossible for non-functioneers working on newly-created functions... I (or Feeglgeef) can quickly connect the tests you need for you if you want, although if they are not well-formed they may need to be disconnected again afterwards. Additionally, I could temporarily connect the implementation you are writing so that you can test it on the sidebar as you work, but I'm not sure if this is advisable. That functionality is also something that unfortunately only works when not disconnected. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 14:43, 23 April 2026 (UTC) :::::::::Yup, agree with you on all points, thanks. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:48, 23 April 2026 (UTC) == Please disconnect implementation == I think I've fixed my issue with {{Z|Z33986}}, but I can't edit an actively connected implementations with my rights. I must admit it is an AI-aided fix, I feel very strongly about disclosing that. Courtesy pinging [[User:Theki]] and [[User:Feeglgeef]]. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 18:51, 23 April 2026 (UTC) : Additionally, I think the JS might be working. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 18:52, 23 April 2026 (UTC) : Just to clarify, I mean disconnect the Python implementation please. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 18:53, 23 April 2026 (UTC) :{{Done}} I've disconnected the Python implementation. :I've also added a couple of tests. The rule is a bit more complicated than adding a maqaf before every character that is not a Hebrew letter. Unfortunately, I don't think I'll have time to fix the implementations any time soon. [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 19:03, 23 April 2026 (UTC) :: Thank you! :: Also, for some reason I thought you put a maqaf before all gershayim, so thanks for correcting me. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 19:09, 23 April 2026 (UTC) :::No, that's not the rule. :::The rest of this reply is an [[:wikt:info-dump|infodump]], feel free to ignore it :) :::In [https://hebrew-academy.org.il/topic/hahlatot/punctuation/ the Academy's punctuation rules], the rule for adding a maqaf is written kind of badly: שמים מקף ברצף שיש בו שני סוגי גופנים, כגון אותיות ומספרים ("maqaf is added in a sequence in which there are two types of fonts, such as letters and numerals"). These are not different types of "fonts", but different types of characters, and I should email them about it. It gives the examples <span lang="he" dir="rtl">ה־12</span> and <span lang="he" dir="rtl">ב־DNA</span>. It doesn't say anything explicitly about quotation marks, but in other places on the same page, you have stuff like <span lang="he" dir="rtl">ב"הארץ"</span>, and from that I deduce that a maqaf is not needed before double quotes if there are Hebrew letters inside the double quotes. :::That said, a few people do think that there must be a maqaf before double quotes. I have a somewhat surprising example of somebody who always does it: translators of Scientology materials into Hebrew. At least that's what they did last time I looked at them, about ten years ago. Those people are certainly prolific, and they get points from me for consistency, but this not the prevalent standard. (And if I recall correctly, they use the minus and not the proper Hebrew maqaf, and they don't get any points from me for that!) :::Also, the name of the character is just "double quotes" and not "gershayim". Gershayim are mostly for abbreviations, although most people use the same character for them. I use ״ for gershayim, as do a few other nerds, but we're the minority. [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 19:35, 23 April 2026 (UTC) :::: {{re|Amire80}} Yeah, "font" is a weird choice of wording here by the Academy...<br> I think I'll follow your guidance and not use a maqaf for quotes beginning with Hebrew letters. <br> I should also add more tests for different types of quotes, like straight (", '), curly (“, ”, ‘, ’), gershayim (״, ׳), including single quotes.<br> P.S. gotta deduct points from Scientology for being a cult but that's neither here nor there [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 20:49, 23 April 2026 (UTC) :::: {{re|Amire80}} Courtesy ping because I mistyped your username on the last message. Anyways I'm also gonna do that tomorrow because I'm tired now... [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 20:50, 23 April 2026 (UTC) == Connect implementations == Hello! I'm done with the implementations of {{Z|Z33986}} both in JS and Python, and all tests pass. Pinging @[[User:Amire80|Amire80]] to check if all the tests I've added are alright. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 15:24, 24 April 2026 (UTC) :Connected. It's possible that some more changes will be needed, but it looks OK now. :Another little comment: It should be called "clitic" and not "prefix". [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 15:56, 24 April 2026 (UTC) : {{re|Amire80}} Thanks for your comment! Luckily labels are easy to edit, so I'll get to it. : Currently I'm working on Bulgarian {{z|Z34072}} and {{z|Z34084}}, along with other Bulgarian functions. After I'm finished with those I'll take your advice. [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 16:01, 24 April 2026 (UTC) == Please connect my Bulgarian implementations == I recently created the following Bulgarian functions: * {{Z|Z34070}} (currently broken, I think because another function I built it upon is unimplemented) * {{Z|Z34088}} * {{Z|Z34105}} * {{Z|Z34072}} * {{Z|Z34084}} Can somebody please connect these functions, and perhaps suggest other functions I could localize? [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 19:03, 24 April 2026 (UTC) : Specifically, [[Z34070]] is based on [[Z34072]] [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 19:05, 24 April 2026 (UTC) :{{done}} for everything that passes, [[Z34070]] still does not work after purging WF's cache, though. For future reference, please request on the [[WF:Community portal|community portal]] instead of the project chat. Thank you for your work! [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 20:03, 24 April 2026 (UTC) :: {{re|Feeglgeef}} Thank you for your help! I will keep in mind to go to the [[project: community portal| community portal]] in future instead for this. :: I still don't understand why {{Z|Z34070}} fails... It's implementation is almost completely identical to [[Z30399]] from {{Z|Z30397}}, unless I messed something up... [[User:QuickQuokka|QuickQuokka]] ([[User talk:QuickQuokka|talk]]) 20:11, 24 April 2026 (UTC) :::{{done}} No, it was mostly just timing out. It is better to use selective fetches where possible. One case is failing to match the expected results, but at least it is returning something. For all I know, it might even be acceptable! [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 20:35, 24 April 2026 (UTC) :::: {{re|GrounderUK}} Thank you so much for your help! The one failed case is with a definite article, so I feel like that might be fixed in the future... <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 20:43, 24 April 2026 (UTC) == Editor experience suggestions == I'm a bit frustrated with the editing experience on Wikifunctions, and I have suggestions based on pain points I've had contributing to this project: * Adding a wizard to create functions, implementations, and tests in one flow, somewhat like Wikimedia Commons' upload wizard * A sandbox for experimenting without changing mainspace functions, and maybe letting non-functioneers connect implementations ([[Project: Sandbox]] doesn't seem to fit this) * We could have functions for creation based on the sandbox, like how Wikipedia has articles for creation and edit requests, * Maybe even another test instance of Wikifunctions, like how Wikidata has [[testwikidata:|Test Wikidata]] I really like this project and I don't mean to whine, but it certainly has a lot of pain points both for technical and non-technical people. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 20:41, 24 April 2026 (UTC) : It's also really complicated to localize functions, so maybe we should add another wizard for that, where you can choose a language, and then create the new function with the aforementioned function wizard, and it just automatically adds it to the related language configuration object of the related function. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 20:48, 24 April 2026 (UTC) :# Sounds good to me. :# A sandbox available is [[Z10119]], though an extension-provided sandbox that allows you to manipulate the types, code, and tests easily without interfering with the mainspace would be nice. :# [[WF:Suggest a function|This page]] works to some extent, though it's too messy in my opinion. :# We used to have a "beta cluster" but it [[phab:rOMWC5f625c5846b5f779473fa32c9a02d87e59215dfa|got shut down]] just over a year ago because it was broken. :[[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 21:07, 24 April 2026 (UTC) == Language parameters in language-specific functions == I think that an effort should be made to give the different natural language options corresponding to different English dialects, Chinese scripts, etc. more of a use (I added the test {{Z|Z34119}} to {{Z|Z26095}} and unsurprisingly it fails). There are two main problems with this approach that I can identify: * If you ask the majority of these functions to make a sentence in British English, much of the time it will give you an output with missing words, because it does not fallback to English labels in the case of a British English label for that item missing. The same applies for every other English dialect, British English is just an example here. * Uninformed editors will probably see the presence of a language parameter on these functions, consider it redundant, and remove it. [[Special:Diff/268074|I have made this mistake before]]. In my opinion, in a perfect world, all of these language generation functions would output monolingual text, and if the user asks for American English text, then American English text is what they'll get. If the user asks for Japanese text in hiragana specifically, then that's what they'll get in return. This is not as high-priority as just rendering text in the language plainly in the first place, but it's something that I feel is still worth devoting some effort to. Right now switching functions to use this paradigm is difficult because, on the one hand, I don't know if consensus tends towards this direction being ideal or advisable, and I don't want to make changes like this without at least notifying the wider community. In addition, all tests break once a parameter is added or removed, and the function editor does not recognize the change in number of parameters and therefore you have to remove the function call, re-add it along with all of its parameters it had previously (which is a tedious cut-and-paste job), and then it will work again. This is something that you can do in five seconds by just adding a few lines of JSON to the test source, but this is not directly editable from the Web browser. This tedium is largely what's preventing me from doing this on a larger scale, besides asking for comments first. If anyone has any insights or comments on this, then that would be appreciated. If a reference of functions with and without the support for language variants is needed, of course [[WF:NLG]] can be perused, but I've also my own list cataloged at [[User:Theki/functions#language]]... Of course, this thread has many similarities to [[#"language" argument for certain functions|the one above]], but this concerns me going out and making this consistent across these NLG functions. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 21:09, 24 April 2026 (UTC) :I've created {{Z|Z34122}} as an extension to {{Z|Z34039}} for larger functions. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 21:34, 24 April 2026 (UTC) :Just to confirm that I, for one, support a Natural language parameter for all natural-language functions. The concern about getting them all aligned is just that we haven’t finally settled on {{Z|Z11}} being preferred to {{Z|Z89}} or some other type that conserves the text’s provenance, so we risk having to change them all again. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:07, 25 April 2026 (UTC) == “Key not found ()”? == What am I doing wrong in {{Z|Z34137}}? [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 00:39, 25 April 2026 (UTC) :You were passing a [[Z6091]] to {{Z|32290}}, but it takes a [[Z6001]]. Fixed. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 07:10, 26 April 2026 (UTC) ::{{done|Thank you}}! [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 14:13, 26 April 2026 (UTC) == Why is my test failing? == Hello! I recently made {{Z|Z34139}} based on [[wikt:Module:bg-translit]], and the test case {{Z|Z34141}} is failing on both implementations, despite the expected output and actual output being the same as far as I can tell. I tried looking at the Unicode codepoints of the output, but those are also identical. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 06:21, 25 April 2026 (UTC) :Yes, it’s a tricky one. I’ve added a normalize step to the result validation in {{Z|Z34141}}, which confirms it is a normalization issue. It looks like it is in the code but I don’t know whether simply normalizing the result is the way to go. Logically, you would normalize both the input and the result. The implementations of {{Z|Z10384}} show you how to do this. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 09:41, 25 April 2026 (UTC) == Edit request == Hello! I have an edit request for {{Z|Z23752}} and {{Z|Z23414}}. Please replace all the "an/a" logic with <code>Z21739(Argument reference)</code>, both for readability and for more accuracy ("a university is an institution") <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 09:50, 25 April 2026 (UTC) :{{D}} [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 12:24, 25 April 2026 (UTC) == Wikifunctions & Abstract Wikipedia Newsletter #245 is out: The Foundation's search for the perfect language == There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-04-25|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it! In this issue, we present an academic paper about Abstract Wikipedia, we discuss our latest Type created, and we take a look at the newest created functions. 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]]) 09:54, 25 April 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=30325620 --> :@[[User:Sannita (WMF)|Sannita (WMF)]], @[[User:DVrandecic (WMF)|DVrandecic (WMF)]], technical meta-question: the newsletter quotes the article: ::the only way to contest its algorithm is to click 👍 or 👎 (Crawford and Gillespie 2016) :This quotation sounds sensible, but the article's [https://link.springer.com/article/10.1007/s00146-026-02899-w web version], and the PDF that is downloadable from the same page doesn't actually show the emojis. It rather shows text that looks lacking: ::the only way to contest its algorithm is to click or (Crawford and Gillespie [https://link.springer.com/article/10.1007/s00146-026-02899-w#ref-CR14 2016]) :Where did you get the emojis? Is it your (probably correct) guess or is there a version somewhere that actually shows the emojis? [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 15:16, 25 April 2026 (UTC) ::Scratch that. I've found a version with correct emojis: https://wikihistories.github.io/wikilambda-the-ultimate/ [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 15:37, 25 April 2026 (UTC) == Requested deletion of test == Please delete {{Z|Z34143}}. this was never valid Bulgarian, I messed up. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 10:19, 25 April 2026 (UTC) :[[WF:RFD]] please. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 16:40, 25 April 2026 (UTC) == Request for comment (global AI policy) == <bdi lang="en" dir="ltr" class="mw-content-ltr"> A [[:m:Requests for comment/Artificial intelligence policy|request for comment]] is currently being held to decide on a global AI policy. {{int:Feedback-thanks-title}} [[User:MediaWiki message delivery|MediaWiki message delivery]] ([[User talk:MediaWiki message delivery|talk]]) 00:57, 26 April 2026 (UTC) </bdi> <!-- Message sent by User:Codename Noreste@metawiki using the list at https://meta.wikimedia.org/w/index.php?title=Distribution_list/Global_message_delivery&oldid=30424282 --> == Is it OK to connect the implementation? == Hello! I recently applied for functioneer on [[WF:RFG]], and I was wondering whether I could connect the implementation for {{Z|Z34165}} despite its dependency {{Z|Z34149}} being currently unimplemented. That is <em>if</em> I get accepted. I am planning on implementing it based on [[wikt:module:bg-nominal]], but am still having trouble figuring it out for now. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 09:04, 26 April 2026 (UTC) == Past tense function == Is there a function like {{Z|Z26039}}, but for the past tense (e.g. "Leo Tolstoy <em>was</em> a writer.")? If not, I will create it myself, I just want to make sure there's not a duplicate. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 10:10, 26 April 2026 (UTC) : {{Done}} with {{Z|Z34224}}, but I have a few kinks to work out with it. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 10:35, 26 April 2026 (UTC) :: I need to create some other similar functions for the past tense, I have some ideas: ::* {{Z|Z26095}} ::* {{Z|Z32643}} ::* {{Z|Z28016}} ::* {{Z|Z26570}} ::* {{Z|Z33975}} ::* {{Z|Z27243}} ::* <ins>{{Z|Z26627}}</ins> ::* <ins>{{Z|Z27627}}</ins> ::* <ins>{{Z|Z27173}}</ins> ::* <ins>{{Z|Z29591}}</ins> :: :: Are there any I have missed? <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 10:57, 26 April 2026 (UTC) :I think that here we are starting to walk on dangerous waters: what does past mean? Is it a recent o a far past? Does it have ripercussions on the present or not? Is it just a thing that happened once, many times or for a continuative period of time? :Consider that various languages distinguish between many different types of past. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 12:38, 26 April 2026 (UTC) :: {{re|Dv103}} That is a fair point... :: How do we go about solving this problem though? I don't think having every sentence on Abstract Wikipedia be "X is a Y" is a very good idea. :: Maybe we have different functions for all these variations of past you mentioned that just map into "X was a Y." in English? <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 13:31, 26 April 2026 (UTC) :::To properly solve this problem, we should use a more complete abstract content representation model, like for example the proposal of [[Wikifunctions:Type proposals/Semantic unit|Semantic units]] (look at [[Wikifunctions:Type proposals/Semantic unit/Douglas Adams|the example]] to see how times could be handled). For now, since we're still stuck with single fragment generation functions (that I hope will be slowly replaced with the complete represenation model, when available), we could just restrict your function to a very specific meaning, like "subject was an instance of, for most of its existence" (which means for example that it could be used to say "Douglas Adams was a writer", but not "Abraham Lincoln was a president", since he only was a president for 4 years). Probably my definition is still too vague, and this is why we need to go beyond these fragment generating functions. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 19:47, 26 April 2026 (UTC) ::Nitpick... I don't like that it outputs a string instead of monolingual text. With {{Z|Z26039}} it's used so much that I think it's unfixable in that case beyond deprecating it if people care that much, but {{Z|Z34224}} doesn't even have any connected implementations yet. Consider it, maybe? ::Nitpick 2... {{Z|Z34227}} is missing a language parameter. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 16:08, 26 April 2026 (UTC) ::: I will consider that! ::: I just did that because that's what {{Z|Z26039}} does, so I assumed I should follow suit with it. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 16:48, 26 April 2026 (UTC) == Legacy functions == If and when more robust methods of abstractly representing and generating linguistic content come around, and more efficient ways of creating abstract content are devised and implemented, I suspect that our current methods will require some form of deprecation. This is a significant source of concern for me in relation to WF and AW, questioning how prone our current methods of doing things are and eventually will be prone to obsolescence, and how it will be worked around when it comes. We have over 1 250 articles on AW presently, and these are rather all over the place. I suspect the maintenance burden from keeping these articles up to code will eventually, err, creep up on us, I suppose, and some kind of major refactoring will be necessary. We are definitely in a period of experimentation and whatnot right now but eventually, like with enwiki, some sort of structure and rigor will form and I suspect it will start to become rather boring for me... I, for one, very much enjoy experimenting with new and better ways to do things here. I don't personally mind changing things to use a new and better paradigm if need be, that sort of thing highly excites me, but of course there will be things that are left behind, and I suspect maybe bots will be employed to deal with this? A lot of Wikipedia sister sites seem to do that, e.g. going and fixing up use of deprecated templates. Considering the nature of Wikifunctions and Abstract Wikipedia I suspect certain maintenance tasks will be made simpler or even trivial by the typical uniformity of our implementations. I guess I am just concerned if Wikifunctions or Abstract Wikipedia will ever accrue its own kind of "technical debt" with how we are plowing through things presently, and if there is a plan for how we will eventually seek to mitigate that. Maybe too early to ask this question, but I am a notoriously anxious person, so I thought it wouldn't hurt to raise the question regardless... &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 21:30, 26 April 2026 (UTC) :I very much agree, thank you for expressing my position so well. {{ping|Immanuelle}} has been using an AI-generated tool (well, they haven't edited in a week, perhaps it's a break or perhaps they don't wish to contribute to the project any more) to create a bunch of articles en masse, which I have warned them multiple times is a bad idea (on top of evolving functions, all of the articles are one-sentence-per-paragraph, [[abstract:Q12184|like so]]). That's why I've been avoiding creating articles recently, I'd say I have a good fourth (no data to support, rough guess) of the comments on the wiki, yet less than a percentage of the article count (only three, including the [[abstract:Q319|first article]], though, so perhaps I'm the next [[w:Special:Permalink/908493298|office.bomis.com]]). [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 19:41, 27 April 2026 (UTC) :: I feel that the overwhelming presence of these low-quality articles (which I admit I myself am [[abstract:Q1710970|guilty]]/[[abstract:Q7601858|of]]/[[abstract:Q39338|creating]], usually as testbeds) may incur a large maintenance burden. I do expect them to be easy to detect, however, as searching for the presence of "deprecated" NLG functions is trivial, and it is possible that replacing them with their future ''even abstracter&trade;'' counterparts could be done automatically since they all have the same signatures and can be expected to create the same form of sentence. If it needs to be done manually for a while or for certain delinquent instances, my hope is that it will be fun, at least for a while. :: I just hope that these hypothetical future waves of "this new and versatile way of abstractly representing linguistic content" obsoleting previous methods and requiring refactoring across all articles is only a one-time thing. We should strive to be as robust and flexible as possible from the outset as each brand new paradigm of abstraction is also a brand new maintenance burden for updating old articles. At the end of the day, at least ''some'' of these articles will still render to many different languages even if their methods of creating those sentences of theirs is completely outdated. Ergo, the time it takes for the switchover to be performed across our articles should not be a persistent inconvenience for users (as, of course, they will always still be able to read the content as it was before since these legacy functions aren't being deleted outright), and the increased availability that the new methods will bring about will likely act as motivation for them to join the effort in refactoring (&#x300C;You're telling me that if I rewrite this article in this cool Lisp-looking stuff then I can probably read it in [[abstract:Q9307|Galician]]?? COOL!&#x300D;). &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 20:26, 27 April 2026 (UTC) :::Totally agree. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 02:54, 28 April 2026 (UTC) :::My vague plan is to implement a default function returning an {{Z|Z89}}, for each language-neutral function. A single function would convert any of these to a {{Z|Z11}}, so that a composition of the two can be implemented as the current default until such time as the language-neutral function is ready to return a [[Z89]]. We can already convert a [[Z11]] to a [[Z89]] so, although there is more to be done in this space, existing language-specific functions could be adapted to return a [[Z89]] quite mechanistically. :::Although we certainly could deliver parallel Z89 functions for each existing Z11 function, I don’t think we should assume that particular outcome. Provided the Z89 captures a lang attribute from the Z11’s language tag, the two representations should be largely interchangeable, although I am expecting a Z89 to carry additional attributes at the span level that would be lost on conversion to a Z11 (along with any higher-level tags and attributes). :::When I say there is “more to be done in this space”, I am referring to a new type that would allow HTML fragments to be represented as tractable Wikifunctions objects, but this is currently drafted only in my head! [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:21, 29 April 2026 (UTC) == Filtering types of objects == Hello! I have tried to comb through my own edit history several times, but it's really hard to search for specifics because there's no differentiation between different types of objects (functions, implementations, tests, etc.) in the logs as far as I can tell. Am I missing anything? I want it to work sort of like how filtering by namespace works. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 16:48, 27 April 2026 (UTC) :There is differentiation, it's just rather hard to look through. Since all ZObjects are just JSON data at their core, you can search for instances of <code>{ "Z1K1": "Z[type]"</code>. I haven't tried this so I'm not sure how well it would work and I know MediaWiki search syntax treats quotation marks as a special character, but I have seen Wikifunctions pages link to searches using this before. There is also [[Special:ListObjectsByType]] but it is sitewide rather than specific to your edit history in particular. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 18:59, 27 April 2026 (UTC) ::''[It doesn’t help directly here, but please see [[WF:Find]] for more details of how this works.]'' [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:24, 29 April 2026 (UTC) :See the feature requests [[phab:T399244]]/[[phab:T373735]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 06:06, 28 April 2026 (UTC) :The lack of filtering edits by namespace is exactly the problem that I was trying to solve with the [[User:Amire80/wikifunctionsanalytics]] tool. :I even kind of succeeded, but it has two major problems: :# It doesn't have any real frontend, so you have to know some SQL to use it (or ask other people who know SQL). :# It doesn't get information from the live site, but from the dump, which appears to be updated once a month. :I've made a [https://quarry.wmcloud.org/query/104794 sample query for you]. Unfortunately, it won't do anything at the moment because of the second problem—your edits started in April 2026, which isn't over yet, so the dump for it hasn't been processed. But I hope that early in May you'll be able to use the same query and see something useful. :(I plan to add support for recent edits, but I haven't done it yet. Now that I more or less figured out how to process Wikifunctions edits, I'm focused on trying to understand Abstract Wikipedia edits. Processing up-to-date edits from both sites will possibly be the next thing I work on, but if you know some Python and want to try doing it yourself, don't wait for me—[https://gitlab.wikimedia.org/toolforge-repos/wikifunctions-analytics Patches welcome].) [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 18:51, 28 April 2026 (UTC) ::@[[User:QuickQuokka|QuickQuokka]], I've just updated the data until the end of April. Now the query to which I linked above gives some results. You can also try running other queries if you know SQL. (Or try asking for other queries if you don't.) [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 03:26, 3 May 2026 (UTC) == [[Z34213]] == I'm not quite sure why this implementation is failing. Could someone take a look? [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 02:24, 28 April 2026 (UTC) :I've [https://phabricator.wikimedia.org/T419933#11863997 notified] the team that this is still occurring, the issue was marked as resolved. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 02:52, 28 April 2026 (UTC) :Some useful tips: :* create more testcases: sometimes it is a random error, so try to see how consistent it is between testcases :* your implementation is very inefficient, since it fetches items and lexemes a lot of times. Ideally, each item and each lexeme should be only fetched once in all the execution tree. :[[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 06:06, 28 April 2026 (UTC) ::Caching (''should?'') means that the lexeme and item data are cached, so the call doesn't actually execute multiple times. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 17:51, 28 April 2026 (UTC) :::Are lexemes and items actually cached within the same function execution? Even if they are only partially fetched and/or fetched in bulk? [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 17:54, 28 April 2026 (UTC) ::::I don't have any evidence to prove that it works but that's definitely A. what's supposed to happen and B. the ideal behavior. This happens because the Z680X functions can be cached just like any other. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 18:02, 28 April 2026 (UTC) ::::It is unclear. In general, I believe identical branches are resolved only once in orchestration, but there is also independent caching of Wikidata fetches. ::::According to @[[User:DMartin (WMF)|DMartin (WMF)]] ([https://t.me/Wikifunctions/30374 on Telegram]): ::::<blockquote>Well, no. We have caching of Wikidata entities that have been retrieved, but not of the results of nested function calls. There is a proposal for doing this in the context of the V2 composition language, when it's a bit more mature, and it's regarded as a relatively high priority.</blockquote> ::::It’s hard to tell whether fetches in nested calls are, in fact, cached and available for other nested calls in the same call, since it is not generally the actual fetch that consumes the most resources. Rather (I believe), it is construction and transmission of the result object, which is currently repeated afresh in each nested call (unless it is in an identical branch). ::::I hope that’s clear, and I apologise in advance if it happens to be inaccurate! [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:16, 29 April 2026 (UTC) :::::Oh, I should clarify.  There is a lot of caching going on, in several different places.  Lexemes and items ''are'' cached by the orchestrator within the same function execution, even if they are only partially fetched and/or fetched in bulk.  When I said that we don't have caching of the results of nested function calls, I meant that's not happening in general, for all nested function calls in compositions.  But fetching of Wikidata entities gets special treatment, so yes, fetched content from Wikidata is cached, regardless if it was fetched by a top-level call or a nested call. :::::It is also true that the construction of a ZObject from the fetched JSON might happen more than once within the same function execution, depending on how a composition has been structured. However, the construction of the ZObject is actually very fast, compared to the elapsed time of getting the JSON from Wikidata. [[User:DMartin (WMF)|DMartin (WMF)]] ([[User talk:DMartin (WMF)|talk]]) 18:04, 1 May 2026 (UTC) == Question about cardinal numbers == I was about to edit {{Z|Z16435}} to add my function {{Z|Z34308}}, but I noticed that none of the other functions have a gender parameter. Should I create a new wrapper function "Bulgarian cardinal, neuter", or should I just remove the gender parameter and always return neuter? <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 10:39, 28 April 2026 (UTC) :The “cardinal” functions should return the words used for “counting” numbers in the abstract. :We should consider converting them to return a {{Z|Z11}} rather than a {{Z|Z6}}. It may even be appropriate to return a {{Z|Z12}} to cater for language variants. Either way, I think that would be the approach to adopt for inflected forms, unless reference to specific lexeme-forms is required. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 12:52, 28 April 2026 (UTC) ::This. If a native of your language were to count up, which form would they be most likely to use? [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 13:29, 28 April 2026 (UTC) ::: {{re|GrounderUK|Feeglgeef}} Thanks for both your input! ::: I relabeled the aforementioned function to {{Z|Z34308}}, and created a new wrapper function {{Z|Z34457}}. ::: Should I specify that my old function is a monolingual text in parentheses? <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 16:26, 28 April 2026 (UTC) ::::You don't have to, unless you think that is something that would require distinction when viewing the function in a list of search results &c. &mdash; [[User:Theki|rae<sup>5e</sup>]] &lt;[[User talk:Theki|talk]]&gt; 16:36, 28 April 2026 (UTC) == Optional/nullable function parameters == Hello! Recently, I was informed that Wikifunctions has no optional/nullable function parameters as of now. Are there any future plans to support this, and/or workarounds? Maybe create a union type system like "{{Z|6}} or {{Z|23}}". <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 17:53, 28 April 2026 (UTC) :What I do for this is use an "is empty" function corresponding to the type of the parameter in an If statement. If it isn't empty, the function works as intended. Otherwise, it does something else. [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 17:58, 28 April 2026 (UTC) :Unions are not a thing (yet) on Wikifunctions, but you can always define an argument of type {{Z|Z1}}, which means that all types are allowed (I already did this for {{Z|Z26737}}; note that it is still a ugly workaround, don't use it for high level functions). Also, note that usually on Wikifunctions we use {{Z|Z24}} as the null value. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 18:00, 28 April 2026 (UTC) :: {{re|JJPMaster|Dv103}} Thanks for your help! :: @[[User:Dv103|Dv103]] told me a function call with a missing parameter is treated as an invalid function call, so how does the "is empty" function work with that? :: Also, setting the type to {{Z|1}} seems naive, like setting the type as <code>any</code> in TypeScript... :: Related question: Are there plans to add default values to parameters (outside of "if empty")? <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 18:19, 28 April 2026 (UTC) :::Setting the type to {{Z|Z1}} is actually naive, and that's why I advised you to only use it for low-level functions. Currently there is nothing better. Sometimes, type correctness is not actually checked, so it might seem that nullable types are possible. But it is still an hack, and it could broke anytime since it is not intended behavior. :::I don't think that there are current plans to add default values (but correct me if I'm wrong). The closest thing that comes to my mind is that, if you incorporate Wikifunctions into Wikitext, you can leave empty some fields (only of some specific types) and Parsoid will replace them to their default value. This is done only depending on the type, and not on the functions. For example, {{Z|Z6091}} and {{Z|Z6001}} are assigned the QID associated to the page, and {{Z|Z20420}} is assigned the current date. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 18:56, 28 April 2026 (UTC) :::@[[User:QuickQuokka|QuickQuokka]]: At the very least, [[Z10008]] accepts a null input. Maybe that feature is unique to the String type—I am not sure. [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 19:10, 28 April 2026 (UTC) ::::I think it's just not checked, but it shouldn't be intended. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 19:20, 28 April 2026 (UTC) ::::Strings and typed lists can be “empty” in the sense that their length can be zero. Typed pairs may also be “empty” in a degenerate sense, but such an object will not be returned from a code implementation. A typed map with no entries will also fail to be returned from code, although it is fine in compositions. ::::For a genuinely optional parameter, I prefer a properly typed list, which at least encourages an argument of the correct type. {{Z|Z813}} is also typically faster than {{Z|Z10008}}. Quite a good example of this approach is {{Z|Z23723}}, where it helps to resolve the type union (using [[Z1]]) for both Z6003K1 and Z6003K3. Of course, there’s nothing to prevent more than one element in the list, but additional elements are easily ignored. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 22:55, 28 April 2026 (UTC) :Pinging {{ping|Jdforrester (WMF)|prefix=|p=}}, I believe there are no current plans. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 19:02, 28 April 2026 (UTC) ::@[[User:QuickQuokka|QuickQuokka]]: I'm afraid there are no current plans to build out optional params, indeed; we would be happy to review this if a compelling case was made, but it'd be a lot of work to re-build the [[Wikifunctions:Function model|function model]] with that support and ensure we don't break (too many) things. [[User:Jdforrester (WMF)|Jdforrester (WMF)]] ([[User talk:Jdforrester (WMF)|talk]]) 19:11, 28 April 2026 (UTC) == Z6830 for Chinese == I was trying to use {{Z|Z6830}} for implementation in the Chinese-language. And turns out most of the Lexeme on Wikidata is using [[d:Q727694]] as the language instead of [[d:Q7850]]. This makes it impossible to use the mentioned function above, since Standard Chinese is not available (or did I miss something?). Is there a way to fetch lexemes with language=[[d:Q727694]] from item? [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 18:20, 30 April 2026 (UTC) :@[[User:Sun8908|Sun8908]] There is [[Z1006]] for Chinese and it has the language code zh. There is an overview of languages in [[Module:Wikifunctions label]] so you can search there for chinese versions and choose the one you need. [[User:Hogü-456|Hogü-456]] ([[User talk:Hogü-456|talk]]) 20:53, 5 May 2026 (UTC) ::I know that. The problem is when using the function [[Z6830]], it cannot retrieve lexeme with language [[d:Q727694]] (but it is the "Chinese language" with the most current Wikidata lexemes, see [https://ordia.toolforge.org/language/ ordia]). I think it should be a Wikidata problem, I might fix it (possibly by creating the same lexemes with language code zh) on Wikidata. Thanks anyway. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 05:39, 6 May 2026 (UTC) :Could you provide an example of a Chinese lexeme that has a linked Wikidata item, or a Z6830 function call that fails to find such a lexeme where one exists? [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 07:55, 6 May 2026 (UTC) ::Here: [[d:Lexeme:L846083]]. I think that's a primary reason of me trying to look into this problem, as the label in zh for [[d:Q6256]] (country) is not a single phrase (see its talk page on WD for more information). This makes some Abstract Wikipedia articles very weird in Chinese when {{Z|Z26570}} is used, so lexeme could potentially fix that. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 10:33, 6 May 2026 (UTC) == Key not found error == Is there a reason why I am getting key not found error for this [[Z34677|function]] {{Z|Z34677}}? All the underlying functions run and all the test cases work. The debug information does not give more details. Any pointers? Thanks in advance [[User:Jsamwrites|John Samuel]] 19:24, 1 May 2026 (UTC) :It was passing the [[Z6091]] to {{Z|34641}} when that takes a [[Z6001]]. I've fixed that, but there's some other problem with the logic, so I've left it disconnected. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 19:42, 1 May 2026 (UTC) ::@[[User:YoshiRulz|YoshiRulz]] Thanks a lot. [[User:Jsamwrites|John Samuel]] 20:21, 1 May 2026 (UTC) == Wikifunctions & Abstract Wikipedia Newsletter #246 is out: Request for input: what should we count for Abstract Wikipedia == There is [[:f:Special:MyLanguage/Wikifunctions:Status updates/2026-05-02|a new update]] for Abstract Wikipedia and Wikifunctions. Please, come and read it! In this issue, we ask you what would be the relevant metrics for Abstract Wikipedia, we discuss our latest news on 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]]) 12:21, 2 May 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=30325620 --> == Any formal process for deletion of pages == Does a formal process exist for the deletion of functions, implementations, and tests that includes a notification system for creators, analogous to Wikidata’s process, explaining the rationale behind the deletion (or proposal for deletion)? [[User:Jsamwrites|John Samuel]] 12:36, 3 May 2026 (UTC) :Does [[Wikifunctions:Requests for deletions]] work? [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 13:00, 3 May 2026 (UTC) :Please see the discussion at [[Wikifunctions talk:Requests for deletions#Should we expect Objects' creators to get pinged on deletion proposals?]]. :As I see it, it is the proposer’s responsibility to consult appropriately before making a request and we expect our administrators to act only when satisfied that appropriate consultation has occurred. In many cases, no consultation is required. Administrators may delete their own contributions without making a request, but this is not a practice I would encourage. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 13:51, 3 May 2026 (UTC) == Implementation of rational number in JS doesn't match in Z19677 (Rational number) and Z28579 (RGBA colour) == In {{Z|19677}} it's <syntaxhighlight lang=js> { "K1": sign * numerator, "K2": denominator } </syntaxhighlight> but in {{Z|28579}} it's <syntaxhighlight lang=js> [ sign * numerator, denominator ] </syntaxhighlight> '''<span style="font-family:Iosevka,monospace">[[User:沈澄心|<span style="color:#9f3526">dring</span>]][[User talk:沈澄心|<span style="color:#534fa3">sim</span>]]</span>''' 05:15, 4 May 2026 (UTC) == Nested functions in compositions == I wish it will be easier to a add another function about a specific existing function in a function implementation based on a composition. When I write long functions in spreadsheets I usually stat with a small part and then I try to go further and after important steps I test if the output is as expected. I created [[Z34826]] to get the German gender specific occupation lexeme for a specific person based on their gender. I wanted to add a function around the existing one and it was not successful. It is not very easy to implement as it requires the possibily to move a part to another section but I think it can be helpful if it will be implemented. So far I spend more time as expected on the function. Describing it with words what the function needs to do is much easier than implementing it here in Wikifunctions. So I think there needs to be improvement to make Wikifunctions more accessible. [[User:Hogü-456|Hogü-456]] ([[User talk:Hogü-456|talk]]) 21:10, 5 May 2026 (UTC) :Have you tried to use the copy-paste functionality? It is very useful to move parts of composition arounn. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 07:12, 6 May 2026 (UTC) lkyidioub4hom97kzsdr59gmvu2yhvq Wikifunctions:Community portal 4 1724 272594 272045 2026-05-06T03:12:24Z YoshiRulz 10156 /* Tasks listed by users */ Reply 272594 wikitext text/x-wiki <div style="border:1px solid grey; margin:1em 4em 2em; padding:1.5em 1em;"> {{Shortcut|[[WF:CP]]}} <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/> __NEWSECTIONLINK__ [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) :::May I ask to add the pairs as well? They can also occur in {{Z|1099}}. :::"ŋ": "Q463515" :::"ø": "Q118519" :::Thanks. --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 18:48, 11 April 2026 (UTC) ::::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 06:57, 12 April 2026 (UTC) :::::Thank you! (I overlooked that "ŋ" was already present). --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 16:42, 12 April 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) ::::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:04, 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) :::Seems to be resolved now. Your implementation has already been connected. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 17:01, 2 April 2026 (UTC) :Any guesses as to why [[Z32805]] is failing for [[Z33090]]? It says {{Z|507}} but still produces a value. Inspecting the actual and expected values ([https://www.wikifunctions.org/view/en/Z801?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z801%22%2C%22Z801K1%22%3A%5B%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z881%22%2C%22Z881K1%22%3A%22Z89%22%7D%2C%5B%22Z89%22%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Ctd%3E%3C%2Ftd%3E%22%7D%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Cth%3EA%3C%2Fth%3E%22%7D%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Cth%3EB%3C%2Fth%3E%22%7D%5D%2C%5B%22Z89%22%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Cth%3E1%3C%2Fth%3E%22%7D%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Ctd%3EA1%3C%2Ftd%3E%22%7D%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Ctd%3EB1%3C%2Ftd%3E%22%7D%5D%2C%5B%22Z89%22%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Cth%3E2%3C%2Fth%3E%22%7D%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Ctd%3EA2%3C%2Ftd%3E%22%7D%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Ctd%3EB2%3C%2Ftd%3E%22%7D%5D%5D%7D via echo]), I can see they're identical. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 22:44, 3 April 2026 (UTC) ::My guess is that there is a bug relating to {{Z|Z877}}. There are no guarantees, but switching the equality function seems successful. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 22:56, 3 April 2026 (UTC) :I suggested disconnecting implementations without mul fallback from {{Z|Z23753}} here: [[Talk:Z23753#Disconnect implementations without mul fallback]]. --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 17:30, 11 April 2026 (UTC) :Can someone please connect the implementation and test cases here? {{Z|Z31832}} Thanks! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 18:44, 11 April 2026 (UTC) ::{{D}} [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 18:49, 11 April 2026 (UTC) :::Thank you! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 18:51, 11 April 2026 (UTC) :Can someone please connect the implementation and test cases here? {{Z|Z33340}} Thanks! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 20:24, 11 April 2026 (UTC) ::{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 21:04, 11 April 2026 (UTC) :::Thanks! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 21:05, 11 April 2026 (UTC) :Me again: can someone please connect the implementation and test cases of {{Z|Z33333}}? Thanks. --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 21:51, 11 April 2026 (UTC) ::{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 21:59, 11 April 2026 (UTC) :::Thank you! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 22:15, 11 April 2026 (UTC) :Is it possible to add the variant of Chinese in {{Z|Z24309}}? The following is the fallback mechanism based on practical implementation on zhwiki ([[:zh:Wikipedia:地区词处理]]). :<syntaxhighlight lang="python"> 'zh': ['zh', 'zh-hant', 'zh-hans' 'mul', 'en'], 'zh-hant': ['zh-hant', 'zh', 'mul', 'en'], 'zh-hans': ['zh-hans', 'zh', 'mul', 'en'], 'zh-tw': ['zh-tw', 'zh-hant', 'zh', 'mul', 'en'], 'zh-hk': ['zh-hk', 'zh-hant', 'zh-tw', 'zh', 'mul', 'en'], 'zh-mo': ['zh-mo', 'zh-hk', 'zh-hant', 'zh-tw', 'zh', 'mul', 'en'], 'zh-cn': ['zh-cn', 'zh-hans', 'zh', 'mul', 'en'], 'zh-sg': ['zh-sg', 'zh-hans', 'zh-cn', 'zh', 'mul', 'en'], 'zh-my': ['zh-my', 'zh-sg', 'zh-hans', 'zh-cn', 'zh', 'mul', 'en'], </syntaxhighlight> : Is the function supposed to be hardcoded like this? [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 10:06, 13 April 2026 (UTC) :: Sorry, I think we can omit zh-hant and zh-hans, as they are just the default implementation. I am also not sure whether zh should be included. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 11:08, 13 April 2026 (UTC) ::{{d}} [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 14:07, 13 April 2026 (UTC) ::The list is hardcoded because, for now, there is no better option. I tried to implement the function with an external Typed map, but the composition is too long and convoluted. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 14:08, 13 April 2026 (UTC) :::Now I've managed to do it: the external map is {{Z|Z33395}}. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 14:23, 13 April 2026 (UTC) ::::Thank you @[[User:Dv103|Dv103]]. There are a few corrections that needs to be done: ::::*In both [[Z32013]] and [[Z33395]], there is an extra line of <code>"zh-hk": "zh-hant"</code>. ::::*Per Cantonese (yue) local consensus, the fallback language of yue (and yue-hans/t) should be English (en) rather than zh(-xx). ::::*There are some duplicates in the resulting list (see [[Z33436]]) since it falls into the while-loop multiple times (when 'lastcode' appears in 'codes' and before "mul" and "en" are added). This can be fixed by either modifying the while-loop (perhaps better approach) or hardcoding the whole list including mul and en. ::::*After doing some research, I think the fallback chain should follow the [https://gerrit.wikimedia.org/r/plugins/gitiles/mediawiki/core/+/refs/heads/master/languages/messages/ gerrit files]. Please update the fallback chain according to the gerrit files. (Also, add zh-hant and zh-hans according to gerrit (but fix the point above first, otherwise there would be an infinite loop)) ::::Thank you. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 07:26, 14 April 2026 (UTC) :::::@[[User:Winston Sung|Winston Sung]], could you look into this and see if we can utilize gerrit directly? Or any other approaches that is better than hardcoding. Thank you. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 09:05, 14 April 2026 (UTC) ::::::Once they are in they won't change often, so this is not a terrible case for hardcoding. --~ [[User:99of9|99of9]] ([[User talk:99of9|talk]]) 11:34, 14 April 2026 (UTC) :::::I also don't see why we have to follow gerrit. Users here are welcome to come to consensus about how their language should operate on WF. Gerrit could be a good starting point, but I think we should retain agency. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 11:36, 14 April 2026 (UTC) ::::::Fair point. I think we can follow gerrit for now, as it should represent a consensus (more or less) for their language on other Wikimedia project. It would indeed not be a problem for hardcoding. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 12:19, 14 April 2026 (UTC) :{{Z|26107}} is still broken it seems. And unlike last time I ran into it, [[Z33664|this time]] I don't have the luxury of using a literal Z11. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 09:33, 18 April 2026 (UTC) ::To me it seems that it is working fine. Could you create a test that fails? [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 09:43, 18 April 2026 (UTC) :::[[Z33730]], and from last time, [[Z32804]] [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 09:48, 18 April 2026 (UTC) ::::I've connected those, and disabled the Implementation [[Z27080]] for now since the Function's other Implementations pass them. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 10:14, 18 April 2026 (UTC) ::::These are not standard tests, because the outer call of the test is not the tested function. I wonder if that is causing the failures. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 11:18, 18 April 2026 (UTC) :::::Pretty sure it must be a v2 bug. The argument references must be resolved upstream; once they arrive here, it’s too late. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:25, 18 April 2026 (UTC) {{tracked|T423853}} ::I think it’s the apply that is failing. The argument references [https://www.wikifunctions.org/view/en/Z801?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z801%22%2C%22Z801K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z13436%22%2C%22Z13436K1%22%3A%22Z26107%22%2C%22Z13436K2%22%3A%22Z1444%22%2C%22Z13436K3%22%3A%5B%22Z6%22%2C%221%22%2C%222%22%5D%7D%7D appear unresolved]. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 09:59, 18 April 2026 (UTC ::::I’ve added {{Z|Z33748}} to demonstrate the problem. I’ll file a ticket tomorrow, referencing {{Z|Z32804}} as well. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 12:09, 18 April 2026 (UTC) :Can someone import the {{t|about}} hatnote from one of the other wikis? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 12:40, 1 May 2026 (UTC) :[[Module:Navbar]] seems to be broken; there's no rule for <code>.hlist > ul</code> present in the page. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 17:39, 3 May 2026 (UTC) :Ugh I accidentally entered [[Z34853|this expression]] as the ''type'' for a persistent object instead of its value, and now I can't edit it. Please fix. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:12, 6 May 2026 (UTC) ==== Connection / Disconnection requests ==== Moved to [[Wikifunctions:Requests for connection and disconnection]] ==== [[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) :{{done}}, [[Special:Permalink/264775]] and [[Special:Permalink/264777]]. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 21:34, 11 April 2026 (UTC) ldnr43zzobnihb5o0p3t6orj2eg2u1t 272621 272594 2026-05-06T08:19:05Z GrounderUK 50 /* Tasks listed by users */ Reply 272621 wikitext text/x-wiki <div style="border:1px solid grey; margin:1em 4em 2em; padding:1.5em 1em;"> {{Shortcut|[[WF:CP]]}} <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/> __NEWSECTIONLINK__ [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) :::May I ask to add the pairs as well? They can also occur in {{Z|1099}}. :::"ŋ": "Q463515" :::"ø": "Q118519" :::Thanks. --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 18:48, 11 April 2026 (UTC) ::::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 06:57, 12 April 2026 (UTC) :::::Thank you! (I overlooked that "ŋ" was already present). --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 16:42, 12 April 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) ::::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:04, 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) :::Seems to be resolved now. Your implementation has already been connected. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 17:01, 2 April 2026 (UTC) :Any guesses as to why [[Z32805]] is failing for [[Z33090]]? It says {{Z|507}} but still produces a value. Inspecting the actual and expected values ([https://www.wikifunctions.org/view/en/Z801?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z801%22%2C%22Z801K1%22%3A%5B%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z881%22%2C%22Z881K1%22%3A%22Z89%22%7D%2C%5B%22Z89%22%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Ctd%3E%3C%2Ftd%3E%22%7D%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Cth%3EA%3C%2Fth%3E%22%7D%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Cth%3EB%3C%2Fth%3E%22%7D%5D%2C%5B%22Z89%22%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Cth%3E1%3C%2Fth%3E%22%7D%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Ctd%3EA1%3C%2Ftd%3E%22%7D%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Ctd%3EB1%3C%2Ftd%3E%22%7D%5D%2C%5B%22Z89%22%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Cth%3E2%3C%2Fth%3E%22%7D%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Ctd%3EA2%3C%2Ftd%3E%22%7D%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Ctd%3EB2%3C%2Ftd%3E%22%7D%5D%5D%7D via echo]), I can see they're identical. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 22:44, 3 April 2026 (UTC) ::My guess is that there is a bug relating to {{Z|Z877}}. There are no guarantees, but switching the equality function seems successful. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 22:56, 3 April 2026 (UTC) :I suggested disconnecting implementations without mul fallback from {{Z|Z23753}} here: [[Talk:Z23753#Disconnect implementations without mul fallback]]. --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 17:30, 11 April 2026 (UTC) :Can someone please connect the implementation and test cases here? {{Z|Z31832}} Thanks! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 18:44, 11 April 2026 (UTC) ::{{D}} [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 18:49, 11 April 2026 (UTC) :::Thank you! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 18:51, 11 April 2026 (UTC) :Can someone please connect the implementation and test cases here? {{Z|Z33340}} Thanks! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 20:24, 11 April 2026 (UTC) ::{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 21:04, 11 April 2026 (UTC) :::Thanks! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 21:05, 11 April 2026 (UTC) :Me again: can someone please connect the implementation and test cases of {{Z|Z33333}}? Thanks. --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 21:51, 11 April 2026 (UTC) ::{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 21:59, 11 April 2026 (UTC) :::Thank you! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 22:15, 11 April 2026 (UTC) :Is it possible to add the variant of Chinese in {{Z|Z24309}}? The following is the fallback mechanism based on practical implementation on zhwiki ([[:zh:Wikipedia:地区词处理]]). :<syntaxhighlight lang="python"> 'zh': ['zh', 'zh-hant', 'zh-hans' 'mul', 'en'], 'zh-hant': ['zh-hant', 'zh', 'mul', 'en'], 'zh-hans': ['zh-hans', 'zh', 'mul', 'en'], 'zh-tw': ['zh-tw', 'zh-hant', 'zh', 'mul', 'en'], 'zh-hk': ['zh-hk', 'zh-hant', 'zh-tw', 'zh', 'mul', 'en'], 'zh-mo': ['zh-mo', 'zh-hk', 'zh-hant', 'zh-tw', 'zh', 'mul', 'en'], 'zh-cn': ['zh-cn', 'zh-hans', 'zh', 'mul', 'en'], 'zh-sg': ['zh-sg', 'zh-hans', 'zh-cn', 'zh', 'mul', 'en'], 'zh-my': ['zh-my', 'zh-sg', 'zh-hans', 'zh-cn', 'zh', 'mul', 'en'], </syntaxhighlight> : Is the function supposed to be hardcoded like this? [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 10:06, 13 April 2026 (UTC) :: Sorry, I think we can omit zh-hant and zh-hans, as they are just the default implementation. I am also not sure whether zh should be included. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 11:08, 13 April 2026 (UTC) ::{{d}} [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 14:07, 13 April 2026 (UTC) ::The list is hardcoded because, for now, there is no better option. I tried to implement the function with an external Typed map, but the composition is too long and convoluted. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 14:08, 13 April 2026 (UTC) :::Now I've managed to do it: the external map is {{Z|Z33395}}. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 14:23, 13 April 2026 (UTC) ::::Thank you @[[User:Dv103|Dv103]]. There are a few corrections that needs to be done: ::::*In both [[Z32013]] and [[Z33395]], there is an extra line of <code>"zh-hk": "zh-hant"</code>. ::::*Per Cantonese (yue) local consensus, the fallback language of yue (and yue-hans/t) should be English (en) rather than zh(-xx). ::::*There are some duplicates in the resulting list (see [[Z33436]]) since it falls into the while-loop multiple times (when 'lastcode' appears in 'codes' and before "mul" and "en" are added). This can be fixed by either modifying the while-loop (perhaps better approach) or hardcoding the whole list including mul and en. ::::*After doing some research, I think the fallback chain should follow the [https://gerrit.wikimedia.org/r/plugins/gitiles/mediawiki/core/+/refs/heads/master/languages/messages/ gerrit files]. Please update the fallback chain according to the gerrit files. (Also, add zh-hant and zh-hans according to gerrit (but fix the point above first, otherwise there would be an infinite loop)) ::::Thank you. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 07:26, 14 April 2026 (UTC) :::::@[[User:Winston Sung|Winston Sung]], could you look into this and see if we can utilize gerrit directly? Or any other approaches that is better than hardcoding. Thank you. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 09:05, 14 April 2026 (UTC) ::::::Once they are in they won't change often, so this is not a terrible case for hardcoding. --~ [[User:99of9|99of9]] ([[User talk:99of9|talk]]) 11:34, 14 April 2026 (UTC) :::::I also don't see why we have to follow gerrit. Users here are welcome to come to consensus about how their language should operate on WF. Gerrit could be a good starting point, but I think we should retain agency. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 11:36, 14 April 2026 (UTC) ::::::Fair point. I think we can follow gerrit for now, as it should represent a consensus (more or less) for their language on other Wikimedia project. It would indeed not be a problem for hardcoding. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 12:19, 14 April 2026 (UTC) :{{Z|26107}} is still broken it seems. And unlike last time I ran into it, [[Z33664|this time]] I don't have the luxury of using a literal Z11. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 09:33, 18 April 2026 (UTC) ::To me it seems that it is working fine. Could you create a test that fails? [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 09:43, 18 April 2026 (UTC) :::[[Z33730]], and from last time, [[Z32804]] [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 09:48, 18 April 2026 (UTC) ::::I've connected those, and disabled the Implementation [[Z27080]] for now since the Function's other Implementations pass them. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 10:14, 18 April 2026 (UTC) ::::These are not standard tests, because the outer call of the test is not the tested function. I wonder if that is causing the failures. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 11:18, 18 April 2026 (UTC) :::::Pretty sure it must be a v2 bug. The argument references must be resolved upstream; once they arrive here, it’s too late. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:25, 18 April 2026 (UTC) {{tracked|T423853}} ::I think it’s the apply that is failing. The argument references [https://www.wikifunctions.org/view/en/Z801?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z801%22%2C%22Z801K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z13436%22%2C%22Z13436K1%22%3A%22Z26107%22%2C%22Z13436K2%22%3A%22Z1444%22%2C%22Z13436K3%22%3A%5B%22Z6%22%2C%221%22%2C%222%22%5D%7D%7D appear unresolved]. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 09:59, 18 April 2026 (UTC ::::I’ve added {{Z|Z33748}} to demonstrate the problem. I’ll file a ticket tomorrow, referencing {{Z|Z32804}} as well. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 12:09, 18 April 2026 (UTC) :Can someone import the {{t|about}} hatnote from one of the other wikis? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 12:40, 1 May 2026 (UTC) :[[Module:Navbar]] seems to be broken; there's no rule for <code>.hlist > ul</code> present in the page. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 17:39, 3 May 2026 (UTC) :Ugh I accidentally entered [[Z34853|this expression]] as the ''type'' for a persistent object instead of its value, and now I can't edit it. Please fix. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:12, 6 May 2026 (UTC) ::Sorry, the type of an existing object can only be changed by an administrator or staff. Please request at [[Wikifunctions:Administrators' noticeboard]] if no one spots your request here. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 08:19, 6 May 2026 (UTC) ==== Connection / Disconnection requests ==== Moved to [[Wikifunctions:Requests for connection and disconnection]] ==== [[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) :{{done}}, [[Special:Permalink/264775]] and [[Special:Permalink/264777]]. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 21:34, 11 April 2026 (UTC) ov3czv8mwmel30dlozg87frjrp49zjg Wikifunctions:Sandbox 4 3424 272496 271990 2026-05-05T17:27:46Z YoshiRulz 10156 272496 wikitext text/x-wiki {{draft}} This is a wiki page sandbox. See also sandboxes for specific types of object: * [[Z10119]] * {{Z|Z10121}} * {{Z|Z10123}} * {{Z|Z10131}} * {{Z|Z10166}} * {{Z|Z10122}} * {{Z|Z15104}} * [[Z26295]] Testing embedded Wikifunctions calls: {{#function:Z26039|Q158Error, there's not to rollback to {{#function:Z6824|L1555911-F14}} {{#function:Z6824|L1555911-F16}} {{#function:Z34800||Z10000K2}} {{#function:Z34800||Z811K1}} aq1uyhgc5r6h1u7suqw2yol5qzxuop9 272497 272496 2026-05-05T17:30:20Z YoshiRulz 10156 272497 wikitext text/x-wiki {{draft}} This is a wiki page sandbox. See also sandboxes for specific types of object: * [[Z10119]] * {{Z|Z10121}} * {{Z|Z10123}} * {{Z|Z10131}} * {{Z|Z10166}} * {{Z|Z10122}} * {{Z|Z15104}} * [[Z26295]] Testing embedded Wikifunctions calls: {{#function:Z26039|Q158Error, there's not to rollback to {{#function:Z6824|L1555911-F14}} {{#function:Z6824|L1555911-F16}} {{#function:Z34800|en|Z10000K2}} {{#function:Z34800|en|Z811K1}} iiyksmi3oeaed9eyp5ilkxnod7xwtpg Z14244 0 26488 272585 270102 2026-05-06T02:04:54Z WikiLambda system 3 Updated the implementation list (see [[Help:Wikifunctions/Implementation_ordering_and_choosing|About implementation selection]]) 272585 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z14244" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z14244K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "string" }, { "Z1K1": "Z11", "Z11K1": "Z1014", "Z11K2": "eriri" }, { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "অক্ষরসারি" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "chaîne" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Zeichenkette" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "untaian" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z13518", "Z17K2": "Z14244K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "N" }, { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "সংখ্যা" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "énième caractère à obtenir" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "n" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "N" } ] } } ], "Z8K2": "Z6", "Z8K3": [ "Z20", "Z14245", "Z14248", "Z14249", "Z14251", "Z14252" ], "Z8K4": [ "Z14", "Z24457", "Z14246", "Z24456" ], "Z8K5": "Z14244" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "get Nth character of a string" }, { "Z1K1": "Z11", "Z11K1": "Z1014", "Z11K2": "nweta Nth agwa nke eriri" }, { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "অক্ষরসারির 'সংখ্যা' তম অক্ষর" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "obtenir l'énième caractère d'une chaîne" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "erhalte ntes Zeichen aus Zeichenkette" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "ambil karakter ke-N di untaian" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "get Nth Unicode codepoint symbol of a string", "Nth character of string", "codepoint N of string" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "counting each codepoint as a character, counting from 1" }, { "Z1K1": "Z11", "Z11K1": "Z1014", "Z11K2": "na-agụta akara koodu ọ bụla dị ka agwa, na-agụta site na 1" }, { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "কোনো অক্ষর সারির মধ্যে 'সংখ্যা' তম অক্ষরটিকে প্রদান করে, যেখানে সংখ্যা হল সেই অক্ষরটির কোডপয়েন্ট অবস্থান। " }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "en comptant chaque point de code comme un caractère, en comptant à partir de 1" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "zählt jeden Codepunkt als Zeichen, beginnend mit 1" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "menghitung setiap titik kode karakter; dimulai dari 1" } ] } } nhr8iwnkepsxbwzpyv3x4bwwb9i5vty User:Jsamwrites 2 39114 272627 271301 2026-05-06T09:19:15Z Jsamwrites 938 /* Sentences */ 272627 wikitext text/x-wiki == Introduction == This is the Wikifunctions user page of John Samuel. For more information, refer page on [[:d:User:Jsamwrites|Wikidata User:Jsamwrites]]. == Phrases == List of objects: * {{Z|Z18928}} * {{Z|Z18929}} * {{Z|Z18979}} == Function application == * {{Z|Z873}} == Configuration == * {{Z|Z14294}} == Types == * [[Special:ListObjectsByType|All supported types]] == Wikidata == * {{Z|Z22220}} * {{Z|Z22222}} == Sentences == {| class="wikitable" |+ !No. !Function !Configuration !Example |- |1. |{{Z|Z34282}} |{{Z|Z34281}} |Lyon is a commune of France |- |2. |{{Z|Z32581}} |{{Z|Z32534}} |Mona Lisa is a painting by Leonardo da Vinci |- |3. |{{Z|Z34637}} |{{Z|Z34682}} |Sunday is part of the weekend |} === References === * {{Z|Z31921}} == Catalogue == * [[Wikifunctions:Catalogue|Catalogue of important functions]] * [[Wikifunctions:Catalogue/Natural language operations/Global language functions|Global language functions]] == Documentation == * [[Wikifunctions:Catalogue/Wikidata operations|Wikidata operations]] 2qeh9z4yatwfwuwbjim71u0lg44aag7 Z19170 0 40968 272619 272360 2026-05-06T07:41:52Z WikiLambda system 3 Updated the implementation list (see [[Help:Wikifunctions/Implementation_ordering_and_choosing|About implementation selection]]) 272619 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z19170" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z19170K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "string to test for double letter" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "zu prüfende Zeichenkette" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "chaîne pour tester la double lettre" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "stringa" } ] } } ], "Z8K2": "Z40", "Z8K3": [ "Z20", "Z19171", "Z19172", "Z19173", "Z19174", "Z19176" ], "Z8K4": [ "Z14", "Z25748", "Z19175", "Z34708", "Z34707" ], "Z8K5": "Z19170" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "has double letter" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "hat doppelten Buchstaben" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "y a-t-il une lettre en double ?" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "ha lettera doppia" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "double letter", "repeat letter", "twice in a row", "duplicate letter in a row", "two of the same letter in a row" ] }, { "Z1K1": "Z31", "Z31K1": "Z1430", "Z31K2": [ "Z6", "doppelter Buchstabe", "wiederholter Buchstabe", "zwei mal in Folge", "selber Buchstaben in Folge" ] }, { "Z1K1": "Z31", "Z31K1": "Z1787", "Z31K2": [ "Z6", "con lettera doppia", "lettera duplicata", "doppia", "ha doppia", "lettera si ripete", "ha ripetizione" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "tests whether the string has any letter (case sensitive) used twice in a row" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "prüft, ob in der Zeichenkette ein Buchstabe (Groß- und Kleinschreibung beachtend) zwei mal in Folge auftaucht" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "renvoie \"vrai\" si une chaîne a une lettre utilisé deux fois de suite (insensible à la casse), sinon \"faux\"" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "Controlla se una stringa ha una lettera ripetuta due volte consecutive (maiuscole e minuscole sono considerate diverse)" } ] } } c1ywe2dx2nvnhri0nfvb7rrtlakgin2 Z20357 0 43706 272503 272161 2026-05-05T18:39:11Z WikiLambda system 3 Updated the implementation list (see [[Help:Wikifunctions/Implementation_ordering_and_choosing|About implementation selection]]) 272503 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z20357" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20342", "Z17K2": "Z20357K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "day" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "jour" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z40", "Z17K2": "Z20357K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "leap year?" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "est-ce une année bissextile ?" } ] } } ], "Z8K2": "Z13518", "Z8K3": [ "Z20", "Z20359", "Z20360", "Z20361" ], "Z8K4": [ "Z14", "Z20358", "Z23629", "Z34752", "Z34751" ], "Z8K5": "Z20357" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Day of Roman Year to Day number in year" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "jour de l'année vers nombre de jours dans l'année" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Utility function" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "dans une année romaine ; fonction utilitaire" } ] } } p9awzgcf9cokz2twogxfd7v1b5pkrnw Z20430 0 43812 272628 272168 2026-05-06T09:22:38Z WikiLambda system 3 Updated the implementation list (see [[Help:Wikifunctions/Implementation_ordering_and_choosing|About implementation selection]]) 272628 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z20430" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20420", "Z17K2": "Z20430K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "this" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "première date" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Erste Datumsangabe" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "prima data" }, { "Z1K1": "Z11", "Z11K1": "Z1001", "Z11K2": "هذا" }, { "Z1K1": "Z11", "Z11K1": "Z1157", "Z11K2": "dit" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z20420", "Z17K2": "Z20430K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "that" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "deuxième date" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Zweite Datumsangabe" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "seconda data" }, { "Z1K1": "Z11", "Z11K1": "Z1001", "Z11K2": "ذاك" }, { "Z1K1": "Z11", "Z11K1": "Z1157", "Z11K2": "dat" } ] } } ], "Z8K2": "Z40", "Z8K3": [ "Z20", "Z20432", "Z20433", "Z20434", "Z20435", "Z20436", "Z20437", "Z21128" ], "Z8K4": [ "Z14", "Z20739", "Z33804", "Z20431", "Z34754" ], "Z8K5": "Z20430" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Same Gregorian calendar date" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "est-ce la même date du calendrier grégorien ?" }, { "Z1K1": "Z11", "Z11K1": "Z1005", "Z11K2": "Та же дата Григорианского календаря" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Gleiches Gregorianisches Kalenderdatum" }, { "Z1K1": "Z11", "Z11K1": "Z1827", "Z11K2": "ίδια ημερομηνία στο Γρηγοριανό ημερολόγιο" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "stessa Data di calendario Gregoriano" }, { "Z1K1": "Z11", "Z11K1": "Z1001", "Z11K2": "نفس تاريخ التقويم الغريغوري" }, { "Z1K1": "Z11", "Z11K1": "Z1157", "Z11K2": "zelfde datum in de Gregoriaanse kalender" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1430", "Z31K2": [ "Z6", "Identisches Gregorianisches Kalenderdatum" ] }, { "Z1K1": "Z31", "Z31K1": "Z1787", "Z31K2": [ "Z6", "confronta date di calendario gregoriano", "uguaglianza tra date di calendario gregoriano", "date di calendario gregoriano uguali" ] }, { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "same Gregorian dates", "same Gregorian days of the year" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Prüft ob die Datumsangaben im Gregorianischen Kalender gleich sind." }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "renvoie \"vrai\" si les deux dates sont les mêmes, sinon \"faux\"" } ] } } eyiw97lx66ux43hfoj2hjcqynpec97v Z21071 0 45930 272508 225512 2026-05-05T20:32:51Z YoshiRulz 10156 Removed Z28951 from the approved list of implementations 272508 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21071" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z21071K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "float" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "nombre à virgule flottante" } ] } } ], "Z8K2": "Z19677", "Z8K3": [ "Z20", "Z21460", "Z21461", "Z21462", "Z21463", "Z21465", "Z21773", "Z28956", "Z28957", "Z21923" ], "Z8K4": [ "Z14", "Z21072" ], "Z8K5": "Z21071" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "float as rational" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "nombre à virgule flottante vers rationnel" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "float64 as rational number", "convert float64 to rational number", "rational number from float64", "floating point as rational number" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "convertit un nombre à virgule flottante en nombre rationnel" } ] } } gileffw0hf470ecsmzkuql7e970co6f 272511 272508 2026-05-05T20:36:40Z YoshiRulz 10156 Added Z28951 to the approved list of implementations 272511 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21071" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z21071K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "float" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "nombre à virgule flottante" } ] } } ], "Z8K2": "Z19677", "Z8K3": [ "Z20", "Z21460", "Z21461", "Z21462", "Z21463", "Z21465", "Z21773", "Z28956", "Z28957", "Z21923" ], "Z8K4": [ "Z14", "Z21072", "Z28951" ], "Z8K5": "Z21071" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "float as rational" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "nombre à virgule flottante vers rationnel" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "float64 as rational number", "convert float64 to rational number", "rational number from float64", "floating point as rational number" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "convertit un nombre à virgule flottante en nombre rationnel" } ] } } onthave6239642b2p5fsfar6dfcacfk 272535 272511 2026-05-05T22:15:45Z WikiLambda system 3 Updated the implementation list (see [[Help:Wikifunctions/Implementation_ordering_and_choosing|About implementation selection]]) 272535 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21071" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z21071K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "float" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "nombre à virgule flottante" } ] } } ], "Z8K2": "Z19677", "Z8K3": [ "Z20", "Z21460", "Z21461", "Z21462", "Z21463", "Z21465", "Z21773", "Z28956", "Z28957", "Z21923" ], "Z8K4": [ "Z14", "Z28951", "Z21072" ], "Z8K5": "Z21071" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "float as rational" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "nombre à virgule flottante vers rationnel" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "float64 as rational number", "convert float64 to rational number", "rational number from float64", "floating point as rational number" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "convertit un nombre à virgule flottante en nombre rationnel" } ] } } s9x24s0ol3l1s9z2nr0rwp9bqs1srsc 272541 272535 2026-05-05T22:36:49Z YoshiRulz 10156 Added Z34840 to the approved list of implementations 272541 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21071" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z21071K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "float" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "nombre à virgule flottante" } ] } } ], "Z8K2": "Z19677", "Z8K3": [ "Z20", "Z21460", "Z21461", "Z21462", "Z21463", "Z21465", "Z21773", "Z28956", "Z28957", "Z21923" ], "Z8K4": [ "Z14", "Z28951", "Z21072", "Z34840" ], "Z8K5": "Z21071" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "float as rational" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "nombre à virgule flottante vers rationnel" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "float64 as rational number", "convert float64 to rational number", "rational number from float64", "floating point as rational number" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "convertit un nombre à virgule flottante en nombre rationnel" } ] } } q5lqqgghoh0gh7fjq1uzp3ezs6mdkif User:Xeroctic 2 46453 272632 225585 2026-05-06T09:31:00Z Xeroctic 8849 272632 wikitext text/x-wiki {{#babel:en-GB}} I am most active on English Wikipedia, but I don't actively edit on this wiki anymore. Many of my edits here involved languages and their documentation. r0sjew5z5h0vkdja1qqve7d464q4e92 User:Xeroctic/Human languages 2 46497 272631 264971 2026-05-06T09:28:55Z Xeroctic 8849 272631 wikitext text/x-wiki This page's contents have now been incorporated into [[Wikifunctions:Human languages]], but I am keeping this page for attribution/page history purposes. ---- A proposed remake of the incomplete [[Wikifunctions:Human languages]], with languages and language codes sorted by their [[wikt:Category:Languages by family|English Wiktionary classification]]. This list only contains languages which have their own Human languages subpage, categories, or natural language functions. Some changes have been made to the original classification: *Subfamilies are excluded if they only have one descendant *Languages and dialects are categorised under another language if Wikifunctions treats it as a variant *Smaller language families with only one major member (including language isolates) have been grouped together **This list will still have separate categories for constructed, sign and mixed/creole languages. Other users are free to edit this draft as well. == Related pages == *[[:Category:Natural languages]] — List of categories for languages *[[Wikifunctions:Catalogue/Natural language operations]] — Lists of natural language functions *[[Wikifunctions:NLG functions]] — A table of each supported language's NLG functions **[[Wikifunctions:Cardinal numbers]] — List of each language's cardinal number functions *[[Wikifunctions:Reserved ZIDs/all#Z1000-Z1999]] — List of all languages in ZObject order == Afroasiatic == *{{Z+|Z1472}} (zgh) — [[/Z1472]] *{{z+|Z1013}} (ha) — [[/Z1013]] * Semitic ** Arabic *** {{z+|Z1001}} (ar) — [[/Z1001]] *** {{Z+|Z1045}} (ary) — [[/Z1045]] *** {{Z+|Z1582}} (aeb) — [[/Z1582]] **{{z+|Z1186}} (he) — [[/Z1186]] == Austroasiatic == *{{z+|Z1048}} (vi) — [[/Z1048]] *(Mundari, no code yet) (unr) == Austronesian == *Malayic **{{z+|Z1531}} (ms) — [[/Z1531]] ***{{z+|Z1434}} (ms-arab) — [[/Z1434]] **{{Z+|Z1078}} (id) — [[/Z1078]] *{{z+|Z1471}} (su) — [[/Z1471]] == Constructed == *{{z+|Z1882}} (ldn) — [[/Z1882]] *{{z+|Z1576}} (eo) — [[/Z1576]] *{{Z+|Z1534}} (tlh) — [[/Z1534]] *{{Z+|Z1762}} (tok) — [[/Z1762]] == Dravidian == *{{z+|Z1293}} (brh) — [[/Z1293]] *South **{{z+|Z1012}} (ml) — [[/Z1012]] **{{Z+|Z1429}} (te) — [[/Z1429]] == Indo-European == * {{Z+|Z1541}} (hy) — [[/Z1541]] * Balto-Slavic **{{z+|Z1709}} (lv) — [[/Z1709]] ** Slavic *** East Slavic **** {{z+|Z1005}} (ru) — [[/Z1005]] **** {{z+|Z1332}} (uk) — [[/Z1332]] **** {{Z+|Z1622}} (by) — [[/Z1622]] *** West Slavic **** {{z+|Z1062}} (cs) — [[/Z1062]] **** {{z+|Z1025}} (pl) — [[/Z1025]] **** {{z+|Z1488}} (sk) — [[/Z1488]] ***South Slavic ****{{Z+|Z1105}} (cu) — [[/Z1105]] ****{{z+|Z1412}} (sh) — [[/Z1412]] *****{{z+|Z1473}} (bs) — [[/Z1473]] *****{{z+|Z1272}} (hr) — [[/Z1272]] *****{{z+|Z1498}} (cnr) — [[/Z1498]] *****{{z+|Z1158}} (sr) — [[/Z1158]] ****{{z+|Z1616}} (sl) — [[/Z1616]] *Celtic ** {{z+|Z1282}} (br) — [[/Z1282]] ** {{Z+|Z1339}} (gd) — [[/Z1282]] * Germanic ** North Germanic ***East Scandinavian ****{{z+|Z1061}} (dk) — [[/Z1061]] ****{{z+|Z1592}} (sv) — [[/Z1592]] ***{{z+|Z1021}} (no) — [[/Z1592]] ** West Germanic *** North Sea **** {{z+|Z1002}} (en) — [[/Z1002]] ***** North American ****** {{Z+|Z1689}} (en-US) — [[/Z1689]] ****** {{Z+|Z1437}} (en-CA) — [[/Z1437]] *****{{z+|Z1113}} (en-AU) — [[/Z1113]] *****{{z+|Z1199}} (en-GB) — [[/Z1199]] *****{{Z+|Z1966}} (en-IN) — [[/Z1966]] *****{{Z+|Z1881}} (en-x-piglatin) — [[/Z1881]] *****{{Z+|Z1124}} (en-x-simple) — [[/Z1124]] ****{{z+|Z1146}} (nds) — [[/Z1146]] ***High German ****{{z+|Z1099}} (lb) — [[/Z1099]] ****{{z+|Z1430}} (de) — [[/Z1430]] ***{{z+|Z1157}} (nl) — [[/Z1157]] *{{z+|Z1827}} (el) — [[/Z1827]] *Indo-Iranian **Indo-Aryan ***Hindustani ****{{z+|Z1820}} (hi) — [[/Z1820]] ****{{z+|Z1717}} (ur) — [[/Z1717]] ***Northwestern ****Punjabic *****{{Z+|Z1657}} (pa) — [[/Z1657]] *****{{Z+|Z1083}} (pnb) — [[/Z1083]] ****{{z+|Z1191}} (sd) — [[/Z1191]] ***Eastern ****{{z+|Z1011}} (bn) — [[/Z1011]] ****Rohingya (rhg) *****{{Z+|Z1978}} (rhg-rohg) — [[/Z1978]] *****{{Z+|Z1979}} (rhb-arab) — [[/Z1979]] **Iranian ***Northwestern ****{{z+|Z1747}} (bal) — [[/Z1747]] ****{{z+|Z1556}} (ku) — [[/Z1556]] *****{{z+|Z1288}} (ckb) — [[/Z1288]] ***{{z+|Z1728}} (fa) — [[/Z1728]] ****{{z+|Z1207}} (tg) — [[/Z1207]] ****{{Z+|Z1265}} (fa-AF / prs) — [[/Z1265]] ****{{z+|Z1277}} (jpr) — [[/Z1277]] *Italic ** {{Z+|Z1403}} (la) — [[/Z1403]] ** Romance *** Italo-Western ****{{z+|Z1787}} (it) — [[/Z1787]] ****Western *****Gallo-Romance ****** {{z+|Z1789}} (ca) — [[/Z1789]] ****** Oïl ******* {{z+|Z1004}} (fr) — [[/Z1004]] ******* (Lorrain, no code yet) (roa-lor) ***** Ibero-Romance ****** {{z+|Z1037}} (pt) — [[/Z1037]] ******* {{Z+|Z1381}} (pt-BR) — [[/Z1381]] ****** {{z+|Z1003}} (es) — [[/Z1003]] *** {{z+|Z1664}} (ro) — [[/Z1664]] == Kra-Dai == *{{z+|Z1851}} (th) — [[/Z1851]] == Niger-Congo == * Atlantic-Congo ** {{z+|Z1015}} (dag) — [[/Z1015]] ** Volta-Congo *** Volta-Niger **** {{z+|Z1014}} (ig) — [[/Z1014]] **** {{z+|Z1818}} (ya) — [[/Z1818]] *** {{z+|Z1179}} (kcg) — [[/Z1179]] == Mixed and creoles == These languages are sorted under the language it is primarily based on. *{{Z|Z1531}} **{{z+|Z1630}} (bew) — [[/Z1630]] == Sign == *{{z+|Z1763}} (ase) — [[/Z1763]] == Sino-Tibetan == * {{Z+|Z1147}} (dz) — [[/Z1147]] * Sinitic ** {{z+|Z1006}} (zh) — [[/Z1006]] *** {{z+|Z1645}} (zh-hans) — [[/Z1645]] **** {{z+|Z1411}} (zh-CN) — [[/Z1411]] *** {{z+|Z1672}} (zh-hant) — [[/Z1672]] **** {{z+|Z1589}} (zh-HK) — [[/Z1589]] **{{z+|Z1202}} (zh-yue) — [[/Z1202]] ***{{z+|Z1901}} (yue-hans) — [[/Z1901]] ***{{z+|Z1902}} (yue-hant) — [[/Z1902]] == Turkic == *Oghuz **{{z+|Z1237}} (tr) — [[/Z1237]] **{{z+|Z1597}} (az) — [[/Z1597]] *{{z+|Z1120}} (uz) — [[/Z1120]] == Uralic == *{{z+|Z1051}} (fi) — [[/Z1051]] *{{Z+|Z1513}} (hu) — [[/Z1513]] == Isolates and smaller families == * {{Z+|Z1314}} (eu) — [[/Z1314]] * {{z+|Z1830}} (ja) — [[/Z1830]] * {{z+|Z1643}} (ko) — [[/Z1643]] * {{z+|Z1678}} (qu) — [[/Z1678]] == Other == *{{z+|Z1360}} (mul) — [[/Z1360]] f53lvyw3n1imwhfzclm7s1wkzeun8p7 User:Theki/functions 2 47433 272645 270675 2026-05-06T11:34:19Z Theki 2389 /* language */ 272645 wikitext text/x-wiki * <div style="display:inline-block;background:#e5e5e5;aspect-ratio:1/1;width:10px;"></div> nonexistent but should logically exist * <div style="display:inline-block;background:#555;aspect-ratio:1/1;width:10px;"></div> shouldnt logically exist __TOC__ == data == === conversions === {| class="wikitable" ! style="line-height:1.2;padding:0.1em 0.4em;background:var(--background-color-neutral,#eaecf0);background-image:linear-gradient(to top right,var(--background-color-neutral,#eaecf0) 49%,var(--border-color-base,#a2a9b1) 49.5%,var(--border-color-base,#a2a9b1) 50.5%,var(--background-color-neutral,#eaecf0) 51%);" | <div style="margin-left:2em;">from</div><div style="margin-right:2em;">to</div> ! [[Z40|boolean]] !! [[Z20838|float64]]!! [[Z16683|integer]] !! [[Z13518|natural number]] ![[Z19677|rational number]]!! [[Z6|string]] |- ! scope = "row" | boolean | [[Z10215|Z​10215]] | colspan="5" style="text-align:center;" | [[Z15684|Z​15684]] |- ! scope="row" | float64 | rowspan="2" style="background:#e5e5e5;border:0;" | | rowspan="3" style="background:#e5e5e5;border:0;" | | [[Z20937|Z​20937]] | [[Z20936|Z​20936]] | [[Z20854|Z​20854]] | [[Z20915|Z​20915]] |- ! scope="row" | integer | style="background:#e5e5e5;border:0;" | | [[Z17101|Z​17101]] | [[Z19682|Z​19682]] | base n: [[Z18467|Z​18467]]<br>base 10: [[Z16705|Z​16705]] |- ! scope = "row" | natural number | [[Z17065|Z​17065]] | [[Z20391|Z​20391]] | [[Z13636|Z​13636]] | style="background:#e5e5e5;border:0;" | | base n: [[Z13806|Z​13806]]<br>base 10: [[Z14290|Z​14290]] |- !rational number | style="background:#e5e5e5;border:0;" | | [[Z21071|Z​21071]] | [[Z19744|Z​19744]] | [[Z21653|Z​21653]] | [[Z20112|Z​20112]] | [[Z19866|Z​19866]] |- ! scope = "row" | string | [[Z10730|Z​10730]] |[[Z20844|Z​20844]] | base n: [[Z18592|Z​18592]]<br>base 10: [[Z16700|Z​16700]] | base n: [[Z15671|Z​15671]]<br>base 10: [[Z14280|Z​14280]] | [[Z19827|Z​19827]] | [[Z11602|Z​11602]] |} * [[Z17352|(int as nat)]] * [[Z17355|(nat as int)]] * [[Z21402|(rat as f64)]] === operations === {| class="wikitable" ! !! float64!! integer !! natural number !rational number!! string !! list |- ! scope = "row" | == |same value: [[Z20924|Z​20924]]<br>same object: [[Z20850|Z​20850]] | [[Z16688|Z​16688]] || [[Z13522|Z​13522]] |same value: [[Z19686|Z​19686]]<br>same object: [[Z19892|Z​19892]] | [[Z866|Z​866]] | [[Z889|Z​889]] |- !> | [[Z20943|Z​20943]] | [[Z17132|Z​17132]] | [[Z13676|Z​13676]] | [[Z19751|Z​19751]] | rowspan="4" style="background:#555;border:0;" | | rowspan="4" style="background:#555;border:0;" | |- !< | [[Z20940|Z​20940]] | [[Z17140|Z​17140]] | [[Z13689|Z​13689]] | [[Z19753|Z​19753]] |- !>= | [[Z20944|Z​20944]] | [[Z17173|Z​17173]] | [[Z13682|Z​13682]] | [[Z19752|Z​19752]] |- !<= | [[Z20941|Z​20941]] | [[Z17363|Z​17363]] | [[Z13695|Z​13695]] | [[Z19754|Z​19754]] |- ! scope="row" | + |[[Z20849|Z​20849]]|| [[Z16693|Z​16693]] || [[Z13521|Z​13521]] |[[Z19679|Z​19679]]|| [[Z10000|Z​10000]] || typed: [[Z12961|Z​12961]]<br>untyped: [[Z18597|Z​18597]] |- ! scope = "row" | − |[[Z21031|​Z​21031]] | [[Z17111|Z​17111]] || as integer: [[Z17315|Z​17315]] <br>as natural number: [[Z13569|Z​13569]] |[[Z19699|Z​19699]]|| rowspan="9" style="background:#555;border:0;" | || first: [[Z812|Z​812]]<br>last: [[Z12967|Z​12967]] |- ! scope = "row" | × | [[Z21032|Z​21032]] | [[Z17120|Z​17120]] || [[Z13539|Z​13539]] | [[Z19706|Z​19706]] | rowspan="8" style="background:#555;border:0;" | |- ! scope = "row" | ÷ | [[Z21033|Z​21033]] | [[Z17291|Z​17291]] || [[Z13546|Z​13546]] | [[Z19708|Z​19708]] |- ! scope = "row" | % | [[Z22236|Z​22236]] | [[Z17167|Z​17167]] || [[Z13551|Z​13551]] | [[Z20006|Z​20006]] |- !>> | rowspan="2" style="background:#e5e5e5;border:0;" | | rowspan="2" style="background:#e5e5e5;border:0;" | | [[Z13813|Z​13813]] | rowspan="2" style="background:#e5e5e5;border:0;" | |- !<< | [[Z13812|Z​13812]] |- ! scope = "row" | abs | [[Z21041|Z​21041]] | as integer: [[Z17128|Z​17128]]<br>as natural number: [[Z17144|Z​17144]] || style="background:#555;border:0;" | | [[Z21692|Z​21692]] |- !pow | [[Z21028|Z​21028]] | [[Z17263|Z​17263]] | [[Z13647|Z​13647]] | [[Z19953|Z​19953]] |- !sqrt |[[Z22600|Z​22600]] |[[Z24591|Z​24591]] |[[Z15256|Z​15256]] |[[Z20902|Z​20902]] |} === boolean operations === {| class="wikitable" ! !! [[Z40|boolean]] (tf) !! [[Z22112|kleenean]] (mtf) !! bitwise |- ! scope = "row" | [[w:Logical conjunction|AND]] | [[Z10174|Z​10174]] | [[Z22143|Z​22143]] | natural number: [[Z13651|Z​13651]] |- ! scope = "row" | [[w:Logical disjunction|OR]] | [[Z10184|Z​10184]] | [[Z22168|Z​22168]] | natural number: [[Z13652|Z​13652]] |- ! scope = "row" | [[w:Negation|NOT]] | [[Z10216|Z​10216]] | [[Z22207|Z​22207]] | byte: [[Z22529|Z​22529]]<br>integer: [[Z17794|Z​17794]] |- ! scope = "row" | [[w:Sheffer stroke|NAND]] | [[Z10243|Z​10243]] | [[Z24749|Z​24749]] | byte: [[Z24716|Z​24716]] |- ! scope = "row" | [[w:Exclusive or|XOR]] (≠) | [[Z10237|Z​10237]] | [[Z22231|Z​22231]] | natural number: [[Z13653|Z​13653]] |- ! scope = "row" | [[w:Logical NOR|NOR]] | [[Z10231|Z​10231]] | style="background:#e5e5e5;border:0;" | | rowspan="2" style="background:#e5e5e5;border:0;" | |- ! scope = "row" | [[w:Logical biconditional|XNOR]] (=) | [[Z844|Z​844]] | [[Z22120|Z​22120]] |} == list functions == {{Z+|Z881}} * '''generate (range)''': {{Z+|Z21821}} * '''generate (replicated object)''': {{Z+|Z21389}} * '''map''' {{Z+|Z873}} * '''map(list, const)''': {{Z+|Z13464}} * '''map(const, list)''': {{Z+|Z13436}} * '''match tail''': {{Z+|Z16199}} * '''type''': {{Z+|Z18475}} === typed? === * '''concatenate''': {{Z+|Z18755}} * '''deduplicate''': {{Z+|Z19202}} * '''flatten''': {{Z+|Z23606}} * '''generate (natural number range)''': {{Z+|Z13831}} * '''reverse''': {{Z+|Z18479}} * '''untype''': {{Z+|Z17895}} == map functions == {{Z+|Z883}}<!--these don't seem to work at the moment--> * '''empty?''': {{Z+|Z24609}} * '''from list''': {{Z+|Z24646}} * '''get value''': {{Z+|Z24606}} * '''identity''': {{Z+|Z24603}} * '''map''': {{Z+|Z24608}} * '''parse JSON''': {{Z+|Z24602}} === returns (no map inputs) === * '''values of Object as map''': {{Z+|Z804}} == language == :''see also [[Wikifunctions:NLG functions|Natural language generation functions]], [[abstract:Abstract Wikipedia:Useful functions for article composition|Useful functions for article composition]]'' {|class=wikitable !A |adjective |- !C |class |- !N |noun |- !V |verb |} {|class=wikitable !sentence type !multilingual function !config !monolingual text !language parameter in English implementation |- |(a A N)||{{Z|Z22664}}||{{Z|Z21733}} |{{/no|2}} |{{/no|7}} |- |N is a C.||{{Z|Z26039}}||{{Z|Z26043}} |- |An N is a C.||{{Z|Z26095}}||{{Z|Z26096}} |{{/yes|3}} |- |N is a C in N.||{{Z|Z26570}}||{{Z|Z29843}} |- |Cs are Cs.||{{Z|Z26627}}||{{Z|Z27126}} |- |C is A C.||{{Z|Z27173}}||{{Z|Z29628}} |{{/no}} |- |N is the Aest C in N.||{{Z|Z27243}}||{{Z|Z29841}} |{{/yes|11}} |- |N is the N of N.||{{Z|Z28016}}||{{Z|Z28020}} |{{/yes|3}} |- |Ns are Ns of N.||{{Z|Z32326}}||{{Z|Z32255}} |- |Ns V Ns.||{{Z|Z32531}}||{{Z|Z32530}} |- |N is a C by N.||{{Z|Z32581}}||{{Z|Z32534}} |{{/no}} |- |N is a C and C. |rowspan=2|{{Z|Z32643}} |rowspan=2|{{Z|Z32660}} |{{/yes|5}} |- |N is a C, C, and C. |- |N Vs N.||{{Z|Z33185}}||{{Z|Z33184}} |- |N is a C from N.||{{Z|Z33975}}||{{Z|Z33981}} |- |N is the #th C by N.||{{Z|Z34253}}||{{Z|Z34255}} |- |N is a C. (automatic based on Wikidata class)||{{Z|Z34282}}||{{Z|Z34281}} |{{/no}} |} == personal functions == * {{Z+|Z24629}} * {{Z+|Z24632}} * {{Z+|Z24649}} * {{Z+|Z24660}} * {{Z+|Z24665}} * {{Z+|Z33834}} * {{Z+|Z33836}} === date/time === * {{Z+|Z23246}} * {{Z+|Z23783}} * {{Z+|Z23801}} * {{Z+|Z23808}} * {{Z+|Z23833}} * {{Z+|Z23865}} === [[Z1762|toki pona]] === : ''see [[Wikifunctions:Catalogue/Natural language operations/Toki Pona]]'' * {{Z+|Z22455}} * {{Z+|Z22571}} * {{Z+|Z24721}} * {{Z+|Z33828}} * {{Z+|Z33831}} * {{Z+|Z33873}} == todo == * add toki pona to {{Z|Z33855}} * move certain uses of {{Z|Z10771}} to {{Z|Z34096}} * make sure English sentence generation functions have a language parameter to allow for rendering of certain words in e.g. British English (use {{Z|Z34039}}) ** {{Z|Z33059}} 25po6djr5b5gi94czfpl24lvl0iaznc Z21534 0 47597 272530 272041 2026-05-05T21:44:21Z YoshiRulz 10156 Removed Z26690 from the approved list of implementations 272530 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21534" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z21534K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "n" } ] } } ], "Z8K2": "Z16683", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z21534" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "truncate float64 to Integer" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "convert float64 to Integer, discarding decimal values" } ] } } 0f4po2n9ovtqdteh4j6cvo0c6l33yxs 272543 272530 2026-05-05T22:37:42Z YoshiRulz 10156 Added Z26690 to the approved list of implementations 272543 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21534" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z21534K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "n" } ] } } ], "Z8K2": "Z16683", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14", "Z26690" ], "Z8K5": "Z21534" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "truncate float64 to Integer" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "convert float64 to Integer, discarding decimal values" } ] } } 0i2zerfsvqeqwv60vghkw3k4d46qaeo Z21851 0 48214 272562 228572 2026-05-06T01:04:57Z YoshiRulz 10156 Added Z34844 to the approved list of implementations 272562 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21851" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z16683" }, "Z17K2": "Z21851K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "List" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "liste" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z16683" }, "Z8K3": [ "Z20", "Z21853", "Z21854" ], "Z8K4": [ "Z14", "Z21852", "Z34844" ], "Z8K5": "Z21851" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "mode of list (integer)" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "mode liste" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "list mode", "mode", "most common value", "most common integer", "list mode (integer)" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Returns a list of the mode(s) of a list of natural numbers" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "renvoie une liste du ou des modes d'une liste de nombres naturels" } ] } } lcmbj64lyzs92u0c9l2ksah8o55wbrn Z21856 0 48221 272564 161431 2026-05-06T01:08:36Z YoshiRulz 10156 Added Z34845 to the approved list of implementations 272564 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21856" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z13518", "Z17K2": "Z21856K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Diastolic blood presure" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "pression artérielle diastolique" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z13518", "Z17K2": "Z21856K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Systolic blood presure" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "pression artérielle systolique" } ] } } ], "Z8K2": "Z20838", "Z8K3": [ "Z20", "Z21860" ], "Z8K4": [ "Z14", "Z21857", "Z34845" ], "Z8K5": "Z21856" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "mean arterial pressure" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "pression artérielle moyenne" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Finds MAP given diastolic and systolic blood pressure." }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "détermine la pression artérielle moyenne en fonction de la pression artérielle diastolique et systolique" } ] } } 4mkock6suhzf4upw8gizojy979udvmf Z21868 0 48253 272566 164451 2026-05-06T01:13:59Z YoshiRulz 10156 Added Z34846 to the approved list of implementations 272566 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21868" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z13518", "Z17K2": "Z21868K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Number" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "nombre" } ] } } ], "Z8K2": "Z40", "Z8K3": [ "Z20", "Z21871", "Z21872" ], "Z8K4": [ "Z14", "Z21870", "Z21869", "Z34846" ], "Z8K5": "Z21868" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "is narcissistic number" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "est-ce un nombre narcissique ?" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Returns true if the natural number put in is a narcissistic number. Returns false otherwise." }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "renvoie \"vrai\" si le nombre donné est un nombre narcissique (également nommé nombre d'Armstrong), sinon \"faux\"" } ] } } b2gzmk5uodhyl71qd0gl7ndl0y8xo2q Z21875 0 48269 272559 272305 2026-05-06T01:01:48Z YoshiRulz 10156 Add 'Unicode' to the exception list 272559 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21875" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32314", "Z14K3": { "Z1K1": "Z16", "Z16K1": "Z610", "Z16K2": "def Z32314(Z32314K1):\n\tword = Z32314K1.split(\" \")[0]\n\timport re\n\t\n\tU_PATTERN = re.compile(r\"^u[bcdfghjklmpqrstvwxyz][aeiou]\")\n\tCASE_SENSITIVE_EXCEPTIONS = {\n\t\t\"Ewe\": True\n\t}\n\tEXCEPTIONS_DICT = {\n\t\tword.lower(): False for word in [ \"NASA\", \"once\", \"one\", \"onesie\", \"Uniat\", \"Uniate\", \"uniaxial\", \"unibody\", \"unibrow\", \"unicameral\", \"UNICEF\", \"unicellular\", \"Unicode\", \"unicorn\", \"unicycle\", \"unidimensional\", \"unidirectional\", \"unification\", \"unified\", \"unifoliate\", \"unifoliolate\", \"uniform\", \"uniformity\", \"unilateral\", \"unilateralism\", \"unilineal\", \"unilinear\", \"unilingual\", \"unilocular\", \"uninucleate\", \"union\", \"unionism\", \"unionist\", \"unionization\", \"unionized\", \"uniparental\", \"unipolar\", \"unique\", \"unisex\", \"unisexual\", \"unison\", \"unit\", \"unitage\", \"unitard\", \"united\", \"uniter\", \"unitive\", \"unitrust\", \"unity\", \"univalent\", \"univalve\", \"univariate\", \"univerbation\", \"universal\", \"universalism\", \"universalistic\", \"universality\", \"universe\", \"university\", \"univocal\"]\n\t}\n\tEXCEPTIONS_DICT.update({\n\t\tword.lower(): True for word in [\n\t\t\t\"heir\", \"heirloom\", \"herb\", \"heuristic\", \"honest\", \"honestly\", \"honesty\", \"honor\", \"honorarium\", \"honorary\", \"honour\", \"hour\", \"hourly\"\n\t\t]\n\t})\n\tINITIALISM_LETTERS = {\"A\", \"E\", \"F\", \"H\", \"I\", \"L\", \"M\", \"N\", \"O\", \"R\", \"S\", \"X\"}\n\tREGULAR_VOWELS = {\"a\", \"e\", \"i\", \"o\"}\n\tCONSONANTS = set(\"bcdfghjklmnpqrstvwxyz\")\n\n\t# 1: If the word is an empty string, that means it doesn't start with a vowel\n\tif not word:\n\t\treturn False\n\n\t# 2: If the word is a case-sensitive exception, return the match\n\tif word in CASE_SENSITIVE_EXCEPTIONS:\n\t\treturn CASE_SENSITIVE_EXCEPTIONS[word]\n\n\tword_lower = word.lower()\n\n\t# 3: If the word is an exception, return the match\n\tif word_lower in EXCEPTIONS_DICT:\n\t\treturn EXCEPTIONS_DICT[word_lower]\n\n\tfirst_letter = word[0]\n\tfirst_letter_lower = first_letter.lower()\n\n\t# 4: If the word is a number, return what the result would be for its ordinal word(s)\n\tif first_letter == \"8\" or ((word.startswith(\"11\") or word.startswith(\"18\")) and len(word) not in [3, 4]):\n\t\treturn True\n\n\t# 5: If the word is 1 letter, it is likely a letter name\n\tif len(word) == 1:\n\t\treturn first_letter.upper() in INITIALISM_LETTERS\n\t\t\n\t# 6: If the word starts with 2 or more capital letters, it is likely an initialism\n\t#! NOTE: this mishandles acronyms\n\tif first_letter.isupper() and word[1].isupper():\n\t\treturn first_letter.upper() in INITIALISM_LETTERS\n\t\t\n\t# 7: If the word is 3 or more letters long and starts with a capital letter and a period, it is likely an initialism\t\n\tif first_letter.isupper() and len(word) \u003E= 3 and word[1] == \".\":\n\t\treturn first_letter.upper() in INITIALISM_LETTERS\n\n\t# 8: If the word starts with a U, handle it\n\tif first_letter_lower == \"u\":\n\t\treturn not U_PATTERN.match(word_lower)\n\n\t# 9: If the word starts with an eu or ew, handle it\n\tif len(word) \u003E= 3 and (word_lower.startswith(\"eu\") or word_lower.startswith(\"ew\")):\n\t\tif word_lower[2] in CONSONANTS or word_lower == \"ewe\":\n\t\t\treturn False\n\n\t# 10: If the word starts with one of the 4 other vowels, return it\n\tif first_letter_lower in REGULAR_VOWELS:\n\t\treturn True\n\n\treturn False" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Indefinite article from subsequent word, python" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "« an » ou « a » en anglais ?, en Python (2)" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 02edo5mxu1r49garg9nky8qins7vvk8 Z21890 0 48319 272568 162695 2026-05-06T01:22:09Z YoshiRulz 10156 Added Z34847 to the approved list of implementations 272568 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21890" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z6005" }, "Z17K2": "Z21890K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "adverbs" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "adverbe" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6005", "Z17K2": "Z21890K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "verb" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "verbe" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z13518", "Z17K2": "Z21890K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "tense number" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "numéro du temps" } ] } } ], "Z8K2": "Z6", "Z8K3": [ "Z20", "Z21892" ], "Z8K4": [ "Z14", "Z21891", "Z34847" ], "Z8K5": "Z21890" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "English verb" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "verbe, en anglais" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } m8ge63mpfq1vxoioqyk3dcbb055cnn6 272614 272568 2026-05-06T07:19:46Z WikiLambda system 3 Updated the implementation list (see [[Help:Wikifunctions/Implementation_ordering_and_choosing|About implementation selection]]) 272614 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21890" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z6005" }, "Z17K2": "Z21890K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "adverbs" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "adverbe" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6005", "Z17K2": "Z21890K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "verb" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "verbe" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z13518", "Z17K2": "Z21890K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "tense number" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "numéro du temps" } ] } } ], "Z8K2": "Z6", "Z8K3": [ "Z20", "Z21892" ], "Z8K4": [ "Z14", "Z34847", "Z21891" ], "Z8K5": "Z21890" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "English verb" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "verbe, en anglais" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } g2dz2zbvsar6cgna9my4v32jeku97nf Z21898 0 48339 272570 159977 2026-05-06T01:25:50Z YoshiRulz 10156 Added Z34848 to the approved list of implementations 272570 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21898" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z21898K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Principal (P)" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "principal (P)" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z21898K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Nominal annual interest rate (r)" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "taux d’intérêt annuel nominal (r)" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z21898K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Number of times per year the interest compound (n)" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "nombre de fois par an pour les intérêts composés" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z21898K4", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Number of years the interest is applied (t)" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "Nombre d'années des intérêts (t)" } ] } } ], "Z8K2": "Z20838", "Z8K3": [ "Z20", "Z21900" ], "Z8K4": [ "Z14", "Z21899", "Z34848" ], "Z8K5": "Z21898" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "compound interest amount" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "montant des intérêts composés" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Calculates the future value of an asset whose value compounds." }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "calcule la valeur future d'un actif dont la valeur est composée" } ] } } qas0e4xd3n6cfhoi43peiyonsrbx4yn Z21913 0 48439 272574 160362 2026-05-06T01:43:06Z YoshiRulz 10156 Added Z34849 to the approved list of implementations 272574 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21913" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z21913K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Gregorian year" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "année grégorienne" } ] } } ], "Z8K2": "Z6", "Z8K3": [ "Z20", "Z21914", "Z21916" ], "Z8K4": [ "Z14", "Z21915", "Z34849" ], "Z8K5": "Z21913" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Gregorian to Holocene year" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "année grégorienne vers Holocène" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Converts a given Gregorian year to Holocene year." }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "convertit une année grégorienne donnée en une année Holocène" } ] } } 7hjk91u7aue9japqsbz5o9wzhqlbuxy Z21987 0 48578 272579 161186 2026-05-06T01:47:17Z YoshiRulz 10156 Added Z34850 to the approved list of implementations 272579 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z21987" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z21987K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "string to test" } ] } } ], "Z8K2": "Z40", "Z8K3": [ "Z20", "Z21988", "Z21989", "Z21990" ], "Z8K4": [ "Z14", "Z21991", "Z34850" ], "Z8K5": "Z21987" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "string includes \"na\" or \"nf\"" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "string is special value", "special value in string", "float64 special value represented by string" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "case-insensitive helper function for Z21643 to determine if the string can only be processed as a special value floating point" } ] } } fggninvwaulnjb01yiszf8x3xk5x5ij Z22168 0 48965 272587 219468 2026-05-06T02:08:49Z YoshiRulz 10156 Added Z34851 to the approved list of implementations 272587 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z22168" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z22112", "Z17K2": "Z22168K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "first" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "premier triléen" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z22112", "Z17K2": "Z22168K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "second" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "second triléen" } ] } } ], "Z8K2": "Z22112", "Z8K3": [ "Z20", "Z22170", "Z22172", "Z22173", "Z22174", "Z23508" ], "Z8K4": [ "Z14", "Z22171", "Z22177", "Z22169", "Z34851" ], "Z8K5": "Z22168" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "or (Kleenean)" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "ou (triléen)" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } o621a2ct2qd6gem8304rqvs0yq5cnyd Z22240 0 49267 272591 219297 2026-05-06T02:16:34Z YoshiRulz 10156 Added Z34852 to the approved list of implementations 272591 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z22240" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z16098", "Z17K2": "Z22240K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "month" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "mois" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "mese" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "bulan" } ] } } ], "Z8K2": "Z6091", "Z8K3": [ "Z20", "Z22241", "Z22243", "Z22244" ], "Z8K4": [ "Z14", "Z22242", "Z22256", "Z26525", "Z34852" ], "Z8K5": "Z22240" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Gregorian calendar month to Wikidata reference" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "mois calendaire grégorien vers référence Wikidata" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "mese gregoriano in riferimento Wikidata" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "bulan kalender Gregorius ke referensi Wikidata" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "Gregorian calendar month to Wikidata item", "month to item", "month to wikidata item", "Wikidata item of month", "wikidata item from month" ] }, { "Z1K1": "Z31", "Z31K1": "Z1787", "Z31K2": [ "Z6", "elemento Wikidata da mese gregoriano", "riferimento Wikidata da mese gregoriano", "riferimento a elemento Wikidata corrispondente a mese gregoriano" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "pour un mois calendaire grégorien donné, renvoie son identifiant d'élément Wikidata" } ] } } tlwvr3ogxs3g6xejfsyqu2oi1lue0j9 Talk:Z22155 1 55590 272583 183621 2026-05-06T02:03:55Z YoshiRulz 10156 Add to category 272583 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] {{FOTW|link=Wikifunctions:Status_updates/2025-02-13#In_lieu_of_the_Function_of_the_Week:_Schrödinger_Model_sub_shell_configuration|date=2025-02-13}} p2rrut5heb6iuwsuk6o12o091stdaqt Z26690 0 61856 272542 272040 2026-05-05T22:37:34Z YoshiRulz 10156 Simplify 272542 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z26690" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z21534", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z19682", "Z19682K1": { "Z1K1": "Z7", "Z7K1": "Z21071", "Z21071K1": { "Z1K1": "Z18", "Z18K1": "Z21534K1" } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "trunc float64 to Integer, composition via rational" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } t43xkgcpnysvwds84xxjh8tf071j72j Z28420 0 65911 272536 219677 2026-05-05T22:17:09Z YoshiRulz 10156 Disambiguate en label 272536 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z28420" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z16683", "Z17K2": "Z28420K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "integer" } ] } } ], "Z8K2": "Z13518", "Z8K3": [ "Z20", "Z28421" ], "Z8K4": [ "Z14" ], "Z8K5": "Z28420" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "empty (Integer to Natural)" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 67oqbmsy1llcpnbdp21a2n1h8edc3w6 Z28951 0 67251 272510 224590 2026-05-05T20:36:14Z YoshiRulz 10156 Throw for Inf/NaN 272510 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z28951" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z21071", "Z14K3": { "Z1K1": "Z16", "Z16K1": "Z600", "Z16K2": "function Z21071( Z21071K1 ) {\n\tif (!Number.isFinite(Z21071K1)) return Wikifunctions.Error(\"Z516\", [ \"Z21071K1\", Z21071K1 ]);\n\tvar positive;\n\tvar sign;\n\tif ((Z21071K1 \u003C 0)||(Object.is(Z21071K1,-0))) {\n\t\tpositive = false;\n\t\tsign=-1n;\n\t} else {\n\t\tpositive = true;\n\t\tsign=1n;\n\t}\n\tconst absval = positive ? Z21071K1 : -Z21071K1;\n\tconst buffer = new ArrayBuffer(8);\n\tconst view = new DataView(buffer);\n\tview.setFloat64(0, absval, false);\n\tconst i = view.getBigUint64(0, false);\n\tconst exponent = (i \u003E\u003E 52n) - 1023n;\n\tconst mantisse = i % (2n**52n);\n\tif (exponent == -1023n) {\n\t\treturn {\n\t\t\tK1: BigInt(sign*mantisse),\n\t\t\tK2: BigInt(2n**1074n)\n\t\t};\n\t} else {\n\t\treturn {\n\t\t\tK1: BigInt(sign*(mantisse+2n**52n)*2n**1022n),\n\t\t\tK2: BigInt(2n**(52n-exponent+1022n))\n\t\t};\n\t}\n\n}" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "float as rational, JS bits" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } q387di0dh4mj0r0nc70as0fl1uceh4q User:Xeroctic/Reserved ZIDs 2 67608 272633 264972 2026-05-06T09:32:19Z Xeroctic 8849 272633 wikitext text/x-wiki This page's contents have now been incorporated into [[Wikifunctions:Reserved ZIDs]], but I am keeping this page for attribution/page history purposes. ---- Copy of [[Wikifunctions:Reserved ZIDs]] for a major update. Other users can edit this draft as well. ---- <noinclude>{{Technical documentation navbox}}</noinclude> : ''<translate><!--T:1--> The wiki of functions currently loads a few '''static ZObjects on setup'''. We will over time need a few more of these.</translate>'' <translate> <!--T:2--> This page is about the fun bike-shedding discussion of how many ZIDs we should reserve, whether they have to be contiguous, and what these first ZIDs should be. This can also be a place for planting easter eggs, a feature that has proven rather popular in Wikidata. <!--T:3--> Note that, in order to simplify the discussion, we currently do not think about the future possibility of having federated instances of the software running the wiki of functions, and how that will work. We are solely thinking about which ZIDs for the wiki of functions itself should be reserved. == Should the reserved ZIDs be contiguous? == <!--T:4--> <!--T:61--> Yes. <!--T:54--> There is a certain simplicity in saying “all ZIDs with 4 digits or less are reserved”. <!--T:5--> There is also the hybrid model of reserving all ZIDs below a certain number, and additionally reserving some bigger ZIDs for easter eggs or specific reasons (that's what Wikidata did). == How many ZIDs should we reserve? == <!--T:6--> <!--T:55--> Let's reserve all ZIDs with four digits or less. <!--T:7--> All core objects would be in the ZIDs with three digits and fewer, and we keep the four-digit ZIDs for languages. <!--T:8--> This follows roughly the proposals made by community members on the talk page and on Phabricator. In particular, we also won't pack the space. == Currently reserved ZIDs == <!--T:9--> </translate> {{Phabricator|T258914}} {{Notice|1=<translate><!--T:56--> The following is subject to change and open to discussion. Some explanation following to maybe help with remembering (although it shouldn't be necessary to learn them).</translate>}} <translate> <!--T:214--> See [[Wikifunctions:Reserved ZIDs/all]] for a list of currently pre-defined objects. === Ranges === <!--T:62--> <!--T:10--> We reserve certain spaces for certain kinds of pre-defined objects. </translate> <div style="margin:.3em 0; border:1px solid #AAA; padding:.3em .5em;"><div style="margin-top:-.3em"> * <code>Z1</code> – <code>Z99</code>: <translate><!--T:63--> core types.</translate> ''<translate><!--T:64--> (See [[<tvar name="a">#core-types</tvar>|§ Core types]] below.)</translate>'' * <code>Z100</code> – <code>Z199</code>: <translate><!--T:65--> validators for the core types (''i.e.'' for each core type, +100 gives the validator), ''e.g.'' Z104 is the validator for Z4/Type</translate> * <code>Z200</code> – <code>Z299</code>: <translate><!--T:66--> built-in implementations for the validators for the core types (''i.e.'' Z204 is the built-in implementation for the validator for Z4/Type)</translate> * <code>Z300</code> – <code>Z399</code>: ''<translate><!--T:67--> unassigned for now</translate>'' * <code>Z400</code> – <code>Z499</code>: ''<translate><!--T:68--> reserved for local use</translate>'' * <code>Z500</code> – <code>Z599</code>: <translate><!--T:69--> core error types (<code>Z5xx</code> because <code>Z5</code> is error)</translate> ''<translate><!--T:70--> (See [[<tvar name="a">#core-error-types</tvar>|§ Core error types]] below.)</translate>'' * <code>Z600</code> – <code>Z699</code>: <translate><!--T:131--> core programming languages (<code>Z6xx</code> because <code>Z61</code> is programming language)</translate> * <code>Z700</code> – <code>Z799</code>: ''<translate><!--T:71--> unassigned for now</translate>'' * <code>Z800</code> – <code>Z899</code>: <translate><!--T:72--> definitions of core functions with built-ins (<code>Z8xx</code> because <code>Z8</code> is function)</translate> ''<translate><!--T:73--> (See [[<tvar name="a">#core-functions</tvar>|§ Core functions]] below.)</translate>'' * <code>Z900</code> – <code>Z999</code>: <translate><!--T:74--> built-ins for the core functions (they are +100 from the respective Z8xx)</translate> * <code>Z1000</code> – <code>Z2999</code>: <translate><!--T:75--> natural languages (instances of Z60)</translate> * <code>Z3000</code> – <code>Z5999</code>: ''<translate><!--T:149--> reserved for future use</translate>'' * <code>Z6000</code> – <code>Z6999</code>: <translate><!--T:215--> ''types, functions, ''etc.'' for using content from Wikidata and other Wikimedia sources''</translate> ** <code>Z6000</code> – <code>Z6099</code>: ''<translate><!--T:216--> types for content from Wikidata and other Wikimedia sources</translate>'' ''(See [[#wikidata-types|§ Wikidata types]] below.)'' ** <code>Z6100</code> – <code>Z6199</code>: ''<translate><!--T:217--> validators for these types</translate>'' ** <code>Z6200</code> – <code>Z6299</code>: ''<translate><!--T:218--> built-in implementations of the validators</translate>'' ** <code>Z6800</code> – <code>Z6899</code>: ''<translate><!--T:219--> helper functions for these types that need to be built-in (e.g., fetching, equality)</translate>'' ''(See [[#wikidata-functions|§ Wikidata functions]] below.)'' ** <code>Z6900</code> – <code>Z6999</code>: ''<translate><!--T:220--> built-in implementations of the helper functions</translate>'' * <code>Z7000</code> – <code>Z7999</code>: ''<translate><!--T:185--> reserved for future use</translate>'' * <code>Z8000</code> – <code>Z8999</code>: <translate><!--T:172--> Testers for each pre-defined function (''e.g.'' Z801 is tested via Z8010, Z8011, Z8012, … Z8019).</translate> * <code>Z9000</code> – <code>Z9999</code>: ''<translate><!--T:173--> reserved for future use</translate>'' </div></div> {{Anchor|core-types}} <translate> === Core types === <!--T:76--> </translate> <div style="margin:.3em 0; border:1px solid #AAA; padding:.3em .5em;"><div style="margin-top:-.3em"> * <code>Z1</code>: <translate><!--T:11--> {{Z|Z1}} (Type), the root.</translate> * <code>Z2</code>: <translate><!--T:12--> {{Z|Z2}} (Type): everything on the wiki is a <tvar name="Z"><code>Z2</code></tvar>, that's why this has such a low ZID.</translate> * <code>Z3</code>: <translate><!--T:13--> {{Z|Z3}} (Type): because the word <tvar name="key"><bdi lang="en" dir="ltr">''key''</bdi></tvar> has three letters in English.</translate> * <code>Z4</code>: <translate><!--T:14--> {{Z|Z4}} (Type): because the word <tvar name="type"><bdi lang="en" dir="ltr">''type''</bdi></tvar> has four letters in English.</translate> * <code>Z5</code>: <translate><!--T:15--> {{Z|Z5}} (Type): because the word <tvar name="error"><bdi lang="en" dir="ltr">''error''</bdi></tvar> has five letters in English.</translate> ''<translate><!--T:77--> (See [[<tvar name="a">#core-error-types</tvar>|§ Core error types]] below.)</translate>'' * <code>Z6</code>: <translate><!--T:16--> {{Z|Z6}} (Type): because the word <tvar name="string"><bdi lang="en" dir="ltr">''string''</bdi></tvar> has six letters in English.</translate> * <code>Z7</code>: <translate><!--T:17--> {{Z|Z7}} (Type): because function calls are the main magic of the system, and 7 is a magic number. It is also close to <tvar name="Z"><code>Z8</code></tvar>.</translate> * <code>Z8</code>: <translate><!--T:18--> {{Z|Z8}} (generic type, thus technically a function): because <tvar name="function"><bdi lang="en" dir="ltr">''function''</bdi></tvar> has eight letters in English.</translate> ''<translate><!--T:78--> (See [[<tvar name="a">#core-functions</tvar>|§ Core functions]] below.)</translate>'' * <code>Z9</code>: <translate><!--T:19--> {{Z|Z9}} (Type): because the word <tvar name="reference"><bdi lang="en" dir="ltr">''reference''</bdi></tvar> has nine letters in English.</translate> * <code>Z10</code>: {{Tunit|151|''Not yet assigned.''}} * <code>Z11</code>: <translate><!--T:21--> {{Z|Z11}} (Type): because it is just one language, and there's a ''one'' in the name.</translate> * <code>Z12</code>: <translate><!--T:22--> {{Z|Z12}} (Type): because it's an extension of <tvar name="Z"><code>Z11</code></tvar>.</translate> * <code>Z13</code>: {{Tunit|151|''Not yet assigned.''}} * <code>Z14</code>: <translate><!--T:23--> {{Z|Z14}} (Type): because the word <tvar name="implementation"><bdi lang="en" dir="ltr">''implementation''</bdi></tvar> has fourteen letters in English.</translate> * <code>Z15</code>: <translate><!--T:151--> ''Not yet assigned.''</translate> * <code>Z16</code>: <translate><!--T:80--> {{Z|Z16}} (Type): no good reason, it's close to Z14, and Z61/Programming language.</translate> * <code>Z17</code>: <translate><!--T:81--> {{Z|Z17}} (Type).</translate> * <code>Z18</code>: <translate><!--T:82--> {{Z|Z18}} (Type).</translate> * <code>Z19</code>: {{Tunit|151|''Not yet assigned.''}} * <code>Z20</code>: <translate><!--T:25--> {{Z|Z20}} (Type): because 20/20 is perfect vision, and tests make errors visible.</translate> * <code>Z21</code>: <translate><!--T:83--> {{Z|Z21}} (Type).</translate> * <code>Z22</code>: <translate><!--T:26--> {{Z|Z22}} (Type).</translate> * <code>Z23</code>: <translate><!--T:84--> {{Z|Z23}} (Type).</translate> * <code>Z24</code>: <translate><!--T:132--> {{Z|Z24}} (Unit).</translate> * <code>Z25</code>: {{Tunit|151|''Not yet assigned.''}} * <code>Z26</code>: {{Tunit|151|''Not yet assigned.''}} * <code>Z27</code>: {{Tunit|151|''Not yet assigned.''}} * <code>Z28</code>: {{Tunit|151|''Not yet assigned.''}} * <code>Z29</code>: {{Tunit|151|''Not yet assigned.''}} * <code>Z30</code>: {{Tunit|151|''Not yet assigned.''}} * <code>Z31</code>: <translate><!--T:133--> {{Z|Z31}} (Type).</translate> * <code>Z32</code>: <translate><!--T:134--> {{Z|Z32}} (Type): because it's an extension of <tvar name="Z"><code>Z31</code></tvar>.</translate> * <code>Z33</code>: {{Tunit|151|''Not yet assigned.''}} * <code>Z34</code>: {{Tunit|151|''Not yet assigned.''}} * <code>Z35</code>: {{Tunit|151|''Not yet assigned.''}} * <code>Z36</code>: {{Tunit|151|''Not yet assigned.''}} * <code>Z37</code>: {{Tunit|151|''Not yet assigned.''}} * <code>Z38</code>: {{Tunit|151|''Not yet assigned.''}} * <code>Z39</code>: <translate><!--T:85--> {{Z|Z39}} (Type): because Z3/Key Z9/Reference.</translate> * <code>Z40</code>: <translate><!--T:86--> {{Z|Z40}} (Type): because Boole first published in (18)40.</translate> * <code>Z41</code>: <translate><!--T:87--> {{Z|Z41}} (Boolean).</translate> * <code>Z42</code>: <translate><!--T:88--> {{Z|Z42}} (Boolean).</translate> * <code>Z43</code>: {{Tunit|151|''Not yet assigned.''}} * <code>Z44</code>: {{Tunit|151|''Not yet assigned.''}} * <code>Z45</code>: {{Tunit|151|''Not yet assigned.''}} * <code>Z46</code>: {{Z|Z46}} (Type): because it converts a Z4/Type into code in a Z61/Programming language. * <code>Z47</code>: {{Tunit|151|''Not yet assigned.''}} * <code>Z48</code>: {{Tunit|151|''Not yet assigned.''}} * <code>Z49</code>: {{Tunit|151|''Not yet assigned.''}} * <code>Z50</code>: <translate><!--T:24--> {{Z|Z50}} (Type): because Error is <tvar name="Z"><code>Z5</code></tvar>.</translate> <!--<nowiki> * <code>Z51</code>: <translate>'''…''' (Type).</translate> … * <code>Z59</code>: <translate>'''…''' (Type).</translate> </nowiki>--> * <code>Z60</code>: <translate><!--T:89--> {{Z|Z60}} (Type): because <code>Z6</code> is a string.</translate> * <code>Z61</code>: <translate><!--T:90--> {{Z|Z61}} (Type): because <code>Z16</code> is code.</translate> * <code>Z64</code>: {{Z|Z64}}: because it is the inverse of <code>Z46</code>. <!--<nowiki> * <code>Z62</code>: <translate>'''…''' (Type).</translate> … * <code>Z79</code>: <translate>'''…''' (Type).</translate> </nowiki>--> * <code>Z80</code>: <translate><!--T:92--> {{Z|Z80}} (Type): because it is an octet.</translate> <!--<nowiki> * <code>Z81</code>: <translate>'''…''' (Type).</translate> … * <code>Z69</code>: <translate>'''…''' (Type).</translate> </nowiki>--> * <code>Z84</code>: {{Tunit|151|''Not yet assigned.''}} * <code>Z85</code>: {{Tunit|151|''Not yet assigned.''}} * <code>Z86</code>: <translate><!--T:93--> {{Z|Z86}} (Type): because it is not exactly a Z80/Byte, but more like Z6/String.</translate> <!--<nowiki> * <code>Z87</code>: <translate>'''…''' (Type).</translate> * <code>Z88</code>: <translate>'''…''' (Type).</translate> </nowiki> --> * <code>Z89</code>: <translate>{{Z|Z89}} (Type)</translate> * <code>Z99</code>: <translate><!--T:30--> {{Z|Z99}} (Type): because it looks a bit like a closing quotation mark in English.</translate> </div></div> {{Anchor|wikidata-types}} <translate> ==== Wikidata types ==== <div style="margin:.3em 0; border:1px solid #AAA; padding:.3em .5em;"><div style="margin-top:-.3em"> *<code>Z6001</code> {{Z|Z6001}} (Type) *<code>Z6002</code> {{Z|Z6002}} (Type) *<code>Z6003</code> {{Z|Z6003}} (Type) *<code>Z6004</code> {{Z|Z6004}} (Type) *<code>Z6005</code> {{Z|Z6005}} (Type) *<code>Z6006</code> {{Z|Z6006}} (Type) *<code>Z6007</code> {{Z|Z6007}} (Type) *<code>Z6008</code> {{Z|Z6008}} (Type) *<code>Z6010</code> {{Z|Z6010}} (Type) *<code>Z6011</code> {{Z|Z6011}} (Type) *<code>Z6020</code> {{Z|Z6020}} (Type) *<code>Z6021</code> {{Z|Z6021}} (Claim subtype) *<code>Z6022</code> {{Z|Z6022}} (Claim subtype) *<code>Z6023</code> {{Z|Z6023}} (Claim subtype) *<code>Z6030</code> {{Z|Z6030}} (Type) *<code>Z6031</code> {{Z|Z6031}} (Entity part) *<code>Z6032</code> {{Z|Z6032}} (Entity part) *<code>Z6033</code> {{Z|Z6033}} (Entity part) *<code>Z6034</code> {{Z|Z6034}} (Entity part) *<code>Z6035</code> {{Z|Z6035}} (Entity part) *<code>Z6036</code> {{Z|Z6036}} (Entity part) *<code>Z6037</code> {{Z|Z6037}} (Entity part) *<code>Z6038</code> {{Z|Z6038}} (Entity part) *<code>Z6040</code> {{Z|Z6040}} (Type) *<code>Z6041</code> {{Z|Z6041}} (Statement rank) *<code>Z6042</code> {{Z|Z6042}} (Statement rank) *<code>Z6043</code> {{Z|Z6043}} (Statement rank) *<code>Z6060</code> {{Z|Z6060}} (Type) *<code>Z6061</code> {{Z|Z6061}} (Type) *<code>Z6062</code> {{Z|Z6062}} (Type) *<code>Z6063</code> {{Z|Z6063}} (Type) *<code>Z6064</code> {{Z|Z6064}} (Type) *<code>Z6091</code> {{Z|Z6091}} (Type) *<code>Z6092</code> {{Z|Z6092}} (Type) *<code>Z6094</code> {{Z|Z6094}} (Type) *<code>Z6095</code> {{Z|Z6095}} (Type) *<code>Z6096</code> {{Z|Z6096}} (Type) </div></div> {{Anchor|core-functions}} === Core functions === <!--T:94--> </translate> <div style="margin:.3em 0; border:1px solid #AAA; padding:.3em .5em;"><div style="margin-top:-.3em"> * <code>Z801</code> {{Z+|Z801}}: T ➝ T * <code>Z802</code> {{Z+|Z802}}: Boolean, T, T ➝ T * <code>Z803</code> {{Z+|Z803}}: Key reference, Any ➝ Any *: <translate><!--T:96--> Z3/Key</translate> * <code>Z804</code> {{Z+|Z804}}: List(Key reference) ➝ Abt * <code>Z805</code> {{Z+|Z805}}: Any ➝ List(Pair(Key reference, Any)) *: <translate><!--T:41--> Reify has five letters</translate> * <code>Z808</code> {{Z+|Z808}}: List(Pair(Key reference, Any)) ➝ Any *: <translate><!--T:42--> Abstract has eight letters.</translate> * <code>Z810</code> {{Z+|Z810}}: T, List(T) ➝ List(T) *: <translate><!--T:46--> (because Z10 is list).</translate> * <code>Z811</code> {{Z+|Z811}}: List(T) ➝ T *: <translate><!--T:43--> (because Z10 was going to be list and we get the first)</translate> * <code>Z812</code> {{Z+|Z812}}: List(T) ➝ List(T) *: <translate><!--T:44--> (because Z10 was going to be list and we get the second, the rest)</translate> * <code>Z813</code> {{Z+|Z813}}: List(T) ➝ Boolean *: <translate><!--T:45--> (because Z13 was planned to be empty list).</translate> * <code>Z820</code> {{Z+|Z820}}: String, Any ➝ Any * <code>Z821</code> {{Z+|Z821}}: Pair(T1, T2) ➝ T1 *: <translate><!--T:47--> (because Z22 is pair).</translate> * <code>Z822</code> {{Z+|Z822}}: Pair(T1, T2) ➝ T2 *: <translate><!--T:48--> (because Z22 is pair).</translate> * <code>Z844</code> {{Z+|Z844}}: Boolean, Boolean ➝ Boolean * <code>Z850</code> {{Z+|Z850}}: Object, Error type, Object ➝ Object *: (because it deals with Z5/Errors) * <code>Z851</code> {{Z+|Z851}}: Error type, List(T) ➝ Unit * <code>Z852</code> {{Z+|Z852}}: Error, Error type ➝ Boolean * <code>Z853</code> {{Z+|Z853}}: Object ➝ Pair(Error, Object) * <code>Z854</code> {{Z+|Z854}}: Object ➝ String * <code>Z860</code> {{Z+|Z860}}: String ➝ Language * <code>Z866</code> {{Z+|Z866}}: String, String ➝ Boolean * <code>Z868</code> Replaced by {{Z+|Z22717}}: String ➝ List(Character) *: <translate><!--T:49--> Because Z6/String and Z86/Character.</translate> * <code>Z873</code> {{Z+|Z873}} Function, List ➝ List * <code>Z876</code> {{Z+|Z876}}: Function, List, Object ➝ Object * <code>Z877</code> {{Z+|Z877}}: HTML fragment -> HTML fragment * <code>Z881</code> {{Z+|Z881}}: Type ➝ Type * <code>Z882</code> {{Z+|Z882}}: Type, Type ➝ Type * <code>Z883</code> {{Z+|Z883}}: T ➝ T * <code>Z884</code> {{Z+|Z884}}: Type, List(Reference), String ➝ Type * <code>Z885</code> {{Z+|Z885}}: Error type ➝ Type * <code>Z886</code> Replaced by {{Z+|Z22693}}: List*(Character) ➝ String *: <translate><!--T:50--> because Z86/Character and Z6/String.</translate> * <code>Z888</code> Replaced by {{Z+|Z22683}}: Character, Character ➝ Boolean * <code>Z899</code> {{Z+|Z899}}: Quote ➝ Any *: <translate><!--T:97--> because Z99/Quote.</translate> </div></div> {{Anchor|wikidata-functions}} <translate> ==== Wikidata functions ==== <div style="margin:.3em 0; border:1px solid #AAA; padding:.3em .5em;"><div style="margin-top:-.3em"> *<code>Z6801</code> to <code>Z6808</code> are the 'same object' functions corresponding to <code>Z6001</code> to <code>Z6008</code>. *<code>Z6820</code> {{Z+|Z6820}}: List(Object) ➝ Map(String, Object) *<code>Z6821</code> {{Z+|Z6821}}: Item reference ➝ Item *<code>Z6822</code> {{Z+|Z6822}}: Property reference ➝ Property *<code>Z6824</code> {{Z+|Z6824}}: Lexeme form reference ➝ Lexeme form *<code>Z6825</code> {{Z+|Z6825}}: Lexeme reference ➝ Lexeme *<code>Z6826</code> {{Z+|Z6826}}: Lexeme sense reference ➝ Lexeme sense *<code>Z6830</code> {{Z+|Z6830}}: Item reference, Property reference, Natural language ➝ List(Lexeme reference) *<code>Z6831</code> {{Z+|Z6831}}: Lexeme sense reference, Property reference, Natural language ➝ List(Lexeme reference) *<code>Z6884</code> {{Z+|Z6884}}: Type, List(Object), String ➝ Type *<code>Z6894</code> {{Z+|Z6894}} *<code>Z6895</code> {{Z+|Z6895}}: Object ➝ Object *<code>Z6896</code> {{Z+|Z6896}}: List(String) ➝ Object </div></div> {{Anchor|core-error-types}} === Core error types === <!--T:98--> </translate> <div style="margin:.3em 0; border:1px solid #AAA; padding:.3em .5em;"><div style="margin-top:-.3em"> * <translate><!--T:103--> {{Z|Z501}} (error message, input): syntax error</translate> * <translate><!--T:104--> {{Z|Z502}} (subtype, value): not wellformed, points to Z52x or Z53x</translate> * <translate><!--T:105--> {{Z|Z503}} (function name): not implemented yet</translate> * <translate><!--T:106--> {{Z|Z504}} (zid): Zid not found</translate> * <translate><!--T:107--> {{Z|Z505}} (expected, actual, args): number of arguments mismatch</translate> * <translate><!--T:108--> {{Z|Z506}} (expected, actual, arg): argument type mismatches</translate> * <translate><!--T:109--> {{Z|Z507}} (function call): error in evaluation</translate> * <translate><!--T:110--> {{Z|Z508}} (object): competing keys</translate> * <translate><!--T:198--> {{Z|Z509}} (errors): List of errors</translate> * <translate><!--T:111--> {{Z|Z510}} (none): nil</translate> * <translate><!--T:112--> {{Z|Z511}} (key reference, object): key not found</translate> * <translate><!--T:113--> {{Z|Z512}} (object): Z9 error</translate> * <translate><!--T:114--> {{Z|Z513}} (resolved object): resolved object without Z2K2</translate> * <translate><!--T:115--> {{Z|Z514}} (implementation): Builtin does not exist</translate> * <translate><!--T:116--> {{Z|Z515}} (implementation): Builtin ID is erroneous</translate> * <translate><!--T:117--> {{Z|Z516}} (key, bad value): Argument value error</translate> * <translate><!--T:199--> {{Z|Z517}} (expected type, actual type, returned value, propagated error): Return type mismatch</translate> * <translate><!--T:200--> {{Z|Z518}} (expected type, object, propagated error): Object type mismatch</translate> * <translate><!--T:211--> {{Z|Z519}} (object): Undefined list type</translate> * <translate><!--T:212--> {{Z|Z520}} (object): Wrong list type</translate> * <translate><!--T:118--> {{Z|Z521}} (offending value): ZObjects must not be number or boolean or null</translate> * <translate><!--T:119--> {{Z|Z522}} (offending index in array, propagated error): Array element not well formed</translate> * <translate><!--T:120--> {{Z|Z523}} (object): Missing Z1K1</translate> * <translate><!--T:121--> {{Z|Z524}} (value of Z1K1): Z1K1 must not be a string or array</translate> * <translate><!--T:122--> {{Z|Z525}} (key): Invalid key</translate> * <translate><!--T:123--> {{Z|Z526}} (key, propagated error): not wellformed value</translate>] * {{Z|Z529}} (host name) * {{Z|Z530}} (function call, propagated error) * <translate><!--T:124--> {{Z|Z531}} (whole object): Z6 must have 2 keys</translate> * <translate><!--T:125--> {{Z|Z532}} (whole object): Z6 without a Z6K1</translate> * <translate><!--T:126--> {{Z|Z533}} (value of Z6K1): Z6K1 must be a string</translate> * <translate><!--T:127--> {{Z|Z534}} (whole object): Z9 must have 2 keys</translate> * <translate><!--T:128--> {{Z|Z535}} (whole object): Z9 without a Z9K1</translate> * <translate><!--T:129--> {{Z|Z536}} (value of Z9K1): Z9K1 must be a string in JSON</translate> * <translate><!--T:130--> {{Z|Z537}} (value of Z9K1): Z9K1 must look like a reference</translate> * <translate><!--T:135--> {{Z|Z538}} (page title): wrong namespace</translate> * <translate><!--T:136--> {{Z|Z539}} (page title): wrong content type</translate> * <translate><!--T:137--> {{Z|Z540}} (language code): invalid language code</translate> * <translate><!--T:138--> {{Z|Z541}} (language code): language code not found</translate> * <translate><!--T:139--> {{Z|Z542}} (expected type, actual object): expected type, actual object</translate> * <translate><!--T:140--> {{Z|Z543}} (type name): type not found</translate> * <translate><!--T:141--> {{Z|Z544}} (type zid, type name, existing type name): conflicting type names</translate> * <translate><!--T:142--> {{Z|Z545}} (type zid, type name, existing type zid): conflicting type Zids</translate> * <translate><!--T:143--> {{Z|Z546}} (type zid, type name): builtin type not found</translate> * <translate><!--T:144--> {{Z|Z547}} (input): invalid format</translate> * <translate><!--T:145--> {{Z|Z548}} (error message, input): invalid JSON</translate> * <translate><!--T:146--> {{Z|Z549}} (reference value): invalid ZReference</translate> * <translate><!--T:147--> {{Z|Z550}} (reference value): unknown ZReference</translate> * <translate><!--T:148--> {{Z|Z551}} (key, expected type, actual type): schema type mismatch</translate> * {{Z|Z552}} <translate><!--T:186--> (index, expected type, actual type): array element type mismatch</translate> * {{Z|Z553}} <translate><!--T:187--> (zobject): disallowed root type</translate> * {{Z|Z554}} <translate><!--T:188--> (clashing ZID, language): label clashes with another ZObject's label</translate> * {{Z|Z555}} <translate><!--T:189--> (ZID, title): mis-matched ZID and page title</translate> * {{Z|Z556}} <translate><!--T:190--> (title): invalid page title</translate> * {{Z|Z557}} <translate><!--T:191--> (error message): user does not have permission</translate> * {{Z|Z558}} <translate><!--T:192--> (programming language): invalid programming language</translate> * {{Z|Z559}} <translate><!--T:201--> (none): user not permitted to evaluate function</translate> * {{Z|Z560}} <translate><!--T:202--> (evaluation result): invalid evaluation result</translate> * {{Z|Z561}} <translate><!--T:203--> (propagated error): invalid evaluation request</translate> * {{Z|Z562}} <translate><!--T:204--> (missing property): incomplete evaluation request</translate> * {{Z|Z563}} <translate><!--T:205--> (call): call by non-reentrant executor</translate> * {{Z|Z564}} <translate><!--T:206--> (contents): invalid executor response</translate> * {{Z|Z565}} <translate><!--T:213--> (missing property): Incomplete executor request</translate> * {{Z|Z570}} <translate><!--T:196--> (orchestrator rate limit): reached rate limit in orchestrator</translate> * {{Z|Z571}} <translate><!--T:197--> (evaluator rate limit): reached rate limit in evaluator</translate> * {{Z|Z572}} <translate><!--T:207--> (recursion limit, function name): reached recursion limit in orchestrator</translate> * {{Z|Z573}} <translate><!--T:208--> (recursion limit, function name): reached recursion limit in evaluator</translate> * {{Z|Z574}} <translate><!--T:209--> (time limit): reached time limit in orchestrator</translate> * {{Z|Z575}} <translate><!--T:210--> (time limit): reached time limit in evaluator</translate> * {{Z|Z576}} (time limit) * {{Z|Z580}} (duplicate language) </div></div> <translate> == See also == <!--T:59--> </translate> * <translate><!--T:60--> [[<tvar name="notes">:m:Special:MyLanguage/Abstract Wikipedia/Notes</tvar>|Overview of notes]]</translate> 1atvb1dts61jb3avj31m39yv0em2tya Z30035 0 69545 272480 232669 2026-05-05T17:00:57Z YoshiRulz 10156 Removed Z30036 from the approved list of implementations 272480 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z30035" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z30035K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "string" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z11", "Z17K2": "Z30035K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "text" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z30037", "Z30038" ], "Z8K4": [ "Z14" ], "Z8K5": "Z30035" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "prepend String to Monolingual text" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } fvnwl3pm1ni39z0df6l2gtbhl8p3q1d 272482 272480 2026-05-05T17:02:10Z YoshiRulz 10156 Added Z30036 to the approved list of implementations 272482 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z30035" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z30035K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "string" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z11", "Z17K2": "Z30035K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "text" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z30037", "Z30038" ], "Z8K4": [ "Z14", "Z30036" ], "Z8K5": "Z30035" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "prepend String to Monolingual text" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } cq8dhprsl7xwhq6toj5e6ecftq4z575 Z30036 0 69546 272481 232208 2026-05-05T17:02:05Z YoshiRulz 10156 Construct Z11 via function 272481 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z30036" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z30035", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z861", "Z861K1": { "Z1K1": "Z7", "Z7K1": "Z10000", "Z10000K1": { "Z1K1": "Z18", "Z18K1": "Z30035K1" }, "Z10000K2": { "Z1K1": "Z7", "Z7K1": "Z14396", "Z14396K1": { "Z1K1": "Z18", "Z18K1": "Z30035K2" } } }, "Z861K2": { "Z1K1": "Z7", "Z7K1": "Z14404", "Z14404K1": { "Z1K1": "Z18", "Z18K1": "Z30035K2" } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "prepend String to Monolingual text, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 4x0ptiv7w2rl729sksou0myzpjhxr17 User:YoshiRulz/Function documentation 2 71434 272429 269695 2026-05-05T13:45:45Z YoshiRulz 10156 Add params for the WD parts and predicates expected for Item/Lexeme inputs 272429 wikitext text/x-wiki <onlyinclude><includeonly>== Documentation == {| class="wikitable" | <div style="float: inline-end; text-align: end;"> layout: <!--{{#invoke:Navbar|navbar|User:YoshiRulz/Function documentation|mini=y}}--><small>[[User:YoshiRulz/Function documentation|V]]&middot;[[{{TALKPAGENAME:User:YoshiRulz/Function documentation}}|T]]&middot;[[Special:EditPage/User:YoshiRulz/Function documentation|E]]</small> <br>data: <!--{{#invoke:Navbar|navbar|{{TALKPAGENAME:{{{1|{{PAGENAME}}}}}}}|mini=y}}--><small>[[{{TALKPAGENAME:{{{1|{{PAGENAME}}}}}}}|V/T]]&middot;[[Special:EditPage/{{TALKPAGENAME:{{{1|{{PAGENAME}}}}}}}|E]]</small> </div> '''{{#wikifunctionlabeldesc:{{{1|{{PAGENAME}}}}}}}''' |- | {| <!-- -->{{#if:{{item linked to mainspace object|{{SUBJECTPAGENAME:{{{1|{{PAGENAME}}}}}}}}}|<nowiki/> {{!}}- ! style="text-align: start;" {{!}} Wikidata Item (sitelink) {{!}} {{item linked to mainspace object|{{SUBJECTPAGENAME:{{{1|{{PAGENAME}}}}}}}}} }}<!-- -->{{#if:{{{specific to language|}}}|<nowiki/> {{!}}- ! style="text-align: start;" {{!}} Specific to [[Z60|language]] {{!}} {{{specific to language}}} }}<!-- -->{{#if:{{{invariants for returned values|}}}|<nowiki/> {{!}}- ! style="text-align: start;" {{!}} Invariants satisfied by returned values {{!}} {{{invariants for returned values}}} }}<!-- -->{{#if:{{{invariants for input 1|}}}|<nowiki/> {{!}}- ! style="text-align: start;" {{!}} Invariants required for {{{1|{{PAGENAME}}}}}K1 {{!}} {{{invariants for input 1}}} }}<!-- -->{{#if:{{{entity parts for input 1|}}}|<nowiki/> {{!}}- ! style="text-align: start;" {{!}} Wikidata [[Z6030|entity parts]] and [[Z6092|predicates]] used from {{{1|{{PAGENAME}}}}}K1 {{!}} {{{entity parts for input 1}}} }}<!-- -->{{#if:{{{invariants for input 2|}}}|<nowiki/> {{!}}- ! style="text-align: start;" {{!}} Invariants required for {{{1|{{PAGENAME}}}}}K2 {{!}} {{{invariants for input 2}}} }}<!-- -->{{#if:{{{entity parts for input 2|}}}|<nowiki/> {{!}}- ! style="text-align: start;" {{!}} Wikidata [[Z6030|entity parts]] and [[Z6092|predicates]] used from {{{1|{{PAGENAME}}}}}K2 {{!}} {{{entity parts for input 2}}} }}<!-- -->{{#if:{{{invariants for input 3|}}}|<nowiki/> {{!}}- ! style="text-align: start;" {{!}} Invariants required for {{{1|{{PAGENAME}}}}}K {{!}} {{{invariants for input 3}}} }}<!-- -->{{#if:{{{entity parts for input 3|}}}|<nowiki/> {{!}}- ! style="text-align: start;" {{!}} Wikidata [[Z6030|entity parts]] and [[Z6092|predicates]] used from {{{1|{{PAGENAME}}}}}K {{!}} {{{entity parts for input 3}}} }}<!-- -->{{#if:{{{invariants for input 4|}}}|<nowiki/> {{!}}- ! style="text-align: start;" {{!}} Invariants required for {{{1|{{PAGENAME}}}}}K4 {{!}} {{{invariants for input 4}}} }}<!-- -->{{#if:{{{entity parts for input 4|}}}|<nowiki/> {{!}}- ! style="text-align: start;" {{!}} Wikidata [[Z6030|entity parts]] and [[Z6092|predicates]] used from {{{1|{{PAGENAME}}}}}K4 {{!}} {{{entity parts for input 4}}} }}<!-- -->{{#if:{{{invariants for input 5|}}}|<nowiki/> {{!}}- ! style="text-align: start;" {{!}} Invariants required for {{{1|{{PAGENAME}}}}}K5 {{!}} {{{invariants for input 5}}} }}<!-- -->{{#if:{{{entity parts for input 5|}}}|<nowiki/> {{!}}- ! style="text-align: start;" {{!}} Wikidata [[Z6030|entity parts]] and [[Z6092|predicates]] used from {{{1|{{PAGENAME}}}}}K5 {{!}} {{{entity parts for input 5}}} }}<!-- -->{{#if:{{{raises error types|}}}|<nowiki/> {{!}}- ! style="text-align: start;" {{!}} Raises [[Z50|Error types]] {{!}} {{{raises error types}}} }}<!-- -->{{#if:{{{non-throwing equivalent|}}}|<nowiki/> {{!}}- ! style="text-align: start;" {{!}} Non-throwing equivalent {{!}} {{{non-throwing equivalent}}} }}<!-- -->{{#if:{{{throwing equivalent|}}}|<nowiki/> {{!}}- ! style="text-align: start;" {{!}} Throwing equivalent {{!}} {{{throwing equivalent}}} }}<!-- -->{{#if:{{{equivalent functions on other data types|}}}|<nowiki/> {{!}}- ! style="text-align: start;" {{!}} Equivalent functions on other data types {{!}} {{{equivalent functions on other data types}}} }}<!-- -->{{#if:{{{is specialisation of|}}}|<nowiki/> {{!}}- ! style="text-align: start;" {{!}} Is specialisation / partial application of {{!}} {{{is specialisation of}}} }}<!-- -->{{#if:{{{is subroutine of|}}}|<nowiki/> {{!}}- ! style="text-align: start;" {{!}} Is subroutine of {{!}} {{{is subroutine of}}} }}<!-- -->{{#if:{{{is approximate inverse of|}}}|<nowiki/> {{!}}- ! style="text-align: start;" {{!}} Is (approximate) inverse of {{!}} {{{is approximate inverse of}}} }}<!-- -->{{#if:{{{negative function|}}}|<nowiki/> {{!}}- ! style="text-align: start;" {{!}} Complementary/negative function {{!}} {{{negative function}}} }}<!-- --> |} |} {{#ifexist:Help:{{{1|{{PAGENAME}}}}} |{{clear}}'''Explanations''' [<nowiki/>[[Special:MyLanguage/Help:{{{1|{{PAGENAME}}}}}|{{int:edit}}]]<nowiki/>] {{TNT|Help:{{{1|{{PAGENAME}}}}}|uselang={{USERLANGUAGE}}}} |<div dir="{{#dir}}">[<nowiki/><span class="plainlinks">[{{fullurl:Help:{{{1|{{PAGENAME}}}}}|action=edit&preload={{urlencode:User:YoshiRulz/Function documentation/help page template}}}} Create]</span> translatable long-form documentation to be included here<nowiki/>]</div> }} {{#ifeq:{{NAMESPACENUMBER}}|1|{{DEFAULTSORT:Talk:Z{{padleft:{{#invoke:String|sub|{{{1|{{PAGENAME}}}}}|2}}|5}}}}}}</includeonly></onlyinclude> {{documentation}} {{ {{FULLPAGENAME}}|Z811| |invariants for input 1={{Z+|Z23120}} |raises error types={{Z+|Z516}} |non-throwing equivalent={{Z|22839}} |equivalent functions on other data types= * {{Z|821}} * {{Z|10901}} |is specialisation of={{Z+|Z13397}} |negative function={{Z+|Z812}} }} {{ {{FULLPAGENAME}}|Z12203| |specific to language={{Z|1002}} |is subroutine of={{Z+|Z29851}} }} {{ {{FULLPAGENAME}}|Z32645| |specific to language={{Z|1002}} |entity parts for input 1= * {{Z|6033}}: {{Z|1002}} * {{Z|6035}}: {{Z|1002}} * {{Z|6036}}: {{P|31}} |is subroutine of={{Z+|Z33138}} }} lutfm2fh31s6vzamlh8cdxepeupjnbk User:YoshiRulz/Function documentation/doc 2 71485 272430 238426 2026-05-05T14:25:20Z YoshiRulz 10156 Document new entity parts params 272430 wikitext text/x-wiki Used on a Function's talk page to provide links to related Functions in a standard<!-- and translatable--> layout, and optionally including long-form documentation. Usage example: <syntaxhighlight lang="wikitext"> {{function documentation |invariants for input 1={{Z+|Z23120}} |raises error types={{Z+|Z516}} |non-throwing equivalent={{Z|22839}} |equivalent functions on other data types= * {{Z|821}} * {{Z|10901}} |is specialisation of={{Z+|Z13397}} |is approximate inverse of={{Z+|Z810}} |negative function={{Z+|Z812}} }} </syntaxhighlight> This and a couple other examples are shown rendered at the bottom of [[Template:Function_documentation#Documentation|the template page]]. Compare [[Special:EditPage/User:YoshiRulz/Function_documentation|their Wikitext source]]. == Parameters == All parameters are optional. Unless specified, all parameters are Wikitext, and you can pass a bullet-point list when this Function relates to multiple others in the same way. The template will display data in the below order regardless of the order arguments are given in. === <code>specific to language</code> === <syntaxhighlight lang="wikitext"> {{function documentation |specific to language={{Z|1002}} }} </syntaxhighlight> The value for this parameter should be a link to a persistent {{Z|60}}. Indicates that the {{Z|6}} or {{Z|11}} inputs and/or outputs of this Function only make sense in a particular language. This is typically also mentioned in Functions' labels. === <code>invariants for returned values</code> === <syntaxhighlight lang="wikitext"> {{function documentation |invariants for returned values={{Z+|Z23120}} }} </syntaxhighlight> The value for this parameter should be a link to a persistent {{Z|8}}: a 'predicate', which has a single input whose Type matches this Function's return Type, and returns a {{Z|40}}. The predicate should evaluate to {{Z|41}} for every possible value returned by this Function. (If multiple invariants are given, the returned values would pass them all.) Use this to express the [[d:Q360690|postconditions]] ([[d:Q385374|invariants]] of outputs, a.k.a. guarantees) of the Function in a symbolic and language-neutral way. <br>If this Function can throw, it's understood that the invariant doesn't apply to the {{Z|5}}. Use Test cases to document such edge cases. === <code>invariants for input 1</code> === <syntaxhighlight lang="wikitext"> {{function documentation |invariants for input 1={{Z+|Z23120}} }} </syntaxhighlight> The value for this parameter should be a link to a persistent {{Z|8}}: a 'predicate', which has a single input whose Type matches this Function's 1st input, and returns a {{Z|40}}. The predicate should evaluate to {{Z|41}} for every valid argument value. (If multiple invariants are given, an argument would be considered valid if it passes them all.) Use this to express the [[d:Q1413450|preconditions]] ([[d:Q385374|invariants]] of inputs, a.k.a. assumptions) of the Function in a symbolic and language-neutral way. <br>This doesn't specify the Function's behaviour in the case that an invalid value is passed&mdash;for example, the Function may raise an {{Z|516}}. Use Test cases to document that, or leave it as [[d:Q4318017|unspecified behaviour]]. <br>If this Function ''is'' a predicate, it should not declare itself as the invariant of its 1st input. ==== <code>invariants for input 2</code> ==== As <code>invariants for input 1</code>, but for the 2nd input. ==== <code>invariants for input 3</code> ==== As <code>invariants for input 1</code>, but for the 3rd input. ==== <code>invariants for input 4</code> ==== As <code>invariants for input 1</code>, but for the 4th input. ==== <code>invariants for input 5</code> ==== As <code>invariants for input 1</code>, but for the 5th input. More parameters could be added for the invariants of K6 and higher if the need arises. === <code>entity parts for input 1</code> === <syntaxhighlight lang="wikitext"> {{function documentation |entity parts for input 1= * {{Z|6033}}: * * {{Z|6035}}: {{Z|1360}} * {{Z|6036}}: {{P|31}} }} </syntaxhighlight> The value(s) for this parameter should be a link to a persistent {{Z|6030}}, optionally followed by a list of {{Z|60}} (for {{Z|6033}}, {{Z|6034}}, or {{Z|6035}}<!-- or sitelinks? -->) or {{Z|6092}} (for {{Z|6036}}). <br>If labels/descriptions in all languages are used, list a <code>*</code> character. If the trans-lingual label/aliases are used, list {{Z|1360}}.<!-- If the caller passes in the language for which labels/descriptions are taken, list the ID for that input: <syntaxhighlight lang="wikitext" inline>{{Z|6033}}: K2</syntaxhighlight>. -->If a language has no corresponding persistent {{Z|60}}, list the {{P|9753}} for it: <syntaxhighlight lang="wikitext" inline>{{Z|6033}}: <code>nl-x-Q2668371</code></syntaxhighlight>. Use this to express which part(s) of an Item (or Lexeme, etc.) the Function expects to be present, as used in [[Z30120]] and the various other selective fetching Functions. You don't need to include this in the case that a Function takes an Item ''reference'' and manages the fetching itself, but it's good to include it anyway so that humans can easily cross-check and fill in missing data on the Item. <br>This doesn't specify the Function's behaviour in the case that the passed Item doesn't have, for example, a label in the expected language or any statements with the given PID. The Function may raise an error or simply return an incorrect result. Consider adding Test cases to document what happens. ==== <code>entity parts for input 2</code> ==== As <code>entity parts for input 1</code>, but for the 2nd input. ==== <code>entity parts for input 3</code> ==== As <code>entity parts for input 1</code>, but for the 3rd input. ==== <code>entity parts for input 4</code> ==== As <code>entity parts for input 1</code>, but for the 4th input. ==== <code>entity parts for input 5</code> ==== As <code>entity parts for input 1</code>, but for the 5th input. More parameters could be added for the parts of K6 and higher if the need arises. === <code>raises error types</code> === <syntaxhighlight lang="wikitext"> {{function documentation |raises error types={{Z+|Z516}} }} </syntaxhighlight> The value for this parameter should be a link to a persistent {{Z|50}}. Indicates the types of {{Z|5}} that this Function can raise. You ''may'' include transitive Errors, that is, those raised by other Functions used in the Implementations of this one. === <code>non-throwing equivalent</code> === <syntaxhighlight lang="wikitext"> {{function documentation |non-throwing equivalent={{Z|22839}} }} </syntaxhighlight> The value for this parameter should be a link to a persistent {{Z|8}}. A Function with the same semantics as this one, but which doesn't raise an {{Z|5}} where this one does. It may take a fallback value as an extra input, or it may have a different return Type. === <code>throwing equivalent</code> === <syntaxhighlight lang="wikitext"> {{function documentation |throwing equivalent={{Z|811}} }} </syntaxhighlight> The value for this parameter should be a link to a persistent {{Z|8}}. A Function with the same semantics as this one, but which raises an {{Z|5}} where this one has some other failure mechanism (like a fallback value). It may have a different return Type due to Errors being out-of-band. === <code>equivalent functions on other data types</code> === <syntaxhighlight lang="wikitext"> {{function documentation |equivalent functions on other data types={{Z|10901}} }} </syntaxhighlight> The value for this parameter should be a link to a persistent {{Z|8}}. A Function with similar semantics to this one, but which uses a different Type for its input (and maybe output). === <code>is specialisation of</code> === <syntaxhighlight lang="wikitext"> {{function documentation |is specialisation of={{Z+|Z13397}} }} </syntaxhighlight> The value for this parameter should be a link to a persistent {{Z|8}}. A Function that's a generalisation of this one, that is, if you held some of its inputs constant then it could emulate this Function. === <code>is subroutine of</code> === <syntaxhighlight lang="wikitext"> {{function documentation |is subroutine of={{Z+|Z29851}} }} </syntaxhighlight> The value for this parameter should be a link to a persistent {{Z|8}}. For Functions that aren't expected to see much use outside an Implementation of another Function, this can point to that Function. === <code>is approximate inverse of</code> === <syntaxhighlight lang="wikitext"> {{function documentation |is approximate inverse of={{Z+|Z810}} }} </syntaxhighlight> The value for this parameter should be a link to a persistent {{Z|8}}. A Function whose return Type matches this Function's 1st input and vice-versa, performing the inverse operation. The Types may be slightly different, for example returning a {{Z|6091}} if this Function takes a {{Z|6001}}. === <code>negative function</code> === <syntaxhighlight lang="wikitext"> {{function documentation |negative function={{Z+|Z812}} }} </syntaxhighlight> The value for this parameter should be a link to a persistent {{Z|8}}. A Function with the same input(s) as this one, but which returns the "opposite" value. aqt5bg7uyg19nouzu1631izz1i5eiri User:YoshiRulz/Functions that are maybe done 2 73450 272557 272361 2026-05-06T01:00:18Z YoshiRulz 10156 Add Z34793 272557 wikitext text/x-wiki {{phab|T412955}} <br clear="all" /><hr> === {{Z|28217}} === tests timing out; connected impl. anyway * {{Z|28218}}&mdash;[https://www.wikifunctions.org/wiki/Z28787?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z28787%22%2C%22Z28787K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z13397%22%2C%22Z13397K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22978%22%2C%22Z22978K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z6821%22%2C%22Z6821K1%22%3A%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q19317%22%7D%7D%2C%22Z22978K2%22%3A%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P527%22%7D%7D%2C%22Z13397K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z28755%22%2C%22Z28755K1%22%3A%7B%22Z1K1%22%3A%22Z20159%22%2C%22Z20159K1%22%3A%7B%22Z1K1%22%3A%22Z17813%22%2C%22Z17813K1%22%3A%22Z17814%22%7D%2C%22Z20159K2%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%221966%22%7D%7D%2C%22Z28755K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z873%22%2C%22Z873K1%22%3A%22Z28773%22%2C%22Z873K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z873%22%2C%22Z873K1%22%3A%22Z19308%22%2C%22Z873K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z13464%22%2C%22Z13464K1%22%3A%22Z22839%22%2C%22Z13464K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z13464%22%2C%22Z13464K1%22%3A%22Z29694%22%2C%22Z13464K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30172%22%2C%22Z30172K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30248%22%2C%22Z30248K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22978%22%2C%22Z22978K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z6821%22%2C%22Z6821K1%22%3A%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q19317%22%7D%7D%2C%22Z22978K2%22%3A%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P527%22%7D%7D%2C%22Z30248K2%22%3A%5B%22Z6030%22%2C%7B%22Z1K1%22%3A%22Z6030%22%2C%22Z6030K1%22%3A%22Z6036%22%7D%5D%2C%22Z30248K3%22%3A%5B%22Z60%22%5D%2C%22Z30248K4%22%3A%5B%22Z6092%22%2C%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P585%22%7D%2C%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P1346%22%7D%5D%7D%7D%2C%22Z13464K3%22%3A%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P585%22%7D%7D%2C%22Z13464K3%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z23723%22%7D%7D%7D%7D%7D%7D%2C%22Z28787K2%22%3A%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P1346%22%7D%7D full call] ** [https://www.wikifunctions.org/wiki/Z28755?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z28755%22%2C%22Z28755K1%22%3A%7B%22Z1K1%22%3A%22Z20159%22%2C%22Z20159K1%22%3A%7B%22Z1K1%22%3A%22Z17813%22%2C%22Z17813K1%22%3A%22Z17814%22%7D%2C%22Z20159K2%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%221966%22%7D%7D%2C%22Z28755K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z873%22%2C%22Z873K1%22%3A%22Z28773%22%2C%22Z873K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z873%22%2C%22Z873K1%22%3A%22Z19308%22%2C%22Z873K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z13464%22%2C%22Z13464K1%22%3A%22Z22839%22%2C%22Z13464K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z13464%22%2C%22Z13464K1%22%3A%22Z29694%22%2C%22Z13464K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30172%22%2C%22Z30172K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30248%22%2C%22Z30248K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22978%22%2C%22Z22978K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z6821%22%2C%22Z6821K1%22%3A%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q19317%22%7D%7D%2C%22Z22978K2%22%3A%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P527%22%7D%7D%2C%22Z30248K2%22%3A%5B%22Z6030%22%2C%7B%22Z1K1%22%3A%22Z6030%22%2C%22Z6030K1%22%3A%22Z6036%22%7D%5D%2C%22Z30248K3%22%3A%5B%22Z60%22%5D%2C%22Z30248K4%22%3A%5B%22Z6092%22%2C%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P585%22%7D%2C%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P1346%22%7D%5D%7D%7D%2C%22Z13464K3%22%3A%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P585%22%7D%7D%2C%22Z13464K3%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z23723%22%7D%7D%7D%7D%7D index] *** [https://www.wikifunctions.org/wiki/Z13464?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z13464%22%2C%22Z13464K1%22%3A%22Z22839%22%2C%22Z13464K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z13464%22%2C%22Z13464K1%22%3A%22Z29694%22%2C%22Z13464K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30172%22%2C%22Z30172K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30248%22%2C%22Z30248K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22978%22%2C%22Z22978K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z6821%22%2C%22Z6821K1%22%3A%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q19317%22%7D%7D%2C%22Z22978K2%22%3A%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P527%22%7D%7D%2C%22Z30248K2%22%3A%5B%22Z6030%22%2C%7B%22Z1K1%22%3A%22Z6030%22%2C%22Z6030K1%22%3A%22Z6036%22%7D%5D%2C%22Z30248K3%22%3A%5B%22Z60%22%5D%2C%22Z30248K4%22%3A%5B%22Z6092%22%2C%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P585%22%7D%2C%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P1346%22%7D%5D%7D%7D%2C%22Z13464K3%22%3A%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P585%22%7D%7D%2C%22Z13464K3%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z23723%22%7D%7D singular P585s] **** [https://www.wikifunctions.org/wiki/Z30248?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30248%22%2C%22Z30248K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22978%22%2C%22Z22978K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z6821%22%2C%22Z6821K1%22%3A%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q19317%22%7D%7D%2C%22Z22978K2%22%3A%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P527%22%7D%7D%2C%22Z30248K2%22%3A%5B%22Z6030%22%2C%7B%22Z1K1%22%3A%22Z6030%22%2C%22Z6030K1%22%3A%22Z6036%22%7D%5D%2C%22Z30248K3%22%3A%5B%22Z60%22%5D%2C%22Z30248K4%22%3A%5B%22Z6092%22%2C%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P585%22%7D%2C%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P1346%22%7D%5D%7D items] * {{Z|31140}}&mdash;[https://www.wikifunctions.org/wiki/Z28787?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z28787%22%2C%22Z28787K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z13397%22%2C%22Z13397K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22978%22%2C%22Z22978K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z6821%22%2C%22Z6821K1%22%3A%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q1317446%22%7D%7D%2C%22Z22978K2%22%3A%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P527%22%7D%7D%2C%22Z13397K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z28755%22%2C%22Z28755K1%22%3A%7B%22Z1K1%22%3A%22Z20159%22%2C%22Z20159K1%22%3A%7B%22Z1K1%22%3A%22Z17813%22%2C%22Z17813K1%22%3A%22Z17814%22%7D%2C%22Z20159K2%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%221995%22%7D%7D%2C%22Z28755K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z873%22%2C%22Z873K1%22%3A%22Z28773%22%2C%22Z873K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z873%22%2C%22Z873K1%22%3A%22Z19308%22%2C%22Z873K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z13464%22%2C%22Z13464K1%22%3A%22Z22839%22%2C%22Z13464K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z13464%22%2C%22Z13464K1%22%3A%22Z29694%22%2C%22Z13464K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30172%22%2C%22Z30172K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30248%22%2C%22Z30248K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22978%22%2C%22Z22978K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z6821%22%2C%22Z6821K1%22%3A%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q1317446%22%7D%7D%2C%22Z22978K2%22%3A%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P527%22%7D%7D%2C%22Z30248K2%22%3A%5B%22Z6030%22%2C%7B%22Z1K1%22%3A%22Z6030%22%2C%22Z6030K1%22%3A%22Z6036%22%7D%5D%2C%22Z30248K3%22%3A%5B%22Z60%22%5D%2C%22Z30248K4%22%3A%5B%22Z6092%22%2C%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P585%22%7D%2C%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P1346%22%7D%5D%7D%7D%2C%22Z13464K3%22%3A%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P585%22%7D%7D%2C%22Z13464K3%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z23723%22%7D%7D%7D%7D%7D%7D%2C%22Z28787K2%22%3A%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P1346%22%7D%7D full call] ** [https://www.wikifunctions.org/wiki/Z28755?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z28755%22%2C%22Z28755K1%22%3A%7B%22Z1K1%22%3A%22Z20159%22%2C%22Z20159K1%22%3A%7B%22Z1K1%22%3A%22Z17813%22%2C%22Z17813K1%22%3A%22Z17814%22%7D%2C%22Z20159K2%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%221995%22%7D%7D%2C%22Z28755K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z873%22%2C%22Z873K1%22%3A%22Z28773%22%2C%22Z873K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z873%22%2C%22Z873K1%22%3A%22Z19308%22%2C%22Z873K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z13464%22%2C%22Z13464K1%22%3A%22Z22839%22%2C%22Z13464K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z13464%22%2C%22Z13464K1%22%3A%22Z29694%22%2C%22Z13464K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30172%22%2C%22Z30172K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30248%22%2C%22Z30248K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22978%22%2C%22Z22978K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z6821%22%2C%22Z6821K1%22%3A%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q1317446%22%7D%7D%2C%22Z22978K2%22%3A%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P527%22%7D%7D%2C%22Z30248K2%22%3A%5B%22Z6030%22%2C%7B%22Z1K1%22%3A%22Z6030%22%2C%22Z6030K1%22%3A%22Z6036%22%7D%5D%2C%22Z30248K3%22%3A%5B%22Z60%22%5D%2C%22Z30248K4%22%3A%5B%22Z6092%22%2C%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P585%22%7D%2C%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P1346%22%7D%5D%7D%7D%2C%22Z13464K3%22%3A%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P585%22%7D%7D%2C%22Z13464K3%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z23723%22%7D%7D%7D%7D%7D index] *** [https://www.wikifunctions.org/wiki/Z13464?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z13464%22%2C%22Z13464K1%22%3A%22Z22839%22%2C%22Z13464K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z13464%22%2C%22Z13464K1%22%3A%22Z29694%22%2C%22Z13464K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30172%22%2C%22Z30172K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30248%22%2C%22Z30248K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22978%22%2C%22Z22978K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z6821%22%2C%22Z6821K1%22%3A%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q1317446%22%7D%7D%2C%22Z22978K2%22%3A%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P527%22%7D%7D%2C%22Z30248K2%22%3A%5B%22Z6030%22%2C%7B%22Z1K1%22%3A%22Z6030%22%2C%22Z6030K1%22%3A%22Z6036%22%7D%5D%2C%22Z30248K3%22%3A%5B%22Z60%22%5D%2C%22Z30248K4%22%3A%5B%22Z6092%22%2C%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P585%22%7D%2C%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P1346%22%7D%5D%7D%7D%2C%22Z13464K3%22%3A%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P585%22%7D%7D%2C%22Z13464K3%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z23723%22%7D%7D singular P585s] **** [https://www.wikifunctions.org/wiki/Z30248?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30248%22%2C%22Z30248K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22978%22%2C%22Z22978K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z6821%22%2C%22Z6821K1%22%3A%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q1317446%22%7D%7D%2C%22Z22978K2%22%3A%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P527%22%7D%7D%2C%22Z30248K2%22%3A%5B%22Z6030%22%2C%7B%22Z1K1%22%3A%22Z6030%22%2C%22Z6030K1%22%3A%22Z6036%22%7D%5D%2C%22Z30248K3%22%3A%5B%22Z60%22%5D%2C%22Z30248K4%22%3A%5B%22Z6092%22%2C%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P585%22%7D%2C%7B%22Z1K1%22%3A%22Z6092%22%2C%22Z6092K1%22%3A%22P1346%22%7D%5D%7D items] === {{Z|30931}} === tests timing out * {{Z|30932}} * {{Z|30933}} * {{Z|30942}} * {{Z|30947}} passing; trivial === {{Z|25052}} === test timing out * {{Z|25053}} === {{Z|25054}} === test timing out * {{Z|25055}} passing * {{Z|25056}} === {{Z|29953}} === tests timing out * {{Z|29954}} * {{Z|29955}} expected failure * {{Z|29956}} === {{Z|29784}} === tests timing out * {{Z|30088}} * {{Z|30915}} === {{Z|30175}} === tests timing out * {{Z|30188}} * {{Z|30913}} * {{Z|30958}} passing === {{Z|30157}} === test timing out * {{Z|30165}} * {{Z|30908}} passing; trivial === {{Z|30217}} === tests timing out * {{Z|30230}} * {{Z|30231}} === {{Z|27610}} === test timing out * {{Z|27611}} === {{Z|30471}} === no good tests; {{Z|30853}} would make it easier === {{Z|31019}} === tests timing out * {{Z|31022}} * {{Z|31023}} passing * {{Z|31024}} * {{Z|31025}} passing === {{Z|31041}} === test timing out * {{Z|31043}} * {{Z|31044}} passing === {{Z|10956}} === test timing out, connected anyway * {{Z|10959}} * {{Z|10961}} passing * {{Z|19167}} passing === {{Z|10944}} === tests timing out, connected anyway * {{Z|10946}} * {{Z|10947}} * {{Z|10948}} * {{Z|10949}} * {{Z|10950}} * {{Z|10951}} * {{Z|10969}} === {{Z|30153}} === test timing out * {{Z|31708}} === {{Z|19243}} === tests timing out, connected anyway * {{Z|19251}} * {{Z|19395}} * {{Z|21612}} * {{Z|22814}} === {{Z|19170}} === tests timing out for RLE impl., connected anyway * {{Z|19171}} * {{Z|19172}} * {{Z|19173}} * {{Z|19174}} * {{Z|19176}} === {{Z|34793}} === tests timing out, connected anyway * {{Z|34794}} * {{Z|34795}} * {{Z|34796}} * {{Z|34843}} n5aax5qwultsabuywqst0h605v6v8cj Category talk:Functions with only code implementations 15 77040 272596 271986 2026-05-06T03:20:49Z YoshiRulz 10156 /* Surveying all Z8s */ 272596 wikitext text/x-wiki == Surveying all Z8s == I've checked <code>[[Z10000]]</code>&ndash;<code>[[Z22297]]</code>. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:46, 21 March 2026 (UTC) odz2wxu1d6c7j1rcfbzvw1fluk0zd8f Z32276 0 78470 272478 258740 2026-05-05T16:51:11Z YoshiRulz 10156 Clarify en label 272478 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32276" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z32276K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "language" } ] } } ], "Z8K2": "Z6", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14", "Z32280" ], "Z8K5": "Z32276" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "separator space/punctuation for list items in lang" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "word separator" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "return a separator to be used between words in a given language." } ] } } gby7pz4zdkahjf1jt9rpr8tipez15wx Z32314 0 78509 272558 272307 2026-05-06T01:01:10Z YoshiRulz 10156 Added Z34841 to the approved list of test cases 272558 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32314" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z32314K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "text" } ] } } ], "Z8K2": "Z40", "Z8K3": [ "Z20", "Z32316", "Z32317", "Z34841" ], "Z8K4": [ "Z14", "Z21875" ], "Z8K5": "Z32314" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "is word or phrase starting with vowel in English" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "see also Z21739 which returns a string." } ] } } o7xm5olyh236t10vfnh3nsiyecty7jq Z32434 0 78677 272647 259542 2026-05-06T11:46:48Z Theki 2389 add fallbacks 272647 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32434" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32425", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z26107", "Z26107K1": { "Z1K1": "Z18", "Z18K1": "Z32425K4" }, "Z26107K2": { "Z1K1": "Z7", "Z7K1": "Z22511", "Z22511K1": { "Z1K1": "Z7", "Z7K1": "Z21394", "Z21394K1": [ "Z6", { "Z1K1": "Z7", "Z7K1": "Z11089", "Z11089K1": { "Z1K1": "Z7", "Z7K1": "Z24102", "Z24102K1": { "Z1K1": "Z18", "Z18K1": "Z32425K1" }, "Z24102K2": { "Z1K1": "Z18", "Z18K1": "Z32425K4" } } }, " ", { "Z1K1": "Z7", "Z7K1": "Z27410", "Z27410K1": { "Z1K1": "Z7", "Z7K1": "Z27327", "Z27327K1": { "Z1K1": "Z18", "Z18K1": "Z32425K3" }, "Z27327K2": { "Z1K1": "Z6092", "Z6092K1": "P9970" }, "Z27327K3": { "Z1K1": "Z18", "Z18K1": "Z32425K4" } }, "Z27410K2": [ "Z6091", { "Z1K1": "Z6091", "Z6091K1": "Q3910936" } ] }, " ", { "Z1K1": "Z7", "Z7K1": "Z11089", "Z11089K1": { "Z1K1": "Z7", "Z7K1": "Z24102", "Z24102K1": { "Z1K1": "Z18", "Z18K1": "Z32425K2" }, "Z24102K2": { "Z1K1": "Z18", "Z18K1": "Z32425K4" } } } ] } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "English simple present collective sentence, comp." } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } grfayfagau0173dzmr7lnbuacvu8zr4 272650 272647 2026-05-06T11:55:04Z Theki 2389 272650 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32434" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32425", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z26107", "Z26107K1": { "Z1K1": "Z18", "Z18K1": "Z32425K4" }, "Z26107K2": { "Z1K1": "Z7", "Z7K1": "Z22511", "Z22511K1": { "Z1K1": "Z7", "Z7K1": "Z21394", "Z21394K1": [ "Z6", { "Z1K1": "Z7", "Z7K1": "Z11089", "Z11089K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z18", "Z18K1": "Z32425K1" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z32425K4" } } }, " ", { "Z1K1": "Z7", "Z7K1": "Z27410", "Z27410K1": { "Z1K1": "Z7", "Z7K1": "Z27327", "Z27327K1": { "Z1K1": "Z18", "Z18K1": "Z32425K3" }, "Z27327K2": { "Z1K1": "Z6092", "Z6092K1": "P9970" }, "Z27327K3": { "Z1K1": "Z18", "Z18K1": "Z32425K4" } }, "Z27410K2": [ "Z6091", { "Z1K1": "Z6091", "Z6091K1": "Q3910936" } ] }, " ", { "Z1K1": "Z7", "Z7K1": "Z11089", "Z11089K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z18", "Z18K1": "Z32425K2" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z32425K4" } } } ] } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "English simple present collective sentence, comp." } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } m6b2kkj73j98qhljuunhjthqskeshvn User:Xeroctic/Human languages/2 2 81338 272630 268958 2026-05-06T09:28:10Z Xeroctic 8849 delete, don't want this any more, I have not made any edits to this since 272630 wikitext text/x-wiki {{Delete}} Another copy of [[Wiktionary:Human languages]], which I may propose some changes with. ---- <translate> <!--T:1--> Supported by the Natural Language Generation Special Interest Group; see also <tvar name="1">{{ll|WF:PROG}}</tvar> and <tvar name="2">{{ll|WF:Catalogue/Natural language operations}}</tvar>. == Related pages == <!--T:121--> </translate> * <translate><!--T:122--> <tvar name="1">[[:Category:Natural languages]]</tvar> — List of categories for languages</translate> * <translate><!--T:123--> <tvar name="1">{{ll|Wikifunctions:Catalogue/Natural language operations}}</tvar> — Lists of natural language functions</translate> * <translate><!--T:124--> <tvar name="1">{{ll|Wikifunctions:NLG functions}}</tvar> — A table of each supported language's NLG functions</translate> ** <translate><!--T:125--> <tvar name="1">{{ll|Wikifunctions:Cardinal numbers}}</tvar> — List of each language's cardinal number functions</translate> * <translate><!--T:126--> <tvar name="1">{{ll|Wikifunctions:Reserved ZIDs/all#Z1000-Z1999}}</tvar> — List of all languages in ZObject order</translate> <translate> == Afroasiatic == <!--T:38--> </translate> * {{z+|Z1472}} (zgh) — [[/Z1472]] * {{z+|Z1013}} (ha) — [[/Z1013]] * <translate><!--T:127--> Semitic</translate> ** <translate><!--T:128--> Arabic</translate> *** {{z+|Z1001}} (ar) — [[/Z1001]] *** {{z+|Z1045}} (ary) — [[/Z1045]] *** {{z+|Z1582}} (aeb) — [[/Z1582]] ** {{z+|Z1186}} (he) — [[/Z1186]] <translate> == Austroasiatic == <!--T:69--> </translate> * {{z+|Z1048}} (vi) — [[/Z1048]] * (<translate><!--T:129--> Mundari, no code yet</translate>) (unr) <translate> == Austronesian == <!--T:70--> </translate> * <translate><!--T:130--> Malayic</translate> ** {{z+|Z1531}} (ms) — [[/Z1531]] *** {{z+|Z1434}} (ms-arab) — [[/Z1434]] ** {{z+|Z1078}} (id) — [[/Z1078]] * {{z+|Z1471}} (su) — [[/Z1471]] <translate> == Constructed == <!--T:131--> </translate> * {{z+|Z1882}} (ldn) — [[/Z1882]] * {{z+|Z1576}} (eo) — [[/Z1576]] * {{z+|Z1534}} (tlh) — [[/Z1534]] * {{z+|Z1762}} (tok) — [[/Z1762]] <translate> == Dravidian == <!--T:132--> </translate> * {{z+|Z1293}} (brh) — [[/Z1293]] * <translate><!--T:133--> South</translate> ** {{z+|Z1012}} (ml) — [[/Z1012]] ** {{z+|Z1429}} (te) — [[/Z1429]] <translate> == Indo-European == <!--T:80--> </translate> * {{z+|Z1541}} (hy) — [[/Z1541]] * <translate><!--T:134--> Balto-Slavic</translate> ** {{z+|Z1709}} (lv) — [[/Z1709]] ** <translate><!--T:135--> Slavic</translate> *** <translate><!--T:136--> East Slavic</translate> **** {{z+|Z1005}} (ru) — [[/Z1005]] **** {{z+|Z1332}} (uk) — [[/Z1332]] **** {{z+|Z1622}} (by) — [[/Z1622]] *** <translate><!--T:137--> West Slavic</translate> **** {{z+|Z1062}} (cs) — [[/Z1062]] **** {{z+|Z1025}} (pl) — [[/Z1025]] **** {{z+|Z1488}} (sk) — [[/Z1488]] *** <translate><!--T:138--> South Slavic</translate> **** {{z+|Z1823}} (bg) — [[/Z1823]] **** {{z+|Z1105}} (cu) — [[/Z1105]] **** {{z+|Z1412}} (sh) — [[/Z1412]] ***** {{z+|Z1473}} (bs) — [[/Z1473]] ***** {{z+|Z1272}} (hr) — [[/Z1272]] ***** {{z+|Z1498}} (cnr) — [[/Z1498]] ***** {{z+|Z1158}} (sr) — [[/Z1158]] **** {{z+|Z1616}} (sl) — [[/Z1616]] * <translate><!--T:139--> Celtic</translate> ** {{z+|Z1282}} (br) — [[/Z1282]] ** {{z+|Z1339}} (gd) — [[/Z1282]] * <translate><!--T:140--> Germanic</translate> ** <translate><!--T:141--> North Germanic</translate> *** <translate><!--T:142--> East Scandinavian</translate> **** {{z+|Z1061}} (dk) — [[/Z1061]] **** {{z+|Z1592}} (sv) — [[/Z1592]] *** {{z+|Z1021}} (no) — [[/Z1592]] ** <translate><!--T:143--> West Germanic</translate> *** <translate><!--T:144--> North Sea</translate> **** {{z+|Z1002}} (en) — [[/Z1002]] ***** <translate><!--T:145--> North American</translate> ****** {{z+|Z1689}} (en-US) — [[/Z1689]] ****** {{z+|Z1437}} (en-CA) — [[/Z1437]] ***** {{z+|Z1113}} (en-AU) — [[/Z1113]] ***** {{z+|Z1199}} (en-GB) — [[/Z1199]] ***** {{z+|Z1966}} (en-IN) — [[/Z1966]] ***** {{z+|Z1881}} (en-x-piglatin) — [[/Z1881]] ***** {{z+|Z1124}} (en-x-simple) — [[/Z1124]] **** {{z+|Z1146}} (nds) — [[/Z1146]] *** <translate><!--T:146--> High German</translate> **** {{z+|Z1099}} (lb) — [[/Z1099]] **** {{z+|Z1430}} (de) — [[/Z1430]] *** {{z+|Z1157}} (nl) — [[/Z1157]] * {{z+|Z1827}} (el) — [[/Z1827]] * <translate><!--T:147--> Indo-Iranian</translate> ** <translate><!--T:148--> Indo-Aryan</translate> *** <translate><!--T:149--> Hindustani</translate> **** {{z+|Z1820}} (hi) — [[/Z1820]] **** {{z+|Z1717}} (ur) — [[/Z1717]] *** <translate><!--T:150--> Northwestern</translate> **** <translate><!--T:151--> Punjabic</translate> ***** {{z+|Z1657}} (pa) — [[/Z1657]] ***** {{z+|Z1083}} (pnb) — [[/Z1083]] **** {{z+|Z1191}} (sd) — [[/Z1191]] *** <translate><!--T:152--> Eastern</translate> **** {{z+|Z1011}} (bn) — [[/Z1011]] **** <translate><!--T:153--> Rohingya</translate> (rhg) ***** {{z+|Z1978}} (rhg-rohg) — [[/Z1978]] ***** {{z+|Z1979}} (rhb-arab) — [[/Z1979]] ** <translate><!--T:154--> Iranian</translate> *** <translate><!--T:155--> Northwestern</translate> **** {{z+|Z1747}} (bal) — [[/Z1747]] **** {{z+|Z1556}} (ku) — [[/Z1556]] ***** {{z+|Z1288}} (ckb) — [[/Z1288]] *** {{z+|Z1728}} (fa) — [[/Z1728]] **** {{z+|Z1207}} (tg) — [[/Z1207]] **** {{z+|Z1265}} (fa-AF / prs) — [[/Z1265]] **** {{z+|Z1277}} (jpr) — [[/Z1277]] * <translate><!--T:156--> Italic</translate> ** {{z+|Z1403}} (la) — [[/Z1403]] ** <translate><!--T:157--> Romance</translate> *** <translate><!--T:158--> Continental Romance</translate> **** <translate><!--T:159--> Western Romance</translate> ***** <translate><!--T:160--> Ibero-Romance</translate> ****** {{z+|Z1037}} (pt) — [[/Z1037]] ******* {{z+|Z1381}} (pt-BR) — [[/Z1381]] ****** {{z+|Z1003}} (es) — [[/Z1003]] ***** <translate><!--T:161--> Occitano-Romance</translate> ****** {{z+|Z1789}} (ca) — [[/Z1789]] ***** <translate><!--T:162--> North Gallo-Romance</translate> ****** {{z+|Z1004}} (fr) — [[/Z1004]] ***** <translate><!--T:163--> North Italian</translate> ****** {{Z+|Z1363}} (vec) — [[/Z1363]] ****** {{z+|Z1483}} (lad) — [[/Z1483]] **** <translate><!--T:164--> South Romance</translate> ***** {{z+|Z1787}} (it) — [[/Z1787]] ***** {{z+|Z1329}} (co) — [[/Z1329]] ***** {{z+|Z1082}} (sdc) — [[/Z1082]] ***** {{z+|Z1491}} (nap) — [[/Z1491]] ***** {{z+|Z1298}} (scn) — [[/Z1298]] **** <translate><!--T:165--> Balkan romance</translate> ***** {{z+|Z1664}} (ro) — [[/Z1664]] *** <translate><!--T:166--> Island Romance</translate> **** {{z+|Z1342}} (sc) — [[/Z1342]] <translate> == Kra-Dai == <!--T:110--> </translate> * {{z+|Z1851}} (th) — [[/Z1851]] <translate> == Niger-Congo == <!--T:167--> </translate> * <translate><!--T:168--> Atlantic-Congo</translate> ** {{z+|Z1015}} (dag) — [[/Z1015]] ** <translate><!--T:169--> Volta-Congo</translate> *** <translate><!--T:170--> Volta-Niger</translate> **** {{z+|Z1014}} (ig) — [[/Z1014]] **** {{z+|Z1818}} (ya) — [[/Z1818]] *** {{z+|Z1179}} (kcg) — [[/Z1179]] <translate> == Mixed and creoles == <!--T:171--> <!--T:172--> These languages are sorted under the language it is primarily based on. </translate> * {{Z|Z1531}} ** {{z+|Z1630}} (bew) — [[/Z1630]] <translate> == Sign == <!--T:173--> </translate> * {{z+|Z1763}} (ase) — [[/Z1763]] <translate> == Sino-Tibetan == <!--T:109--> </translate> * {{z+|Z1147}} (dz) — [[/Z1147]] * <translate><!--T:174--> Sinitic</translate> ** {{z+|Z1006}} (zh) — [[/Z1006]] *** {{z+|Z1645}} (zh-hans) — [[/Z1645]] **** {{z+|Z1411}} (zh-CN) — [[/Z1411]] *** {{z+|Z1672}} (zh-hant) — [[/Z1672]] **** {{z+|Z1589}} (zh-HK) — [[/Z1589]] ** {{z+|Z1202}} (zh-yue) — [[/Z1202]] *** {{z+|Z1901}} (yue-hans) — [[/Z1901]] *** {{z+|Z1902}} (yue-hant) — [[/Z1902]] <translate> == Turkic == <!--T:112--> </translate> * <translate><!--T:175--> Oghuz</translate> ** {{z+|Z1237}} (tr) — [[/Z1237]] ** {{z+|Z1597}} (az) — [[/Z1597]] * {{z+|Z1120}} (uz) — [[/Z1120]] <translate> == Uralic == <!--T:113--> </translate> * {{z+|Z1051}} (fi) — [[/Z1051]] * {{z+|Z1513}} (hu) — [[/Z1513]] <translate> == Isolates and smaller families == <!--T:176--> </translate> * {{z+|Z1314}} (eu) — [[/Z1314]] * {{z+|Z1830}} (ja) — [[/Z1830]] ** {{z+|Z1444}} (ja-hkrt) — [[/Z1444]] ** Japanese rōmaji, no ZObject (ja-latn) * {{z+|Z1643}} (ko) — [[/Z1643]] * {{z+|Z1678}} (qu) — [[/Z1678]] <translate> == Other == <!--T:177--> </translate> * {{z+|Z1360}} (mul) — [[/Z1360]] rg0ym3kwiukqx5wuxrfwiynmxit0qlr User:Theki/best practices 2 81508 272651 271840 2026-05-06T11:55:17Z Theki 2389 272651 wikitext text/x-wiki This is an '''opinionated''' list of what I believe to be ideal approaches to different Wikifunctions problems. == Abstract Wikipedia == * There are many functions that generate paragraphs, but '''you should ideally use {{Z|Z33068}}'''. This function abides by the rules of languages that do not include spaces, such as Japanese and Chinese. It is also much less verbose than similar functions which require you to manually specify a delimiter. ** When using this function, calls to {{Z|Z29749}} and similar functions are redundant, as the code that converts text-like objects to HTML fragments does this for you. ** In general, any function that outputs a ''text-like object'' can just be provided to the function's list input verbatim. This includes HTML fragments, plain strings, and monolingual text. You do not need to wrap these objects in any special handler functions as stated above. It is better to leave this special handling to the function itself as it furthers consistency across all articles. * If you are working with HTML fragments, try to avoid interfacing with Wikidata items directly. For example, if a function calls for a string and you wish to populate this string with the label of a Wikidata item, try to find a function that accomplishes this purpose with an explicitly-defined Wikidata item reference parameter instead. Doing otherwise causes hard-coded rendering behavior that will fail to account for certain edge cases required by certain languages. Leave the handling of such matters up to the WikiFunctioneers, not the Abstract Wikipedians. * After creating an article, be sure to link it to its Wikidata item. You might assume this is done automatically, but it is not. ** This link should go in the ''Multilingual sites'' sections, which is also where Wikimedia Commons links reside. * Wrap sentences in paragraphs. Just including a sentence by itself, such as by using to {{Z|Z29749}} with a single sentence fragment provided, is unfriendly towards screen readers, and will almost certainly be done away with in the long-term when more than, err, one sentence is added to the article. * The sandbox is at [[abstract:Q138864867|Q138864867]]. Other sandboxes are available, but this is the most straightforwardly-defined instance of one, and is therefore clearer. == Wikifunctions == === Natural language generation === * If you wish to sentence case a Wikidata label, '''do not use {{Z|Z10771}}'''. Not every natural language actually uses sentence case. Use {{Z|Z34096}} instead, which accounts for these differences. In general, if you are sentence casing text that can be in any language, use conditional sentence case. * All natural language generation functions for a certain language should still include a language parameter in the same position as the parent function ''unless'' you are sure that the target language does not and will not have dialects or variants. Use this language parameter when making calls to functions that require a language parameter, so as to account for if a user desires e.g. British English or Simplified Chinese instead of just general English and Chinese. ** In these functions, use a call to {{Z|Z24766}} instead of {{Z|Z23753}}. This avoids labels not appearing in a certain language because they do not have a label defined in that sub-language whereas they do in the general language. * All natural language generation functions should return {{Z|Z11}}, '''not {{Z|Z6}}'''. * In {{Z|Z14294}} objects, when defining a function for a language, be sure to account for language variants when they exist where applicable. The presence of these, including the seemingly useless ones, appears to be due to natural language objects being created for every assigned language code, including variants appended after the code such as in <code>zh-hant</code> ({{Z|Z1672}}). ** Instead of {{Z|Z1006}}, use {{Z|Z33463}}, {{Z|Z33468}}, or {{Z|Z33467}}. *** In general, you should not refer to {{Z|Z1006}} directly in any circumstance. See its description for information. ** Instead of {{Z|Z1002}}, use {{Z|Z33034}}. ** Instead of {{Z|Z1004}}, use {{Z|Z33056}}. ** Instead of {{Z|Z1830}}, use {{Z|Z34003}}. ** {{Z|Z1003}} has {{Z|Z1423}}, but this is not currently wrapped in a "Spanish variants" object. You can assume that ''Spanish (formal)'' will seldom see any usage, however. 0erkpqw86ogr1dw6o0xtgask6lydz7g Z34260 0 81524 272652 269540 2026-05-06T11:56:41Z Theki 2389 272652 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34260" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z34257", "Z14K2": { "Z1K1": "Z11", "Z11K1": { "Z1K1": "Z18", "Z18K1": "Z34257K5" }, "Z11K2": { "Z1K1": "Z7", "Z7K1": "Z22511", "Z22511K1": { "Z1K1": "Z7", "Z7K1": "Z21394", "Z21394K1": [ "Z6", { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z18", "Z18K1": "Z34257K1" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z34257K5" } }, " is the ", { "Z1K1": "Z7", "Z7K1": "Z14526", "Z14526K1": { "Z1K1": "Z18", "Z18K1": "Z34257K2" } }, " ", { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z18", "Z18K1": "Z34257K3" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z34257K5" } }, " by ", { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z18", "Z18K1": "Z34257K4" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z34257K5" } } ] } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "English Nth instance of class by creator, comp" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } qwa6rt964syfinsph411zhuunhtiy8k Wikifunctions:Requests for connection and disconnection 4 81533 272548 271349 2026-05-06T00:48:27Z Some helpful person 65824 272548 wikitext text/x-wiki This page allows non-functioneers to request the connection or disconnection of implementations and tests to/from a function. To add a request, add the details of your request (Remember to add <nowiki>~~~~</nowiki> to sign!), using the <nowiki>{{Z|<your five id numbers here>}}</nowiki> template to reference and link to a specific ZID. Functioneers may, at their discretion, refuse to connect implementations that do not pass or do not have tests, and tests that do not pass or do not make logical sense. == 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) :::::@[[User:ChaoticVermillion|ChaoticVermillion]], ping :) [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 19:03, 30 March 2026 (UTC) ::::::Apologies, I completely forgot about this. {{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 06:05, 31 March 2026 (UTC) :::::::Thank you. Can you please connect the implementation now? [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 07:43, 31 March 2026 (UTC) ::::::::{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:00, 31 March 2026 (UTC) Please connect [[Z32954|Z32954’s]] implementation and test case. I woukd like to use it on Abstract Wikipedia. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 07:46, 31 March 2026 (UTC) :{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:00, 31 March 2026 (UTC) Please disconnect [[Z10779]]; I would like to simplify it. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 07:46, 31 March 2026 (UTC) :{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:02, 31 March 2026 (UTC) ::Done, you can reconnect it now. Thanks. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 08:24, 31 March 2026 (UTC) :::{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:42, 31 March 2026 (UTC) Request to connect [[Z33028]] to their test and implementation. Thanks. — [[User:内存溢出的猫|内存溢出的猫]] ([[User talk:内存溢出的猫|talk]]) 12:07, 2 April 2026 (UTC) :{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 12:11, 2 April 2026 (UTC) Request to connect [[Z33040]] with its implementation and test cases. -- [[User:Winston Sung|Winston Sung]] ([[User talk:Winston Sung|talk]]) 16:41, 2 April 2026 (UTC) :{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 16:56, 2 April 2026 (UTC) Can anyone connect [[Z33045]] and [[Z33046]], and add [[Z33044]] to [[Z32402]]? [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 17:52, 2 April 2026 (UTC) :For the record, this is {{Already done}}. [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 22:17, 2 April 2026 (UTC) Are the implementations and tests for [[Z32985]] and [[Z32982]] ready to be connected? Courtesy ping: {{u|EJPPhilippines}}. [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 22:17, 2 April 2026 (UTC) :[[Z32982]] is {{already done}}; [[Z32985]] is not. [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 03:08, 3 April 2026 (UTC) Could someone connect the implementations and tests for [[Z33073]] and [[Z33075]]? Thank you! [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 03:08, 3 April 2026 (UTC) :{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 03:48, 3 April 2026 (UTC) Can someone connect the implementations and tests for [[Z33059]]? [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 00:49, 4 April 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 01:10, 4 April 2026 (UTC) Request to connect [[Z33038]] with its implementation and test cases. -- [[User:Winston Sung|Winston Sung]] ([[User talk:Winston Sung|talk]]) 02:39, 4 April 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:12, 4 April 2026 (UTC) Request to connect [[Z33036]] with its implementation and test cases. -- [[User:Winston Sung|Winston Sung]] ([[User talk:Winston Sung|talk]]) 03:44, 4 April 2026 (UTC) :{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 03:54, 4 April 2026 (UTC) Can someone disconnect [[Z18680]] because I need to recheck the structure of the code back? [[User:Hakimi97|Hakimi97]] ([[User talk:Hakimi97|talk]]) 02:06, 7 April 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 02:13, 7 April 2026 (UTC) ::Okay, I have validated the structure of [[Z18679]], could you please connect back all of the implementations and another additional test? Thank you. [[User:Hakimi97|Hakimi97]] ([[User talk:Hakimi97|talk]]) 04:06, 7 April 2026 (UTC) :::{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 04:39, 7 April 2026 (UTC) Please connect [[Z33165]] with its implementation and test cases. [[User:Hakimi97|Hakimi97]] ([[User talk:Hakimi97|talk]]) 13:28, 7 April 2026 (UTC) :{{d}} [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 13:30, 7 April 2026 (UTC) Please connect [[Z30603]] with its implementation and test cases, the function is in its complete form now. [[User:Hakimi97|Hakimi97]] ([[User talk:Hakimi97|talk]]) 13:53, 7 April 2026 (UTC) :{{D}} [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 13:54, 7 April 2026 (UTC) Please connect [[Z32176]] and its implementation together with all of the test cases, since nothing wrong appears now. [[User:Hakimi97|Hakimi97]] ([[User talk:Hakimi97|talk]]) 12:46, 8 April 2026 (UTC) :{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 12:49, 8 April 2026 (UTC) I would like to request to connect the implementation and test cases of [[Z32175]]. [[User:Hakimi97|Hakimi97]] ([[User talk:Hakimi97|talk]]) 09:54, 9 April 2026 (UTC) :{{Done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 10:17, 9 April 2026 (UTC) Please connect the implementation and all test cases of [[Z32243]]. [[User:Hakimi97|Hakimi97]] ([[User talk:Hakimi97|talk]]) 02:16, 10 April 2026 (UTC) :{{Done}} [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 02:35, 10 April 2026 (UTC) Please connect [[Z33335]] with its implementation and test cases. Thank you. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 05:08, 13 April 2026 (UTC) :{{D}} [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 05:32, 13 April 2026 (UTC) Please connect [[Z33459]] with its implementation and test cases. Thank you. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 17:38, 14 April 2026 (UTC) :{{D}} [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 19:28, 14 April 2026 (UTC) Please connect the implementation and test for [[Z33679]]. Thank you. [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 03:42, 17 April 2026 (UTC) :{{done}} --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 03:50, 17 April 2026 (UTC) Please connect the implementations and tests for [[Z33785]], [[Z33788]], and [[Z33780]]. Thank you! [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 03:13, 20 April 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:48, 20 April 2026 (UTC) Please connect the Python implementation of {{Z|Z33803}}. Thank you. [[User:OzmoOzmo|OzmoOzmo]] ([[User talk:OzmoOzmo|talk]]) 10:48, 20 April 2026 (UTC) :The function is a duplicate of {{Z|Z20430}} [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 10:56, 20 April 2026 (UTC) ::Now I've connected the implementation to {{Z|Z20430}}. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 11:02, 20 April 2026 (UTC) {{Z|Z33859}} (an implementation of {{Z|Z32297}} for Filipino, Tagalog and Kapampangan) with its sole implementation {{Z|Z33860}}. —[[User:UndueMarmot|<span style="color:#705ccb;">Undue</span><span style="color:#cfdfa3;background-color:#705ccb;">Marmot</span>]] <small>([[User talk:UndueMarmot|talk]])</small> 12:20, 21 April 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 12:24, 21 April 2026 (UTC) Please connect the implementation of {{Z|33878}}. Thank you! [[User:Some helpful person|Some helpful person]] ([[User talk:Some helpful person|talk]]) 16:42, 21 April 2026 (UTC) :Could you add some tests to check its correctness? [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 16:54, 21 April 2026 (UTC) ::{{D}} [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 17:03, 21 April 2026 (UTC) Please connect the test cases and passing implementation of {{Z|Z24602}}. Thank you! [[User:Some helpful person|Some helpful person]] ([[User talk:Some helpful person|talk]]) 21:12, 22 April 2026 (UTC) :...Of course the moment I say that I find at least one of the test cases are passing with an invalid input... Will debug. [[User:Some helpful person|Some helpful person]] ([[User talk:Some helpful person|talk]]) 21:15, 22 April 2026 (UTC) :Please connect the test cases instead so it will be easier to debug! [[User:Some helpful person|Some helpful person]] ([[User talk:Some helpful person|talk]]) 21:23, 22 April 2026 (UTC) ::{{done}} [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 21:34, 22 April 2026 (UTC) Please connect [[Z33955]] with its implementation and test cases. Thanks. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 21:31, 22 April 2026 (UTC) :{{done}}. Also, please consider requesting functioneer, I would support it! And thank you for your welcome on WD, too! [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 21:36, 22 April 2026 (UTC) Please disconnect the implementation {{Z|Z30288}} so that it can be fixed and reconnected. It erroneously compares the second element of the second typed pair to itself, and thus breaks many other functions and test cases reliant on it. Added a test case for this, which it of course fails. Thank you very much! <small>(resolves many headaches)</small> [[User:Some helpful person|Some helpful person]] ([[User talk:Some helpful person|talk]]) 03:30, 24 April 2026 (UTC) :{{done}} Please kindly check. [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 03:40, 24 April 2026 (UTC) :Oops! Sorry about that. Thanks for fixing this. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 07:41, 24 April 2026 (UTC) Please connect the implementations and tests for [[Z34124]] and its helper [[Z34127]]. Thank you! [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 23:49, 24 April 2026 (UTC) :{{Done}} [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 23:58, 24 April 2026 (UTC) Please connect the implementation and tests for [[Z34204]]. Thank you! [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 05:28, 26 April 2026 (UTC) :{{Done}} [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 05:31, 26 April 2026 (UTC) Please connect the implementation and test cases for [[Z33951]], [[Z34009]] and [[Z34008]]. Thank you. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 06:32, 26 April 2026 (UTC) :{{done}} except for {{z|Z34008}} since it fail for all test cases. [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 07:01, 26 April 2026 (UTC) ::Oh. The test cases fail mainly because the implementations for Z33951 and Z34009 were not connected yet. I guess we have to wait for a while until the connected implementation goes through. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 13:20, 26 April 2026 (UTC) :::{{done}} by YoshiRulz. Thank you. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 15:58, 26 April 2026 (UTC) Please connect the implementation and test cases for [[Z34212]]. Thank you. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 15:58, 26 April 2026 (UTC) :{{done}} by myself, as I was just granted functioneer. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 16:20, 26 April 2026 (UTC) Please disconnect {{Z|Z20694}}. A string without diacritics could be a valid pinyin due to the existence of neutral tone. The pinyin does not correspond to a real phrase, but it doesn't violate any rules for pinyin. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 16:08, 26 April 2026 (UTC) :{{done}} by myself, as I was just granted functioneer. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 16:20, 26 April 2026 (UTC) Is it possible to connect {{Z|Z34293}} and its respective tests please? It's a really simple piece of code, I might have gone a bit overboard with the tests though. [[User:Virinas-code|Virinas-code]] ([[User talk:Virinas-code|talk]]) 13:01, 27 April 2026 (UTC) :{{done}} [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 13:13, 27 April 2026 (UTC) A similar one (but any this time!): {{Z|Z34367}}. Could it be possible to connect it and its tests? This time there's a reasonable amount of them and they cover most cases too ;) [[User:Virinas-code|Virinas-code]] ([[User talk:Virinas-code|talk]]) 16:33, 27 April 2026 (UTC) :{{done}} [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 17:24, 27 April 2026 (UTC) Hello! Can somebody please connect the following functions? * {{Z|Z34308}} * {{Z|Z34165}} (its dependency is currently unimplemented) * {{Z|Z34139}} And perhaps the tests for: * {{Z|Z34149}} * {{Z|Z34150}} Pinging @[[User:Dv103|Dv103]] because they helped me with this function and have the functioneer role. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 16:28, 27 April 2026 (UTC) :{{d}} except the implementation of {{Z|Z34165}}, since it doesn't work (first requires the implementation of {{Z|Z34149}}). [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 17:13, 27 April 2026 (UTC) Could {{Z|Z34273}}, {{Z|Z34378}} and {{Z|Z34380}} please be connected? Note that they all recursively depend on each other, so it's not possible to only activate a few of them. Thanks! [[User:Virinas-code|Virinas-code]] ([[User talk:Virinas-code|talk]]) 21:28, 27 April 2026 (UTC) :{{done}}, thank you for your contributions. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 02:48, 28 April 2026 (UTC) Another little thing, is it possible to disconnect {{Z|Z34263}}'s test cases {{Z|Z34269}} and {{Z|Z34267}} please? I'd like to rewrite them using {{Z|Z34273}}. [[User:Virinas-code|Virinas-code]] ([[User talk:Virinas-code|talk]]) 08:31, 28 April 2026 (UTC) :{{Done}}, please proceed. [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 09:01, 28 April 2026 (UTC) ::Sorry for the late response, had an exam today... Anyways, I reworked them a little and they can be connected again! [[User:Virinas-code|Virinas-code]] ([[User talk:Virinas-code|talk]]) 20:05, 28 April 2026 (UTC) Is it possible to connect some new tests related to my previous functions ({{Z|Z34471}}, {{Z|Z34470}}, {{Z|Z34472}})? They implement the fact that in formal set theory {∅;∅} and {∅} are the exact same sets: duplicate elements behave in the same way as if they were only present once. Thanks in advance! [[User:Virinas-code|Virinas-code]] ([[User talk:Virinas-code|talk]]) 20:34, 28 April 2026 (UTC) :{{done}} [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 20:40, 28 April 2026 (UTC) Hello again! Could {{Z|Z34409}} and its tests please be connected? Thanks again! [[User:Virinas-code|Virinas-code]] ([[User talk:Virinas-code|talk]]) 10:41, 29 April 2026 (UTC) :Your Implementation failed [[Z34491]] and [[Z34494]] when I connected it, so I've left it disconnected. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:05, 29 April 2026 (UTC) ::Interesting... What failed exactly? When I look at error logs for tests all it says is "no connected implementation"... [[User:Virinas-code|Virinas-code]] ([[User talk:Virinas-code|talk]]) 11:09, 29 April 2026 (UTC) :::In all 3 cases, the returned value was equal to the input (a flattening step was missing). I think my fix is correct, but please double-check it. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 12:13, 29 April 2026 (UTC) ::::Took a look at it, forgot the <math>\operatorname{Pred}(\{ \O \})=\O</math> part in the recursion (whoopsies!). Made an alternative implementation {{Z|Z34509}} using only set operations and builtins; my goal with all those functions is that they don't depend on any other "complex" functions, they should be as simple as possible. Note that it doesn't remove duplicates, but this doesn't matter since <math>\{ \O, \O \} = \{ \O \}</math> anyways. [[User:Virinas-code|Virinas-code]] ([[User talk:Virinas-code|talk]]) 16:15, 29 April 2026 (UTC) Andd back with another set-related function: {{Z|Z34519}}! This one paves the way for set union (and maybe an alternative implementation of predecessor?). Could it please be connected? Thanks!! [[User:Virinas-code|Virinas-code]] ([[User talk:Virinas-code|talk]]) 19:38, 29 April 2026 (UTC) :{{done}} [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 19:38, 29 April 2026 (UTC) As promised, here is {{Z|Z34538}}! Can it be connected please? If you need more tests before I'll add some! [[User:Virinas-code|Virinas-code]] ([[User talk:Virinas-code|talk]]) 20:59, 29 April 2026 (UTC) :{{done}}. Also, if you'd like to request functioneer rights, I'd support it. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 21:59, 29 April 2026 (UTC) ::Thanks a lot for the offer! I might consider it a bit later, for now I promise to calm down a little with the requests :) [[User:Virinas-code|Virinas-code]] ([[User talk:Virinas-code|talk]]) 20:25, 30 April 2026 (UTC) Hi! First could {{Z|Z34544}} please be connected? It corresponds to the mathematical definition of predecessor and seems to be a ''bit'' faster than other implementations :) I've also made {{Z|Z34585}} and {{Z|Z34620}}, could they please be connected? They both have a few tests, but I'm going to add some more for edge cases like duplicate elements (which should be ignored when working with sets). Thanks a lot! [[User:Virinas-code|Virinas-code]] ([[User talk:Virinas-code|talk]]) 20:28, 30 April 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 20:34, 30 April 2026 (UTC) Please disconnect {{Z|21875}} so I can add a word to its hardcoded list of exceptions, and then it can be reconnected... Or if you're so willing, simply add "Unicode" to the EXCEPTIONS_DICT in the code for me. Thank you! [[User:Some helpful person|Some helpful person]] ([[User talk:Some helpful person|talk]]) 00:48, 6 May 2026 (UTC) 5nqqk37nwuzv2qqb2jwc246pnoa58ic 272560 272548 2026-05-06T01:02:18Z YoshiRulz 10156 /* Requests */ Reply 272560 wikitext text/x-wiki This page allows non-functioneers to request the connection or disconnection of implementations and tests to/from a function. To add a request, add the details of your request (Remember to add <nowiki>~~~~</nowiki> to sign!), using the <nowiki>{{Z|<your five id numbers here>}}</nowiki> template to reference and link to a specific ZID. Functioneers may, at their discretion, refuse to connect implementations that do not pass or do not have tests, and tests that do not pass or do not make logical sense. == 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) :::::@[[User:ChaoticVermillion|ChaoticVermillion]], ping :) [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 19:03, 30 March 2026 (UTC) ::::::Apologies, I completely forgot about this. {{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 06:05, 31 March 2026 (UTC) :::::::Thank you. Can you please connect the implementation now? [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 07:43, 31 March 2026 (UTC) ::::::::{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:00, 31 March 2026 (UTC) Please connect [[Z32954|Z32954’s]] implementation and test case. I woukd like to use it on Abstract Wikipedia. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 07:46, 31 March 2026 (UTC) :{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:00, 31 March 2026 (UTC) Please disconnect [[Z10779]]; I would like to simplify it. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 07:46, 31 March 2026 (UTC) :{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:02, 31 March 2026 (UTC) ::Done, you can reconnect it now. Thanks. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 08:24, 31 March 2026 (UTC) :::{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:42, 31 March 2026 (UTC) Request to connect [[Z33028]] to their test and implementation. Thanks. — [[User:内存溢出的猫|内存溢出的猫]] ([[User talk:内存溢出的猫|talk]]) 12:07, 2 April 2026 (UTC) :{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 12:11, 2 April 2026 (UTC) Request to connect [[Z33040]] with its implementation and test cases. -- [[User:Winston Sung|Winston Sung]] ([[User talk:Winston Sung|talk]]) 16:41, 2 April 2026 (UTC) :{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 16:56, 2 April 2026 (UTC) Can anyone connect [[Z33045]] and [[Z33046]], and add [[Z33044]] to [[Z32402]]? [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 17:52, 2 April 2026 (UTC) :For the record, this is {{Already done}}. [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 22:17, 2 April 2026 (UTC) Are the implementations and tests for [[Z32985]] and [[Z32982]] ready to be connected? Courtesy ping: {{u|EJPPhilippines}}. [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 22:17, 2 April 2026 (UTC) :[[Z32982]] is {{already done}}; [[Z32985]] is not. [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 03:08, 3 April 2026 (UTC) Could someone connect the implementations and tests for [[Z33073]] and [[Z33075]]? Thank you! [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 03:08, 3 April 2026 (UTC) :{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 03:48, 3 April 2026 (UTC) Can someone connect the implementations and tests for [[Z33059]]? [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 00:49, 4 April 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 01:10, 4 April 2026 (UTC) Request to connect [[Z33038]] with its implementation and test cases. -- [[User:Winston Sung|Winston Sung]] ([[User talk:Winston Sung|talk]]) 02:39, 4 April 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:12, 4 April 2026 (UTC) Request to connect [[Z33036]] with its implementation and test cases. -- [[User:Winston Sung|Winston Sung]] ([[User talk:Winston Sung|talk]]) 03:44, 4 April 2026 (UTC) :{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 03:54, 4 April 2026 (UTC) Can someone disconnect [[Z18680]] because I need to recheck the structure of the code back? [[User:Hakimi97|Hakimi97]] ([[User talk:Hakimi97|talk]]) 02:06, 7 April 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 02:13, 7 April 2026 (UTC) ::Okay, I have validated the structure of [[Z18679]], could you please connect back all of the implementations and another additional test? Thank you. [[User:Hakimi97|Hakimi97]] ([[User talk:Hakimi97|talk]]) 04:06, 7 April 2026 (UTC) :::{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 04:39, 7 April 2026 (UTC) Please connect [[Z33165]] with its implementation and test cases. [[User:Hakimi97|Hakimi97]] ([[User talk:Hakimi97|talk]]) 13:28, 7 April 2026 (UTC) :{{d}} [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 13:30, 7 April 2026 (UTC) Please connect [[Z30603]] with its implementation and test cases, the function is in its complete form now. [[User:Hakimi97|Hakimi97]] ([[User talk:Hakimi97|talk]]) 13:53, 7 April 2026 (UTC) :{{D}} [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 13:54, 7 April 2026 (UTC) Please connect [[Z32176]] and its implementation together with all of the test cases, since nothing wrong appears now. [[User:Hakimi97|Hakimi97]] ([[User talk:Hakimi97|talk]]) 12:46, 8 April 2026 (UTC) :{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 12:49, 8 April 2026 (UTC) I would like to request to connect the implementation and test cases of [[Z32175]]. [[User:Hakimi97|Hakimi97]] ([[User talk:Hakimi97|talk]]) 09:54, 9 April 2026 (UTC) :{{Done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 10:17, 9 April 2026 (UTC) Please connect the implementation and all test cases of [[Z32243]]. [[User:Hakimi97|Hakimi97]] ([[User talk:Hakimi97|talk]]) 02:16, 10 April 2026 (UTC) :{{Done}} [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 02:35, 10 April 2026 (UTC) Please connect [[Z33335]] with its implementation and test cases. Thank you. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 05:08, 13 April 2026 (UTC) :{{D}} [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 05:32, 13 April 2026 (UTC) Please connect [[Z33459]] with its implementation and test cases. Thank you. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 17:38, 14 April 2026 (UTC) :{{D}} [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 19:28, 14 April 2026 (UTC) Please connect the implementation and test for [[Z33679]]. Thank you. [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 03:42, 17 April 2026 (UTC) :{{done}} --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 03:50, 17 April 2026 (UTC) Please connect the implementations and tests for [[Z33785]], [[Z33788]], and [[Z33780]]. Thank you! [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 03:13, 20 April 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:48, 20 April 2026 (UTC) Please connect the Python implementation of {{Z|Z33803}}. Thank you. [[User:OzmoOzmo|OzmoOzmo]] ([[User talk:OzmoOzmo|talk]]) 10:48, 20 April 2026 (UTC) :The function is a duplicate of {{Z|Z20430}} [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 10:56, 20 April 2026 (UTC) ::Now I've connected the implementation to {{Z|Z20430}}. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 11:02, 20 April 2026 (UTC) {{Z|Z33859}} (an implementation of {{Z|Z32297}} for Filipino, Tagalog and Kapampangan) with its sole implementation {{Z|Z33860}}. —[[User:UndueMarmot|<span style="color:#705ccb;">Undue</span><span style="color:#cfdfa3;background-color:#705ccb;">Marmot</span>]] <small>([[User talk:UndueMarmot|talk]])</small> 12:20, 21 April 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 12:24, 21 April 2026 (UTC) Please connect the implementation of {{Z|33878}}. Thank you! [[User:Some helpful person|Some helpful person]] ([[User talk:Some helpful person|talk]]) 16:42, 21 April 2026 (UTC) :Could you add some tests to check its correctness? [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 16:54, 21 April 2026 (UTC) ::{{D}} [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 17:03, 21 April 2026 (UTC) Please connect the test cases and passing implementation of {{Z|Z24602}}. Thank you! [[User:Some helpful person|Some helpful person]] ([[User talk:Some helpful person|talk]]) 21:12, 22 April 2026 (UTC) :...Of course the moment I say that I find at least one of the test cases are passing with an invalid input... Will debug. [[User:Some helpful person|Some helpful person]] ([[User talk:Some helpful person|talk]]) 21:15, 22 April 2026 (UTC) :Please connect the test cases instead so it will be easier to debug! [[User:Some helpful person|Some helpful person]] ([[User talk:Some helpful person|talk]]) 21:23, 22 April 2026 (UTC) ::{{done}} [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 21:34, 22 April 2026 (UTC) Please connect [[Z33955]] with its implementation and test cases. Thanks. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 21:31, 22 April 2026 (UTC) :{{done}}. Also, please consider requesting functioneer, I would support it! And thank you for your welcome on WD, too! [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 21:36, 22 April 2026 (UTC) Please disconnect the implementation {{Z|Z30288}} so that it can be fixed and reconnected. It erroneously compares the second element of the second typed pair to itself, and thus breaks many other functions and test cases reliant on it. Added a test case for this, which it of course fails. Thank you very much! <small>(resolves many headaches)</small> [[User:Some helpful person|Some helpful person]] ([[User talk:Some helpful person|talk]]) 03:30, 24 April 2026 (UTC) :{{done}} Please kindly check. [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 03:40, 24 April 2026 (UTC) :Oops! Sorry about that. Thanks for fixing this. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 07:41, 24 April 2026 (UTC) Please connect the implementations and tests for [[Z34124]] and its helper [[Z34127]]. Thank you! [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 23:49, 24 April 2026 (UTC) :{{Done}} [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 23:58, 24 April 2026 (UTC) Please connect the implementation and tests for [[Z34204]]. Thank you! [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 05:28, 26 April 2026 (UTC) :{{Done}} [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 05:31, 26 April 2026 (UTC) Please connect the implementation and test cases for [[Z33951]], [[Z34009]] and [[Z34008]]. Thank you. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 06:32, 26 April 2026 (UTC) :{{done}} except for {{z|Z34008}} since it fail for all test cases. [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 07:01, 26 April 2026 (UTC) ::Oh. The test cases fail mainly because the implementations for Z33951 and Z34009 were not connected yet. I guess we have to wait for a while until the connected implementation goes through. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 13:20, 26 April 2026 (UTC) :::{{done}} by YoshiRulz. Thank you. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 15:58, 26 April 2026 (UTC) Please connect the implementation and test cases for [[Z34212]]. Thank you. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 15:58, 26 April 2026 (UTC) :{{done}} by myself, as I was just granted functioneer. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 16:20, 26 April 2026 (UTC) Please disconnect {{Z|Z20694}}. A string without diacritics could be a valid pinyin due to the existence of neutral tone. The pinyin does not correspond to a real phrase, but it doesn't violate any rules for pinyin. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 16:08, 26 April 2026 (UTC) :{{done}} by myself, as I was just granted functioneer. [[User:Sun8908|Sun8908]] ([[User talk:Sun8908|talk]]) 16:20, 26 April 2026 (UTC) Is it possible to connect {{Z|Z34293}} and its respective tests please? It's a really simple piece of code, I might have gone a bit overboard with the tests though. [[User:Virinas-code|Virinas-code]] ([[User talk:Virinas-code|talk]]) 13:01, 27 April 2026 (UTC) :{{done}} [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 13:13, 27 April 2026 (UTC) A similar one (but any this time!): {{Z|Z34367}}. Could it be possible to connect it and its tests? This time there's a reasonable amount of them and they cover most cases too ;) [[User:Virinas-code|Virinas-code]] ([[User talk:Virinas-code|talk]]) 16:33, 27 April 2026 (UTC) :{{done}} [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 17:24, 27 April 2026 (UTC) Hello! Can somebody please connect the following functions? * {{Z|Z34308}} * {{Z|Z34165}} (its dependency is currently unimplemented) * {{Z|Z34139}} And perhaps the tests for: * {{Z|Z34149}} * {{Z|Z34150}} Pinging @[[User:Dv103|Dv103]] because they helped me with this function and have the functioneer role. <span style="border-radius:99q;padding:0 7q;background:#103;border:3q solid #FBF">[[User:QuickQuokka|<span style="color:#FBF">'''QuickQuokka'''</span>]]</span> <sup>[⁠[[User talk:QuickQuokka|talk]] • [[Special:Contribs/QuickQuokka|contribs]]]</sup> 16:28, 27 April 2026 (UTC) :{{d}} except the implementation of {{Z|Z34165}}, since it doesn't work (first requires the implementation of {{Z|Z34149}}). [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 17:13, 27 April 2026 (UTC) Could {{Z|Z34273}}, {{Z|Z34378}} and {{Z|Z34380}} please be connected? Note that they all recursively depend on each other, so it's not possible to only activate a few of them. Thanks! [[User:Virinas-code|Virinas-code]] ([[User talk:Virinas-code|talk]]) 21:28, 27 April 2026 (UTC) :{{done}}, thank you for your contributions. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 02:48, 28 April 2026 (UTC) Another little thing, is it possible to disconnect {{Z|Z34263}}'s test cases {{Z|Z34269}} and {{Z|Z34267}} please? I'd like to rewrite them using {{Z|Z34273}}. [[User:Virinas-code|Virinas-code]] ([[User talk:Virinas-code|talk]]) 08:31, 28 April 2026 (UTC) :{{Done}}, please proceed. [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 09:01, 28 April 2026 (UTC) ::Sorry for the late response, had an exam today... Anyways, I reworked them a little and they can be connected again! [[User:Virinas-code|Virinas-code]] ([[User talk:Virinas-code|talk]]) 20:05, 28 April 2026 (UTC) Is it possible to connect some new tests related to my previous functions ({{Z|Z34471}}, {{Z|Z34470}}, {{Z|Z34472}})? They implement the fact that in formal set theory {∅;∅} and {∅} are the exact same sets: duplicate elements behave in the same way as if they were only present once. Thanks in advance! [[User:Virinas-code|Virinas-code]] ([[User talk:Virinas-code|talk]]) 20:34, 28 April 2026 (UTC) :{{done}} [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 20:40, 28 April 2026 (UTC) Hello again! Could {{Z|Z34409}} and its tests please be connected? Thanks again! [[User:Virinas-code|Virinas-code]] ([[User talk:Virinas-code|talk]]) 10:41, 29 April 2026 (UTC) :Your Implementation failed [[Z34491]] and [[Z34494]] when I connected it, so I've left it disconnected. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:05, 29 April 2026 (UTC) ::Interesting... What failed exactly? When I look at error logs for tests all it says is "no connected implementation"... [[User:Virinas-code|Virinas-code]] ([[User talk:Virinas-code|talk]]) 11:09, 29 April 2026 (UTC) :::In all 3 cases, the returned value was equal to the input (a flattening step was missing). I think my fix is correct, but please double-check it. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 12:13, 29 April 2026 (UTC) ::::Took a look at it, forgot the <math>\operatorname{Pred}(\{ \O \})=\O</math> part in the recursion (whoopsies!). Made an alternative implementation {{Z|Z34509}} using only set operations and builtins; my goal with all those functions is that they don't depend on any other "complex" functions, they should be as simple as possible. Note that it doesn't remove duplicates, but this doesn't matter since <math>\{ \O, \O \} = \{ \O \}</math> anyways. [[User:Virinas-code|Virinas-code]] ([[User talk:Virinas-code|talk]]) 16:15, 29 April 2026 (UTC) Andd back with another set-related function: {{Z|Z34519}}! This one paves the way for set union (and maybe an alternative implementation of predecessor?). Could it please be connected? Thanks!! [[User:Virinas-code|Virinas-code]] ([[User talk:Virinas-code|talk]]) 19:38, 29 April 2026 (UTC) :{{done}} [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 19:38, 29 April 2026 (UTC) As promised, here is {{Z|Z34538}}! Can it be connected please? If you need more tests before I'll add some! [[User:Virinas-code|Virinas-code]] ([[User talk:Virinas-code|talk]]) 20:59, 29 April 2026 (UTC) :{{done}}. Also, if you'd like to request functioneer rights, I'd support it. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 21:59, 29 April 2026 (UTC) ::Thanks a lot for the offer! I might consider it a bit later, for now I promise to calm down a little with the requests :) [[User:Virinas-code|Virinas-code]] ([[User talk:Virinas-code|talk]]) 20:25, 30 April 2026 (UTC) Hi! First could {{Z|Z34544}} please be connected? It corresponds to the mathematical definition of predecessor and seems to be a ''bit'' faster than other implementations :) I've also made {{Z|Z34585}} and {{Z|Z34620}}, could they please be connected? They both have a few tests, but I'm going to add some more for edge cases like duplicate elements (which should be ignored when working with sets). Thanks a lot! [[User:Virinas-code|Virinas-code]] ([[User talk:Virinas-code|talk]]) 20:28, 30 April 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 20:34, 30 April 2026 (UTC) Please disconnect {{Z|21875}} so I can add a word to its hardcoded list of exceptions, and then it can be reconnected... Or if you're so willing, simply add "Unicode" to the EXCEPTIONS_DICT in the code for me. Thank you! [[User:Some helpful person|Some helpful person]] ([[User talk:Some helpful person|talk]]) 00:48, 6 May 2026 (UTC) :{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 01:02, 6 May 2026 (UTC) q4jqjddsdf2e2yfqwkfz0pid16m2mwf Z34367 0 81638 272499 269883 2026-05-05T17:34:55Z YoshiRulz 10156 Fix en label 272499 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34367" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z40" }, "Z17K2": "Z34367K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "list" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z40", "Z17K2": "Z34367K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "test" } ] } } ], "Z8K2": "Z40", "Z8K3": [ "Z20", "Z34369", "Z34370", "Z34371", "Z34372", "Z34373", "Z34374", "Z34376", "Z34377" ], "Z8K4": [ "Z14", "Z34368" ], "Z8K5": "Z34367" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "any boolean equal to" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "any()", "contains", "has", "includes", "at least one", "one or more" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Returns true if at least one element of a list of boolean is equal to the comparison; always returns false for empty lists" } ] } } dqk50re1m3zb570atksc6myexjidl5z 272502 272499 2026-05-05T17:37:37Z YoshiRulz 10156 Added Z34823 and Z34824 to the approved list of implementations 272502 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34367" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z40" }, "Z17K2": "Z34367K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "list" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z40", "Z17K2": "Z34367K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "test" } ] } } ], "Z8K2": "Z40", "Z8K3": [ "Z20", "Z34369", "Z34370", "Z34371", "Z34372", "Z34373", "Z34374", "Z34376", "Z34377" ], "Z8K4": [ "Z14", "Z34368", "Z34823", "Z34824" ], "Z8K5": "Z34367" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "any boolean equal to" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "any()", "contains", "has", "includes", "at least one", "one or more" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Returns true if at least one element of a list of boolean is equal to the comparison; always returns false for empty lists" } ] } } 5r1d8752snlfee1vohh4obgsnwj5wiw Z34669 0 82204 272477 271611 2026-05-05T16:42:00Z YoshiRulz 10156 Correct en label 272477 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34669" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z11" }, "Z17K2": "Z34669K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "list" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z11", "Z17K2": "Z34669K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "delimiter" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z34673", "Z34674", "Z34675" ], "Z8K4": [ "Z14", "Z34672" ], "Z8K5": "Z34669" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "join list of Monolingual texts with delimiter" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 4dwaaa554ynzu2t99nnm3f712vmpywx Z34672 0 82207 272615 271604 2026-05-06T07:33:44Z Jsamwrites 938 272615 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34672" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z34669", "Z14K3": { "Z1K1": "Z16", "Z16K1": "Z610", "Z16K2": "def Z34669(Z34669K1, Z34669K2):\n text = \"\"\n language = Z34669K2[\"Z11K1\"]\n \n if Z34669K1:\n delimiter = Z34669K2[\"Z11K2\"] \n text = delimiter.join(t[\"Z11K2\"] for t in Z34669K1)\n\n return ZObject(\n {\n \"Z1K1\": \"Z9\",\n \"Z9K1\": \"Z11\"\n },\n Z11K1=language,\n Z11K2=text\n )" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "join list of monolingual texts with delimiter, py" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 3u4uyxivdme0csgbe1i2z4orhk54vue Z34673 0 82208 272616 271605 2026-05-06T07:34:16Z Jsamwrites 938 272616 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34673" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34669", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34669", "Z34669K1": [ "Z11" ], "Z34669K2": { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "," } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "join empty list-monolingual texts with delimiter" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } hptiwo2bxsf9xy2ak78a2tphzcloqdx Z34674 0 82209 272617 271607 2026-05-06T07:34:27Z Jsamwrites 938 272617 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34674" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34669", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34669", "Z34669K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Paris" } ], "Z34669K2": { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "," } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Paris" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "join 1 element list monolingual texts + delimit" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } oc9rn262u34404k1kbjcb4m5n6yuicu Z34675 0 82210 272618 271610 2026-05-06T07:34:36Z Jsamwrites 938 272618 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34675" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34669", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34669", "Z34669K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Paris" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Lyon" } ], "Z34669K2": { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": ", " } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Paris, Lyon" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "join 2 element list monolingual texts + delimit" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } qeft7q5ojtj0ulrkvyai5ssupgccvgg Z34678 0 82213 272443 272424 2026-05-05T15:36:36Z Jsamwrites 938 272443 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34678" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z33024", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z13464", "Z13464K1": "Z23753", "Z13464K2": { "Z1K1": "Z18", "Z18K1": "Z33024K1" }, "Z13464K3": { "Z1K1": "Z18", "Z18K1": "Z33024K2" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "label texts for Wikidata items, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } kf9o709bfi762llj1p3z413itaj1m4i 272444 272443 2026-05-05T15:39:15Z Jsamwrites 938 272444 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34678" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z33024", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z13464", "Z13464K1": "Z24766", "Z13464K2": { "Z1K1": "Z18", "Z18K1": "Z33024K1" }, "Z13464K3": { "Z1K1": "Z18", "Z18K1": "Z33024K2" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "label texts for Wikidata items, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } h89fr7ovkrseehp6qhcosgvxe2lqe7e 272445 272444 2026-05-05T15:40:41Z Jsamwrites 938 272445 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34678" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z33024", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z13464", "Z13464K1": "Z31676", "Z13464K2": { "Z1K1": "Z18", "Z18K1": "Z33024K1" }, "Z13464K3": { "Z1K1": "Z18", "Z18K1": "Z33024K2" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "label texts for Wikidata items, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 4c3zmvqhg6wz9e8vc7tswvew31tib2i 272454 272445 2026-05-05T15:53:11Z Jsamwrites 938 272454 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34678" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z33024", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z13464", "Z13464K1": "Z34811", "Z13464K2": { "Z1K1": "Z18", "Z18K1": "Z33024K1" }, "Z13464K3": { "Z1K1": "Z18", "Z18K1": "Z33024K2" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "label texts for Wikidata items, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } meqjdxy6axcmo81h4pyfkucmnj9y5l0 272622 272454 2026-05-06T08:38:20Z Jsamwrites 938 272622 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34678" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z33024", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z12755", "Z12755K1": { "Z1K1": "Z18", "Z18K1": "Z33024K1" } }, "Z802K2": [ "Z1", { "Z1K1": "Z7", "Z7K1": "Z13318", "Z13318K1": "Z34811", "Z13318K2": { "Z1K1": "Z7", "Z7K1": "Z811", "Z811K1": { "Z1K1": "Z18", "Z18K1": "Z33024K1" } }, "Z13318K3": { "Z1K1": "Z18", "Z18K1": "Z33024K2" } } ], "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z810", "Z810K1": { "Z1K1": "Z7", "Z7K1": "Z13318", "Z13318K1": "Z34811", "Z13318K2": { "Z1K1": "Z7", "Z7K1": "Z811", "Z811K1": { "Z1K1": "Z18", "Z18K1": "Z33024K1" } }, "Z13318K3": { "Z1K1": "Z18", "Z18K1": "Z33024K2" } }, "Z810K2": { "Z1K1": "Z7", "Z7K1": "Z14779", "Z14779K1": { "Z1K1": "Z18", "Z18K1": "" }, "Z14779K2": { "Z1K1": "Z7", "Z7K1": "Z812", "Z812K1": { "Z1K1": "Z18", "Z18K1": "Z33024K1" } }, "Z14779K3": { "Z1K1": "Z18", "Z18K1": "Z33024K2" } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "label texts for Wikidata items, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } cworbv1fexf2b9i7szjgk4ioqy3rsxp 272623 272622 2026-05-06T08:39:30Z Jsamwrites 938 272623 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34678" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z33024", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z12755", "Z12755K1": { "Z1K1": "Z18", "Z18K1": "Z33024K1" } }, "Z802K2": [ "Z1", { "Z1K1": "Z7", "Z7K1": "Z13318", "Z13318K1": "Z34811", "Z13318K2": { "Z1K1": "Z7", "Z7K1": "Z811", "Z811K1": { "Z1K1": "Z18", "Z18K1": "Z33024K1" } }, "Z13318K3": { "Z1K1": "Z18", "Z18K1": "Z33024K2" } } ], "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z810", "Z810K1": { "Z1K1": "Z7", "Z7K1": "Z13318", "Z13318K1": "Z34811", "Z13318K2": { "Z1K1": "Z7", "Z7K1": "Z811", "Z811K1": { "Z1K1": "Z18", "Z18K1": "Z33024K1" } }, "Z13318K3": { "Z1K1": "Z18", "Z18K1": "Z33024K2" } }, "Z810K2": { "Z1K1": "Z7", "Z7K1": "Z14779", "Z14779K1": "Z34811", "Z14779K2": { "Z1K1": "Z7", "Z7K1": "Z812", "Z812K1": { "Z1K1": "Z18", "Z18K1": "Z33024K1" } }, "Z14779K3": { "Z1K1": "Z18", "Z18K1": "Z33024K2" } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "label texts for Wikidata items, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } fj9jayc1ud6ugxc29by61fuuchr7ioy 272624 272623 2026-05-06T08:54:19Z Jsamwrites 938 272624 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34678" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z33024", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z12755", "Z12755K1": { "Z1K1": "Z18", "Z18K1": "Z33024K1" } }, "Z802K2": [ "Z1", { "Z1K1": "Z7", "Z7K1": "Z13318", "Z13318K1": "Z34811", "Z13318K2": { "Z1K1": "Z7", "Z7K1": "Z811", "Z811K1": { "Z1K1": "Z18", "Z18K1": "Z33024K1" } }, "Z13318K3": { "Z1K1": "Z18", "Z18K1": "Z33024K2" } } ], "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z810", "Z810K1": { "Z1K1": "Z7", "Z7K1": "Z13318", "Z13318K1": "Z34811", "Z13318K2": { "Z1K1": "Z7", "Z7K1": "Z811", "Z811K1": { "Z1K1": "Z18", "Z18K1": "Z33024K1" } }, "Z13318K3": { "Z1K1": "Z18", "Z18K1": "Z33024K2" } }, "Z810K2": { "Z1K1": "Z7", "Z7K1": "Z14779", "Z14779K1": "Z34811", "Z14779K2": { "Z1K1": "Z7", "Z7K1": "Z812", "Z812K1": { "Z1K1": "Z18", "Z18K1": "Z33024K1" } }, "Z14779K3": { "Z1K1": "Z7", "Z7K1": "Z14046", "Z14046K1": { "Z1K1": "Z18", "Z18K1": "Z33024K2" } } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "label texts for Wikidata items, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } o46ufqwbj9sm1pq0rd37qq7vsnqh21g 272625 272624 2026-05-06T08:56:18Z Jsamwrites 938 272625 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34678" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z33024", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z12755", "Z12755K1": { "Z1K1": "Z18", "Z18K1": "Z33024K1" } }, "Z802K2": [ "Z1", { "Z1K1": "Z7", "Z7K1": "Z13318", "Z13318K1": "Z34811", "Z13318K2": { "Z1K1": "Z7", "Z7K1": "Z811", "Z811K1": { "Z1K1": "Z18", "Z18K1": "Z33024K1" } }, "Z13318K3": { "Z1K1": "Z18", "Z18K1": "Z33024K2" } } ], "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z810", "Z810K1": { "Z1K1": "Z7", "Z7K1": "Z13318", "Z13318K1": "Z34811", "Z13318K2": { "Z1K1": "Z7", "Z7K1": "Z811", "Z811K1": { "Z1K1": "Z18", "Z18K1": "Z33024K1" } }, "Z13318K3": { "Z1K1": "Z18", "Z18K1": "Z33024K2" } }, "Z810K2": { "Z1K1": "Z7", "Z7K1": "Z14779", "Z14779K1": "Z33024", "Z14779K2": { "Z1K1": "Z7", "Z7K1": "Z812", "Z812K1": { "Z1K1": "Z18", "Z18K1": "Z33024K1" } }, "Z14779K3": { "Z1K1": "Z7", "Z7K1": "Z14046", "Z14046K1": { "Z1K1": "Z18", "Z18K1": "Z33024K2" } } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "label texts for Wikidata items, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 6z0u5pe5352h9wv3wr9tq9o1gkrp5js 272626 272625 2026-05-06T08:57:57Z Jsamwrites 938 272626 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34678" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z33024", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z12755", "Z12755K1": { "Z1K1": "Z18", "Z18K1": "Z33024K1" } }, "Z802K2": [ "Z1", { "Z1K1": "Z7", "Z7K1": "Z13318", "Z13318K1": "Z34811", "Z13318K2": { "Z1K1": "Z7", "Z7K1": "Z811", "Z811K1": { "Z1K1": "Z18", "Z18K1": "Z33024K1" } }, "Z13318K3": { "Z1K1": "Z18", "Z18K1": "Z33024K2" } } ], "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z810", "Z810K1": { "Z1K1": "Z7", "Z7K1": "Z13318", "Z13318K1": "Z34811", "Z13318K2": { "Z1K1": "Z7", "Z7K1": "Z811", "Z811K1": { "Z1K1": "Z18", "Z18K1": "Z33024K1" } }, "Z13318K3": { "Z1K1": "Z18", "Z18K1": "Z33024K2" } }, "Z810K2": { "Z1K1": "Z7", "Z7K1": "Z33024", "Z33024K1": { "Z1K1": "Z7", "Z7K1": "Z812", "Z812K1": { "Z1K1": "Z18", "Z18K1": "Z33024K1" } }, "Z33024K2": { "Z1K1": "Z18", "Z18K1": "Z33024K2" } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "label texts for Wikidata items, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 6grcpd89toqsj9pdy0ir8u105r08zle Z34688 0 82225 272629 271717 2026-05-06T09:25:06Z Jsamwrites 938 272629 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34688" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z33024", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z33024", "Z33024K1": { "Z1K1": "Z7", "Z7K1": "Z34641", "Z34641K1": { "Z1K1": "Z7", "Z7K1": "Z6821", "Z6821K1": { "Z1K1": "Z6091", "Z6091K1": "Q109" } } }, "Z33024K2": "Z1002" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z18646", "Z18646K2": [ "Z1", { "Z1K1": "Z7", "Z7K1": "Z31676", "Z31676K1": { "Z1K1": "Z6091", "Z6091K1": "Q11184" }, "Z31676K2": "Z1002" }, { "Z1K1": "Z7", "Z7K1": "Z31676", "Z31676K1": { "Z1K1": "Z6091", "Z6091K1": "Q12138" }, "Z31676K2": "Z1002" }, { "Z1K1": "Z7", "Z7K1": "Z31676", "Z31676K1": { "Z1K1": "Z6091", "Z6091K1": "Q1130275" }, "Z31676K2": "Z1002" } ], "Z18646K3": "Z889" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "monolingual text - property part of - February" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } lldvarg0470ako9dxtn6adv9yxf24sx Z34699 0 82266 272646 271832 2026-05-06T11:35:47Z Some helpful person 65824 272646 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34699" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34693", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34693", "Z34693K1": { "Z1K1": "Z7", "Z7K1": "Z33983", "Z33983K1": "[-7,\"str\",false]" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z18646", "Z18646K2": [ "Z1", { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16662" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "2" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "3377699720527872" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20837" } }, "str", "Z42" ], "Z18646K3": "Z13052" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "[-7,\"str\",false]" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } h78znmis3ypa3fc7q2e6oy6uitnojbu Wikifunctions talk:Status updates/2026-05-02 5 82333 272426 272407 2026-05-05T12:56:29Z Higa4 889 /* What should we count for Abstract Wikipedia */ 272426 wikitext text/x-wiki == What should we count for Abstract Wikipedia == In my opinion representative metrics for activity of Abstract Wikipedia are * How many monthly active contributors are there on Abstract Wikipedia? (currently 113, going down a bit from the record at launch, where 163 was reached.) * How many edits per month do we have on Abstract Wikipedia? The number of articles or fragments is not representative, as the functions used will not always give a proper sentence, and certainly not for all languages, even if no technical error is shown. [[User:HenkvD|HenkvD]] ([[User talk:HenkvD|talk]]) 12:21, 3 May 2026 (UTC) :I think there should be a count of articles fully rendering grouped by number of languages. With fully rendering I mean available implementations for all languages and also lexemes and forms of them for related items are available. So an article producing not an error and also not going to an fallback. To make sure the output makes sense I think a way to check the articles to be counted is needed. So far I am not sure what is the best way for it. [[User:Hogü-456|Hogü-456]] ([[User talk:Hogü-456|talk]]) 19:02, 4 May 2026 (UTC) ::[[WF:tests]] are of course useful but also can be misleading if the test cases are not sufficiently well-distributed over the sample space. [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 06:51, 5 May 2026 (UTC) In my opinion, Abstract Wikipedia is not yet at the stage of discussing maturity in terms of its own visible renderings (sentences), number of articles, number of edits, etc. At present, I think that the maturity of Wikifunctions and Wikidata items / lexemes should be used as a basic metric in the fragments of Abstract contents, although I don't know how they can be measured. The metrics for Wikifunctions should ultimately be language-neutral to the contributor of the abstract contents, for example: * Use of fragments in functions that do not contain any hard-coded lexemes or morphemes, including articles, be-verb, punctuation, etc. * Whether language fallback is implemented to obtain a language-independent fallback value (i.e., whether all that is required is to register the Wikidata item / lexeme for multilingualization to work). The metrics for Wikidata should be, for example, whether or not the clues for multi-language translation are converted into data as a graph structure as shown below. * Are lexemes decomposed into the minimum units that can be semantically translated and registered? * Are the associations between lexemes and items registered (such as {{P|5137}}, {{P|9970}}, etc.)? [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 12:56, 5 May 2026 (UTC) == usability metric == Seeing how many prose articles on other wikis got ported from abstract articles could be a proxy for what value editors are getting out of the project. I don't know if this is feasible currently. [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 16:50, 3 May 2026 (UTC) 81ogs06ef56lfeyaszrdhft1c6dq6oo Help:Rounding function table/Rational 12 82337 272505 272029 2026-05-05T20:25:32Z YoshiRulz 10156 Add another one to the comments 272505 wikitext text/x-wiki {| class="wikitable" |+ [[d:Q663208|Rounding]] functions for {{Z|19677}} |- ! colspan="3" | ! {{#function:Z21971|-3/2|}} ! {{#function:Z21971|-1/1|}}<br>{{#function:Z21971|-4/4|}} ! {{#function:Z21971|-3/4|}} ! {{#function:Z21971|-1/2|}}<br>{{#function:Z21971|-2/4|}} ! {{#function:Z21971|-1/3|}} ! {{#function:Z21971|0/1|}}<br>{{#function:Z21971|0/4|}} ! {{#function:Z21971|1/3|}} ! {{#function:Z21971|1/2|}}<br>{{#function:Z21971|2/4|}} ! {{#function:Z21971|3/4|}} ! {{#function:Z21971|1/1|}}<br>{{#function:Z21971|4/4|}} ! {{#function:Z21971|3/2|}} |- ! colspan="2" | {{nowrap|.# &rarr; &plusmn;&infin;}} ! &mdash; | colspan="11" | &mdash; |- ! colspan="2" rowspan="2" | {{nowrap|.# &rarr; 0}}<br><code>trunc</code><br><small>[[d:Q1080547|Q1080547]]</small> ! {{nowrap|(q) &rarr; q}}<br>&mdash; | colspan="11" | &mdash; |- ! {{nowrap|(q) &rarr; z}}<br>[[Z19682]] | {{#function:Z19682|-3/2}} | {{#function:Z19682|-1/1}}<br>{{#function:Z19682|-4/4}} | {{#function:Z19682|-3/4}} | {{#function:Z19682|-1/2}}<br>{{#function:Z19682|-2/4}} | {{#function:Z19682|-1/3}} | {{#function:Z19682|0/1}}<br>{{#function:Z19682|0/4}} | {{#function:Z19682|1/3}} | {{#function:Z19682|1/2}}<br>{{#function:Z19682|2/4}} | {{#function:Z19682|3/4}} | {{#function:Z19682|1/1}}<br>{{#function:Z19682|4/4}} | {{#function:Z19682|3/2}} |- ! colspan="2" | <code>frac</code><br><small>[[d:Q2366982|Q2366982]]</small> ! [[Z25432]] | {{#function:Z25432|-3/2}} | {{#function:Z25432|-1/1}}<br>{{#function:Z25432|-4/4}} | {{#function:Z25432|-3/4}} | {{#function:Z25432|-1/2}}<br>{{#function:Z25432|-2/4}} | {{#function:Z25432|-1/3}} | {{#function:Z25432|0/1}}<br>{{#function:Z25432|0/4}} | {{#function:Z25432|1/3}} | {{#function:Z25432|1/2}}<br>{{#function:Z25432|2/4}} | {{#function:Z25432|3/4}} | {{#function:Z25432|1/1}}<br>{{#function:Z25432|4/4}} | {{#function:Z25432|3/2}} |- ! colspan="2" rowspan="2" | {{nowrap|.# &rarr; +&infin;}}<br><code>ceil</code><br><small>[[d:Q12718884|Q12718884]]</small> ! {{nowrap|(q) &rarr; q}}<br>&mdash; | colspan="11" | &mdash; |- ! {{nowrap|(q) &rarr; z}}<br>[[Z20053]] | {{#function:Z20053|-3/2}} | {{#function:Z20053|-1/1}}<br>{{#function:Z20053|-4/4}} | {{#function:Z20053|-3/4}} | {{#function:Z20053|-1/2}}<br>{{#function:Z20053|-2/4}} | {{#function:Z20053|-1/3}} | {{#function:Z20053|0/1}}<br>{{#function:Z20053|0/4}} | {{#function:Z20053|1/3}} | {{#function:Z20053|1/2}}<br>{{#function:Z20053|2/4}} | {{#function:Z20053|3/4}} | {{#function:Z20053|1/1}}<br>{{#function:Z20053|4/4}} | {{#function:Z20053|3/2}} |- ! colspan="2" rowspan="2" | {{nowrap|.# &rarr; &minus;&infin;}}<br><code>floor</code><br><small>[[d:Q56860783|Q56860783]]</small> ! {{nowrap|(q) &rarr; q}}<br>&mdash; | colspan="11" | &mdash; |- ! {{nowrap|(q) &rarr; z}}<br>[[Z20032]] | {{#function:Z20032|-3/2}} | {{#function:Z20032|-1/1}}<br>{{#function:Z20032|-4/4}} | {{#function:Z20032|-3/4}} | {{#function:Z20032|-1/2}}<br>{{#function:Z20032|-2/4}} | {{#function:Z20032|-1/3}} | {{#function:Z20032|0/1}}<br>{{#function:Z20032|0/4}} | {{#function:Z20032|1/3}} | {{#function:Z20032|1/2}}<br>{{#function:Z20032|2/4}} | {{#function:Z20032|3/4}} | {{#function:Z20032|1/1}}<br>{{#function:Z20032|4/4}} | {{#function:Z20032|3/2}} |- ! rowspan="4" | <small>[[d:Q6583251|Q6583251]]</small> ! {{nowrap|.5 &rarr; &plusmn;&infin;}} ! &mdash; | colspan="11" | &mdash; |- ! {{nowrap|.5 &rarr; 0}} ! &mdash; | colspan="11" | &mdash; |- ! rowspan="2" | {{nowrap|.5 &rarr; 0 mod 2}}<br>IEEE 754 ! {{nowrap|(q) &rarr; q}}<br>&mdash; | colspan="11" | &mdash; |- ! {{nowrap|(q) &rarr; z}}<br>[[Z19841]] | {{#function:Z19841|-3/2}} | {{#function:Z19841|-1/1}}<br>{{#function:Z19841|-4/4}} | {{#function:Z19841|-3/4}} | {{#function:Z19841|-1/2}}<br>{{#function:Z19841|-2/4}} | {{#function:Z19841|-1/3}} | {{#function:Z19841|0/1}}<br>{{#function:Z19841|0/4}} | {{#function:Z19841|1/3}} | {{#function:Z19841|1/2}}<br>{{#function:Z19841|2/4}} | {{#function:Z19841|3/4}} | {{#function:Z19841|1/1}}<br>{{#function:Z19841|4/4}} | {{#function:Z19841|3/2}} |- ! colspan="14" | More info at [[w:en:Rounding#Comparison_of_approaches_for_rounding_to_an_integer|enwp:Rounding]] <!-- |- ! Z27765(q, 0)<br>Z27765(q, 1) | UNK<br>UNK | UNK<br>UNK | UNK<br>UNK | UNK<br>UNK | UNK<br>UNK |- ! Z27803(q, 0)<br>Z27803(q, 1) | UNK<br>UNK | UNK<br>UNK | UNK<br>UNK | UNK<br>UNK | UNK<br>UNK |- ! Z27705(q, 0)<br>Z27765(q, 1) | UNK<br>UNK | UNK<br>UNK | UNK<br>UNK | UNK<br>UNK | UNK<br>UNK |- ! Z27719(q, 0)<br>Z27719(q, 1) | UNK<br>UNK | UNK<br>UNK | UNK<br>UNK | UNK<br>UNK | UNK<br>UNK |- ! Z27699(q, 0)<br>Z27699(q, 1) | UNK<br>UNK | UNK<br>UNK | UNK<br>UNK | UNK<br>UNK | UNK<br>UNK |- ! Z19814(q, 0)<br>Z19814(q, 1) | UNK<br>UNK | UNK<br>UNK | UNK<br>UNK | UNK<br>UNK | UNK<br>UNK |- ! Z19800(q, 0)<br>Z19800(q, 1) | UNK<br>UNK | UNK<br>UNK | UNK<br>UNK | UNK<br>UNK | UNK<br>UNK --> <!-- |- ! Z27730(q, 0)<br>Z27730(q, 1) | UNK<br>UNK | UNK<br>UNK | UNK<br>UNK | UNK<br>UNK | UNK<br>UNK |- ! Z27762(q, 0)<br>Z27762(q, 1) | UNK<br>UNK | UNK<br>UNK | UNK<br>UNK | UNK<br>UNK | UNK<br>UNK --> <!-- |- ! Z21787(q, 0)<br>Z21787(q, 1) | UNK<br>UNK | UNK<br>UNK | UNK<br>UNK | UNK<br>UNK | UNK<br>UNK |- ! Z21100(q, 0)<br>Z21100(q, 1) | UNK<br>UNK | UNK<br>UNK | UNK<br>UNK | UNK<br>UNK | UNK<br>UNK |- ! Z21796(q, 0)<br>Z21796(q, 1) | UNK<br>UNK | UNK<br>UNK | UNK<br>UNK | UNK<br>UNK | UNK<br>UNK --> |- ! colspan="3" | {{Z|28645}} | &mdash; | &mdash; | &mdash; | &mdash; | &mdash; | {{#function:Z28645|0/1}}<br>{{#function:Z28645|0/4}} | {{#function:Z28645|1/3}} | {{#function:Z28645|1/2}}<br>{{#function:Z28645|2/4}} | {{#function:Z28645|3/4}} | {{#function:Z28645|1/1}}<br>{{#function:Z28645|4/4}} | &mdash; |} 0f48sku3tp4iaxewzaigamfsn3l0brz Help:Rounding function table/float64 12 82338 272544 272109 2026-05-05T23:10:23Z YoshiRulz 10156 Add some more functions 272544 wikitext text/x-wiki {| class="wikitable" |+ [[d:Q663208|Rounding]] functions for {{Z|20838}} |- ! colspan="3" | ! {{#function:Z21956|-Infinity|}} ! {{#function:Z21956|-1.5|}} ! {{#function:Z21956|-1.0|}} ! {{#function:Z21956|-0.75|}} ! {{#function:Z21956|-0.5|}} ! {{#function:Z21956|-0.3|}} ! {{#function:Z21956|0.0|}}<br>{{#function:Z21956|-0.0|}} ! {{#function:Z21956|0.3|}} ! {{#function:Z21956|0.5|}} ! {{#function:Z21956|0.75|}} ! {{#function:Z21956|1.0|}} ! {{#function:Z21956|1.5|}} ! {{#function:Z21956|Infinity|}} ! {{#function:Z21956|NaN|}} |- ! colspan="2" | {{nowrap|.# &rarr; &plusmn;&infin;}} ! &mdash; | colspan="14" | &mdash; |- ! colspan="2" rowspan="2" | {{nowrap|.# &rarr; 0}}<br><code>trunc</code><br><small>[[d:Q1080547|Q1080547]]</small> ! {{nowrap|(f) &rarr; f}}<br>&mdash; | colspan="14" | &mdash; |- ! {{nowrap|(f) &rarr; z}}<br>[[Z21534]] | {{#function:Z21534|-Infinity}} | {{#function:Z21534|-1.5}} | {{#function:Z21534|-1.0}} | {{#function:Z21534|-0.75}} | {{#function:Z21534|-0.5}} | {{#function:Z21534|-0.3}} | {{#function:Z21534|0.0}}<br>{{#function:Z21534|-0.0}} | {{#function:Z21534|0.3}} | {{#function:Z21534|0.5}} | {{#function:Z21534|0.75}} | {{#function:Z21534|1.0}} | {{#function:Z21534|1.5}} | {{#function:Z21534|Infinity}} | {{#function:Z21534|NaN}} |- ! colspan="2" | <code>frac</code><br><small>[[d:Q2366982|Q2366982]]</small> ! &mdash; | colspan="14" | &mdash; |- ! colspan="2" rowspan="2" | {{nowrap|.# &rarr; +&infin;}}<br><code>ceil</code><br><small>[[d:Q12718884|Q12718884]]</small> ! {{nowrap|(f) &rarr; f}}<br>[[Z21043]] | {{#function:Z21043|-Infinity}} | {{#function:Z21043|-1.5}} | {{#function:Z21043|-1.0}} | {{#function:Z21043|-0.75}} | {{#function:Z21043|-0.5}} | {{#function:Z21043|-0.3}} | {{#function:Z21043|0.0}}<br>{{#function:Z21043|-0.0}} | {{#function:Z21043|0.3}} | {{#function:Z21043|0.5}} | {{#function:Z21043|0.75}} | {{#function:Z21043|1.0}} | {{#function:Z21043|1.5}} | {{#function:Z21043|Infinity}} | {{#function:Z21043|NaN}} |- ! {{nowrap|(f) &rarr; z}}<br>&mdash; | colspan="14" | &mdash; |- ! colspan="2" rowspan="2" | {{nowrap|.# &rarr; &minus;&infin;}}<br><code>floor</code><br><small>[[d:Q56860783|Q56860783]]</small> ! {{nowrap|(f) &rarr; f}}<br>&mdash; | colspan="14" | &mdash; |- ! {{nowrap|(f) &rarr; z}}<br>[[Z20841]] | {{#function:Z20841|-Infinity}} | {{#function:Z20841|-1.5}} | {{#function:Z20841|-1.0}} | {{#function:Z20841|-0.75}} | {{#function:Z20841|-0.5}} | {{#function:Z20841|-0.3}} | {{#function:Z20841|0.0}}<br>{{#function:Z20841|-0.0}} | {{#function:Z20841|0.3}} | {{#function:Z20841|0.5}} | {{#function:Z20841|0.75}} | {{#function:Z20841|1.0}} | {{#function:Z20841|1.5}} | {{#function:Z20841|Infinity}} | {{#function:Z20841|NaN}} |- ! rowspan="4" | <small>[[d:Q6583251|Q6583251]]</small> ! {{nowrap|.5 &rarr; &plusmn;&infin;}} ! &mdash; | colspan="14" | &mdash; |- ! {{nowrap|.5 &rarr; 0}} ! &mdash; | colspan="14" | &mdash; |- ! rowspan="2" | {{nowrap|.5 &rarr; 0 mod 2}}<br>IEEE 754 ! {{nowrap|(f) &rarr; f}}<br>[[Z26304]] | {{#function:Z26304|-Infinity}} | {{#function:Z26304|-1.5}} | {{#function:Z26304|-1.0}} | {{#function:Z26304|-0.75}} | {{#function:Z26304|-0.5}} | {{#function:Z26304|-0.3}} | {{#function:Z26304|0.0}}<br>{{#function:Z26304|-0.0}} | {{#function:Z26304|0.3}} | {{#function:Z26304|0.5}} | {{#function:Z26304|0.75}} | {{#function:Z26304|1.0}} | {{#function:Z26304|1.5}} | {{#function:Z26304|Infinity}} | {{#function:Z26304|NaN}} |- ! {{nowrap|(f) &rarr; z}}<br>[[Z26315]] | {{#function:Z26315|-Infinity}} | {{#function:Z26315|-1.5}} | {{#function:Z26315|-1.0}} | {{#function:Z26315|-0.75}} | {{#function:Z26315|-0.5}} | {{#function:Z26315|-0.3}} | {{#function:Z26315|0.0}}<br>{{#function:Z26315|-0.0}} | {{#function:Z26315|0.3}} | {{#function:Z26315|0.5}} | {{#function:Z26315|0.75}} | {{#function:Z26315|1.0}} | {{#function:Z26315|1.5}} | {{#function:Z26315|Infinity}} | {{#function:Z26315|NaN}} |- ! colspan="17" | More info at [[w:en:Rounding#Comparison_of_approaches_for_rounding_to_an_integer|enwp:Rounding]] <!-- |- ! Z21047(q, 0)<br>Z21047(q, 1) | UNK | UNK | UNK | UNK | UNK | UNK | UNK<br>UNK | UNK | UNK | UNK | UNK | UNK | UNK | UNK --> <!-- |- ! Z33672(q, 0)<br>Z33672(q, 1) | UNK | UNK | UNK | UNK | UNK | UNK | UNK<br>UNK | UNK | UNK | UNK | UNK | UNK | UNK | UNK |- ! Z21000(q, 0)<br>Z21000(q, 1) | UNK | UNK | UNK | UNK | UNK | UNK | UNK<br>UNK | UNK | UNK | UNK | UNK | UNK | UNK | UNK --> |- ! colspan="3" | {{Z|21071}} | {{#function:Z21071|-Infinity}} | {{#function:Z21071|-1.5}} | {{#function:Z21071|-1.0}} | {{#function:Z21071|-0.75}} | {{#function:Z21071|-0.5}} | {{#function:Z21071|-0.3}} | {{#function:Z21071|0.0}}<br>{{#function:Z21071|-0.0}} | {{#function:Z21071|0.3}} | {{#function:Z21071|0.5}} | {{#function:Z21071|0.75}} | {{#function:Z21071|1.0}} | {{#function:Z21071|1.5}} | {{#function:Z21071|Infinity}} | {{#function:Z21071|NaN}} |- ! colspan="3" | {{Z|21148}} | {{#function:Z21148|-Infinity}} | {{#function:Z21148|-1.5}} | {{#function:Z21148|-1.0}} | {{#function:Z21148|-0.75}} | {{#function:Z21148|-0.5}} | {{#function:Z21148|-0.3}} | {{#function:Z21148|0.0}}<br>{{#function:Z21148|-0.0}} | {{#function:Z21148|0.3}} | {{#function:Z21148|0.5}} | {{#function:Z21148|0.75}} | {{#function:Z21148|1.0}} | {{#function:Z21148|1.5}} | {{#function:Z21148|Infinity}} | {{#function:Z21148|NaN}} |- ! colspan="3" | {{Z|Z21158}} | colspan="14" | &mdash; |} phvxg02wvhnn7zrepnzmx8eizf3rjpo 272545 272544 2026-05-05T23:11:30Z YoshiRulz 10156 Ugh shrink this cell while it's misbehaving 272545 wikitext text/x-wiki {| class="wikitable" |+ [[d:Q663208|Rounding]] functions for {{Z|20838}} |- ! colspan="3" | ! {{#function:Z21956|-Infinity|}} ! {{#function:Z21956|-1.5|}} ! {{#function:Z21956|-1.0|}} ! {{#function:Z21956|-0.75|}} ! {{#function:Z21956|-0.5|}} ! {{#function:Z21956|-0.3|}} ! {{#function:Z21956|0.0|}}<br>{{#function:Z21956|-0.0|}} ! {{#function:Z21956|0.3|}} ! {{#function:Z21956|0.5|}} ! {{#function:Z21956|0.75|}} ! {{#function:Z21956|1.0|}} ! {{#function:Z21956|1.5|}} ! {{#function:Z21956|Infinity|}} ! {{#function:Z21956|NaN|}} |- ! colspan="2" | {{nowrap|.# &rarr; &plusmn;&infin;}} ! &mdash; | colspan="14" | &mdash; |- ! colspan="2" rowspan="2" | {{nowrap|.# &rarr; 0}}<br><code>trunc</code><br><small>[[d:Q1080547|Q1080547]]</small> ! {{nowrap|(f) &rarr; f}}<br>&mdash; | colspan="14" | &mdash; |- ! {{nowrap|(f) &rarr; z}}<br>[[Z21534]] | <span style="font-size: 0.1em;">{{#function:Z21534|-Infinity}}</style> | {{#function:Z21534|-1.5}} | {{#function:Z21534|-1.0}} | {{#function:Z21534|-0.75}} | {{#function:Z21534|-0.5}} | {{#function:Z21534|-0.3}} | {{#function:Z21534|0.0}}<br>{{#function:Z21534|-0.0}} | {{#function:Z21534|0.3}} | {{#function:Z21534|0.5}} | {{#function:Z21534|0.75}} | {{#function:Z21534|1.0}} | {{#function:Z21534|1.5}} | {{#function:Z21534|Infinity}} | {{#function:Z21534|NaN}} |- ! colspan="2" | <code>frac</code><br><small>[[d:Q2366982|Q2366982]]</small> ! &mdash; | colspan="14" | &mdash; |- ! colspan="2" rowspan="2" | {{nowrap|.# &rarr; +&infin;}}<br><code>ceil</code><br><small>[[d:Q12718884|Q12718884]]</small> ! {{nowrap|(f) &rarr; f}}<br>[[Z21043]] | {{#function:Z21043|-Infinity}} | {{#function:Z21043|-1.5}} | {{#function:Z21043|-1.0}} | {{#function:Z21043|-0.75}} | {{#function:Z21043|-0.5}} | {{#function:Z21043|-0.3}} | {{#function:Z21043|0.0}}<br>{{#function:Z21043|-0.0}} | {{#function:Z21043|0.3}} | {{#function:Z21043|0.5}} | {{#function:Z21043|0.75}} | {{#function:Z21043|1.0}} | {{#function:Z21043|1.5}} | {{#function:Z21043|Infinity}} | {{#function:Z21043|NaN}} |- ! {{nowrap|(f) &rarr; z}}<br>&mdash; | colspan="14" | &mdash; |- ! colspan="2" rowspan="2" | {{nowrap|.# &rarr; &minus;&infin;}}<br><code>floor</code><br><small>[[d:Q56860783|Q56860783]]</small> ! {{nowrap|(f) &rarr; f}}<br>&mdash; | colspan="14" | &mdash; |- ! {{nowrap|(f) &rarr; z}}<br>[[Z20841]] | {{#function:Z20841|-Infinity}} | {{#function:Z20841|-1.5}} | {{#function:Z20841|-1.0}} | {{#function:Z20841|-0.75}} | {{#function:Z20841|-0.5}} | {{#function:Z20841|-0.3}} | {{#function:Z20841|0.0}}<br>{{#function:Z20841|-0.0}} | {{#function:Z20841|0.3}} | {{#function:Z20841|0.5}} | {{#function:Z20841|0.75}} | {{#function:Z20841|1.0}} | {{#function:Z20841|1.5}} | {{#function:Z20841|Infinity}} | {{#function:Z20841|NaN}} |- ! rowspan="4" | <small>[[d:Q6583251|Q6583251]]</small> ! {{nowrap|.5 &rarr; &plusmn;&infin;}} ! &mdash; | colspan="14" | &mdash; |- ! {{nowrap|.5 &rarr; 0}} ! &mdash; | colspan="14" | &mdash; |- ! rowspan="2" | {{nowrap|.5 &rarr; 0 mod 2}}<br>IEEE 754 ! {{nowrap|(f) &rarr; f}}<br>[[Z26304]] | {{#function:Z26304|-Infinity}} | {{#function:Z26304|-1.5}} | {{#function:Z26304|-1.0}} | {{#function:Z26304|-0.75}} | {{#function:Z26304|-0.5}} | {{#function:Z26304|-0.3}} | {{#function:Z26304|0.0}}<br>{{#function:Z26304|-0.0}} | {{#function:Z26304|0.3}} | {{#function:Z26304|0.5}} | {{#function:Z26304|0.75}} | {{#function:Z26304|1.0}} | {{#function:Z26304|1.5}} | {{#function:Z26304|Infinity}} | {{#function:Z26304|NaN}} |- ! {{nowrap|(f) &rarr; z}}<br>[[Z26315]] | {{#function:Z26315|-Infinity}} | {{#function:Z26315|-1.5}} | {{#function:Z26315|-1.0}} | {{#function:Z26315|-0.75}} | {{#function:Z26315|-0.5}} | {{#function:Z26315|-0.3}} | {{#function:Z26315|0.0}}<br>{{#function:Z26315|-0.0}} | {{#function:Z26315|0.3}} | {{#function:Z26315|0.5}} | {{#function:Z26315|0.75}} | {{#function:Z26315|1.0}} | {{#function:Z26315|1.5}} | {{#function:Z26315|Infinity}} | {{#function:Z26315|NaN}} |- ! colspan="17" | More info at [[w:en:Rounding#Comparison_of_approaches_for_rounding_to_an_integer|enwp:Rounding]] <!-- |- ! Z21047(q, 0)<br>Z21047(q, 1) | UNK | UNK | UNK | UNK | UNK | UNK | UNK<br>UNK | UNK | UNK | UNK | UNK | UNK | UNK | UNK --> <!-- |- ! Z33672(q, 0)<br>Z33672(q, 1) | UNK | UNK | UNK | UNK | UNK | UNK | UNK<br>UNK | UNK | UNK | UNK | UNK | UNK | UNK | UNK |- ! Z21000(q, 0)<br>Z21000(q, 1) | UNK | UNK | UNK | UNK | UNK | UNK | UNK<br>UNK | UNK | UNK | UNK | UNK | UNK | UNK | UNK --> |- ! colspan="3" | {{Z|21071}} | {{#function:Z21071|-Infinity}} | {{#function:Z21071|-1.5}} | {{#function:Z21071|-1.0}} | {{#function:Z21071|-0.75}} | {{#function:Z21071|-0.5}} | {{#function:Z21071|-0.3}} | {{#function:Z21071|0.0}}<br>{{#function:Z21071|-0.0}} | {{#function:Z21071|0.3}} | {{#function:Z21071|0.5}} | {{#function:Z21071|0.75}} | {{#function:Z21071|1.0}} | {{#function:Z21071|1.5}} | {{#function:Z21071|Infinity}} | {{#function:Z21071|NaN}} |- ! colspan="3" | {{Z|21148}} | {{#function:Z21148|-Infinity}} | {{#function:Z21148|-1.5}} | {{#function:Z21148|-1.0}} | {{#function:Z21148|-0.75}} | {{#function:Z21148|-0.5}} | {{#function:Z21148|-0.3}} | {{#function:Z21148|0.0}}<br>{{#function:Z21148|-0.0}} | {{#function:Z21148|0.3}} | {{#function:Z21148|0.5}} | {{#function:Z21148|0.75}} | {{#function:Z21148|1.0}} | {{#function:Z21148|1.5}} | {{#function:Z21148|Infinity}} | {{#function:Z21148|NaN}} |- ! colspan="3" | {{Z|Z21158}} | colspan="14" | &mdash; |} rkjl3dyht6r9a9e0wlxz7hk4k6eecm9 272546 272545 2026-05-05T23:13:46Z YoshiRulz 10156 Shrink hex cells 272546 wikitext text/x-wiki {| class="wikitable" |+ [[d:Q663208|Rounding]] functions for {{Z|20838}} |- ! colspan="3" | ! {{#function:Z21956|-Infinity|}} ! {{#function:Z21956|-1.5|}} ! {{#function:Z21956|-1.0|}} ! {{#function:Z21956|-0.75|}} ! {{#function:Z21956|-0.5|}} ! {{#function:Z21956|-0.3|}} ! {{#function:Z21956|0.0|}}<br>{{#function:Z21956|-0.0|}} ! {{#function:Z21956|0.3|}} ! {{#function:Z21956|0.5|}} ! {{#function:Z21956|0.75|}} ! {{#function:Z21956|1.0|}} ! {{#function:Z21956|1.5|}} ! {{#function:Z21956|Infinity|}} ! {{#function:Z21956|NaN|}} |- ! colspan="2" | {{nowrap|.# &rarr; &plusmn;&infin;}} ! &mdash; | colspan="14" | &mdash; |- ! colspan="2" rowspan="2" | {{nowrap|.# &rarr; 0}}<br><code>trunc</code><br><small>[[d:Q1080547|Q1080547]]</small> ! {{nowrap|(f) &rarr; f}}<br>&mdash; | colspan="14" | &mdash; |- ! {{nowrap|(f) &rarr; z}}<br>[[Z21534]] | <span style="font-size: 0.1em;">{{#function:Z21534|-Infinity}}</style> | {{#function:Z21534|-1.5}} | {{#function:Z21534|-1.0}} | {{#function:Z21534|-0.75}} | {{#function:Z21534|-0.5}} | {{#function:Z21534|-0.3}} | {{#function:Z21534|0.0}}<br>{{#function:Z21534|-0.0}} | {{#function:Z21534|0.3}} | {{#function:Z21534|0.5}} | {{#function:Z21534|0.75}} | {{#function:Z21534|1.0}} | {{#function:Z21534|1.5}} | {{#function:Z21534|Infinity}} | {{#function:Z21534|NaN}} |- ! colspan="2" | <code>frac</code><br><small>[[d:Q2366982|Q2366982]]</small> ! &mdash; | colspan="14" | &mdash; |- ! colspan="2" rowspan="2" | {{nowrap|.# &rarr; +&infin;}}<br><code>ceil</code><br><small>[[d:Q12718884|Q12718884]]</small> ! {{nowrap|(f) &rarr; f}}<br>[[Z21043]] | {{#function:Z21043|-Infinity}} | {{#function:Z21043|-1.5}} | {{#function:Z21043|-1.0}} | {{#function:Z21043|-0.75}} | {{#function:Z21043|-0.5}} | {{#function:Z21043|-0.3}} | {{#function:Z21043|0.0}}<br>{{#function:Z21043|-0.0}} | {{#function:Z21043|0.3}} | {{#function:Z21043|0.5}} | {{#function:Z21043|0.75}} | {{#function:Z21043|1.0}} | {{#function:Z21043|1.5}} | {{#function:Z21043|Infinity}} | {{#function:Z21043|NaN}} |- ! {{nowrap|(f) &rarr; z}}<br>&mdash; | colspan="14" | &mdash; |- ! colspan="2" rowspan="2" | {{nowrap|.# &rarr; &minus;&infin;}}<br><code>floor</code><br><small>[[d:Q56860783|Q56860783]]</small> ! {{nowrap|(f) &rarr; f}}<br>&mdash; | colspan="14" | &mdash; |- ! {{nowrap|(f) &rarr; z}}<br>[[Z20841]] | {{#function:Z20841|-Infinity}} | {{#function:Z20841|-1.5}} | {{#function:Z20841|-1.0}} | {{#function:Z20841|-0.75}} | {{#function:Z20841|-0.5}} | {{#function:Z20841|-0.3}} | {{#function:Z20841|0.0}}<br>{{#function:Z20841|-0.0}} | {{#function:Z20841|0.3}} | {{#function:Z20841|0.5}} | {{#function:Z20841|0.75}} | {{#function:Z20841|1.0}} | {{#function:Z20841|1.5}} | {{#function:Z20841|Infinity}} | {{#function:Z20841|NaN}} |- ! rowspan="4" | <small>[[d:Q6583251|Q6583251]]</small> ! {{nowrap|.5 &rarr; &plusmn;&infin;}} ! &mdash; | colspan="14" | &mdash; |- ! {{nowrap|.5 &rarr; 0}} ! &mdash; | colspan="14" | &mdash; |- ! rowspan="2" | {{nowrap|.5 &rarr; 0 mod 2}}<br>IEEE 754 ! {{nowrap|(f) &rarr; f}}<br>[[Z26304]] | {{#function:Z26304|-Infinity}} | {{#function:Z26304|-1.5}} | {{#function:Z26304|-1.0}} | {{#function:Z26304|-0.75}} | {{#function:Z26304|-0.5}} | {{#function:Z26304|-0.3}} | {{#function:Z26304|0.0}}<br>{{#function:Z26304|-0.0}} | {{#function:Z26304|0.3}} | {{#function:Z26304|0.5}} | {{#function:Z26304|0.75}} | {{#function:Z26304|1.0}} | {{#function:Z26304|1.5}} | {{#function:Z26304|Infinity}} | {{#function:Z26304|NaN}} |- ! {{nowrap|(f) &rarr; z}}<br>[[Z26315]] | {{#function:Z26315|-Infinity}} | {{#function:Z26315|-1.5}} | {{#function:Z26315|-1.0}} | {{#function:Z26315|-0.75}} | {{#function:Z26315|-0.5}} | {{#function:Z26315|-0.3}} | {{#function:Z26315|0.0}}<br>{{#function:Z26315|-0.0}} | {{#function:Z26315|0.3}} | {{#function:Z26315|0.5}} | {{#function:Z26315|0.75}} | {{#function:Z26315|1.0}} | {{#function:Z26315|1.5}} | {{#function:Z26315|Infinity}} | {{#function:Z26315|NaN}} |- ! colspan="17" | More info at [[w:en:Rounding#Comparison_of_approaches_for_rounding_to_an_integer|enwp:Rounding]] <!-- |- ! Z21047(q, 0)<br>Z21047(q, 1) | UNK | UNK | UNK | UNK | UNK | UNK | UNK<br>UNK | UNK | UNK | UNK | UNK | UNK | UNK | UNK --> <!-- |- ! Z33672(q, 0)<br>Z33672(q, 1) | UNK | UNK | UNK | UNK | UNK | UNK | UNK<br>UNK | UNK | UNK | UNK | UNK | UNK | UNK | UNK |- ! Z21000(q, 0)<br>Z21000(q, 1) | UNK | UNK | UNK | UNK | UNK | UNK | UNK<br>UNK | UNK | UNK | UNK | UNK | UNK | UNK | UNK --> |- ! colspan="3" | {{Z|21071}} | {{#function:Z21071|-Infinity}} | {{#function:Z21071|-1.5}} | {{#function:Z21071|-1.0}} | {{#function:Z21071|-0.75}} | {{#function:Z21071|-0.5}} | {{#function:Z21071|-0.3}} | {{#function:Z21071|0.0}}<br>{{#function:Z21071|-0.0}} | {{#function:Z21071|0.3}} | {{#function:Z21071|0.5}} | {{#function:Z21071|0.75}} | {{#function:Z21071|1.0}} | {{#function:Z21071|1.5}} | {{#function:Z21071|Infinity}} | {{#function:Z21071|NaN}} |- ! colspan="3" | {{Z|21148}} | <small>{{#function:Z21148|-Infinity}}</small> | <small>{{#function:Z21148|-1.5}}</small> | <small>{{#function:Z21148|-1.0}}</small> | <small>{{#function:Z21148|-0.75}}</small> | <small>{{#function:Z21148|-0.5}}</small> | <small>{{#function:Z21148|-0.3}}</small> | <small>{{#function:Z21148|0.0}}</small><br><small>{{#function:Z21148|-0.0}}</small> | <small>{{#function:Z21148|0.3}}</small> | <small>{{#function:Z21148|0.5}}</small> | <small>{{#function:Z21148|0.75}}</small> | <small>{{#function:Z21148|1.0}}</small> | <small>{{#function:Z21148|1.5}}</small> | <small>{{#function:Z21148|Infinity}}</small> | <small>{{#function:Z21148|NaN}}</small> |- ! colspan="3" | {{Z|Z21158}} | colspan="14" | &mdash; |} e6qe6deihhhbi6gnn9tnh5ieu5lwa33 Wikifunctions:Status updates/2026-05-02/de 4 82349 272635 272420 2026-05-06T10:19:40Z Ameisenigel 44 Created page with "Schließlich haben wir den Typ im Filterfeld der Spezialseite ListObjectsByType in Anführungszeichen gesetzt, um in Fällen wie "Alle Objekte vom Typ 'Typ' (Z4)" - [[$1|siehe Beispiel]] ($2) für mehr Klarheit zu sorgen, und die Sprachauswahl zeigt nun auch für nicht von MediaWiki unterstützte Sprachen den Namen der ausgewählten Sprache korrekt an ($3)." 272635 wikitext text/x-wiki <languages/> {{Wikifunctions updates | prevlabel = Vorheriges Update | prev = 2026-04-25 | nextlabel = Nächstes Update | next = }} <span id="Request_for_input:_what_should_we_count_for_Abstract_Wikipedia"></span> === Bitte um Anregungen: Was sollten wir für die Abstrakte Wikipedia zählen === Wir möchten die Entwicklung der Abstrakten Wikipedia sichtbar machen und bitten daher um Anregungen: Welche Kennzahlen zu Seiten in der Abstrakten Wikipedia hältst du für wichtig? Hier sind ein paar Ideen für Kennzahlen, aber wir sind sicher, dass dir bessere einfallen werden: * Wie viele Artikel gibt es in der Abstrakten Wikipedia? (Zum Zeitpunkt der Erstellung dieses Newsletters 1203, eine Zahl, die auf der Startseite der Abstrakten Wikipedia sichtbar veröffentlicht ist.) * Wie viele monatlich aktive Beitragende gibt es in der Abstrakten Wikipedia? (Derzeit 113, ein leichter Rückgang gegenüber dem Rekordwert von 163 zum Start.) * Wie viele Bearbeitungen pro Monat gibt es in der Abstrakten Wikipedia? * Wie viele Fragmente gibt es? (Derzeit 3410) Wie viele Fragmente enthält ein Artikel durchschnittlich? (Derzeit etwa 2,8) * Welche Fragmente werden am häufigsten verwendet? ({{Z|Z32123}} 1452 Mal, gefolgt von {{Z|Z27868}} 736 Mal und {{Z|Z29749}} 650 Mal) * Wie viele Artikel in wie vielen Sprachen sind tatsächlich vollständig und fehlerfrei verfügbar? * Wie viele davon existieren derzeit nicht in den jeweiligen Wikipedias? * Wie viele Bytes an Ausgabetext werden dadurch erzeugt? Wir sind jedoch überzeugt, dass dir weitere Vorschläge einfallen werden, und du hast vielleicht auch Gedanken darüber, welche dieser Kennzahlen man im Auge behalten sollte, um ein gesundes Wachstum zu erfassen. Teile uns deine Meinung mit! <span id="Recent_Changes_in_the_software"></span> === Letzte Änderungen an der Software === In den vergangenen zwei Wochen gab es mehrere Aktualisierungen zur Verbesserung der Benutzerfreundlichkeit und Verständlichkeit von der Abstrakten Wikipedia und Wikifunctions. Die Such- und Entdeckungsfunktionen wurden verbessert, sodass Beitragende Inhalte leichter finden und erkennen können. In der Abstrakten Wikipedia werden nun neben den Suchergebnissen Vorschaubilder der Wikidata-Entitäten angezeigt (sofern verfügbar), was die visuelle Identifizierung von Entitäten erleichtert ([[:phab:T423464|T423464]]). Darüber hinaus wurde der Algorithmus für die Suche von Bezeichnungen aktualisiert, um sicherzustellen, dass exakte Übereinstimmungen immer als erstes Ergebnis angezeigt werden. Dies behebt Fälle, in denen bekannte Objekte oder Funktionen schwer zu finden waren ([[:phab:T424211|T424211]]). Wir haben außerdem eine benutzerfreundlichere Methode für Communitys eingeführt, um empfohlene Funktionen zu konfigurieren. Bisher wurden die vorgeschlagenen Funktionen für eingebettete Fragmente von Wikifunctions und der Abstrakten Wikipedia über JSON-Seiten (MediaWiki:Wikilambda-suggested-functions.json und MediaWiki:Abstractwiki-suggested-functions.json) verwaltet. Dies wurde nun durch die Konfiguration über die Spezialseite Community-Konfiguration ersetzt, wodurch die Verwaltung dieser Empfehlungen für Communitys vereinfacht wird ([[:phab:T394410|T394410]]). Wir haben außerdem mehrere Fehler behoben und die Darstellung verbessert. Ein Fehler im Testergebnis-Caching-System wurde behoben, der dazu führte, dass Tests fälschlicherweise als fehlgeschlagen angezeigt wurden ([[:phab:T422300|T422300]]). Ein Fehler in der Kopier-/Einfügefunktion, der beim Kopieren von Blöcken mit undefinierten Referenzen gelegentlich Probleme verursachte, wurde ebenfalls behoben. Eine weitere Korrektur stellt sicher, dass beim Veröffentlichen von Funktionsdefinitionsänderungen verbundene Implementierungen und Tests bei Bedarf ordnungsgemäß getrennt werden. Im Hinblick auf die verbesserte Darstellung wurde die Formatierung bei Kompositionen optimiert, sodass Zeilenumbrüche nun an Worttrennern erfolgen ([[:phab:T421959|T421959]]). Außerdem wurde ein Fehler behoben, um sicherzustellen, dass die Bezeichnung Typisierte Liste beim Seitenaufbau geladen und nicht als ZID angezeigt wird ([[:phab:T422094|T422094]]). Und in der Abstrakten Wikipedia wurde die Inhaltsdarstellung in der Vorschau verbessert. Die Vorschau fügt nun keine unerwünschten Zeilenabstände mehr ein, wenn Textfragmente als Absätze definiert werden (<nowiki><p></nowiki>), was zu einer präziseren Formatierung führt ([[:phab:T424041|T424041]]). Schließlich haben wir den Typ im Filterfeld der Spezialseite ListObjectsByType in Anführungszeichen gesetzt, um in Fällen wie "Alle Objekte vom Typ 'Typ' (Z4)" - [[Special:ListObjectsByType/Z4|siehe Beispiel]] ([[:phab:T377649|T377649]]) für mehr Klarheit zu sorgen, und die Sprachauswahl zeigt nun auch für nicht von MediaWiki unterstützte Sprachen den Namen der ausgewählten Sprache korrekt an ([[:phab:T417211|T417211]]). <div lang="en" dir="ltr" class="mw-content-ltr"> === Updates about V2 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> We have reverted one change related to the recent deployment of "Composition Language v2" (which was introduced in the [[Special:MyLanguage/Wikifunctions:Status updates/2026-03-11|11 March newsletter]]). Prior to v2, arguments going to code implementations were generally fully resolved. Updates related to v2 changed that, so that arguments were only resolved at the top level; nested parts of arguments didn't necessarily get resolved. The reversion means that once again, arguments going to code implementations will be fully resolved. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> This makes sense as a default, because once an argument gets passed to a code implementation, it's impossible to explicitly ask for the resolution of any part of it. However, there is also a competing principle that, in general, arguments are not guaranteed to present themselves as literals (or as references) all the time, so all implementations should ideally allow for both forms of arguments coming in, by using equality functions that can recognize when a reference and a literal are equivalent. Since this is currently difficult or impossible in code implementations, we decided this reversion is the best way to go for now. </div> <div lang="en" dir="ltr" class="mw-content-ltr"> === Volunteers’ Corner on May 11 === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> The next Volunteers’ Corner will be on [https://zonestamp.toolforge.org/1778520600 Monday, 11 May 2026 at 17:30 UTC] (moved a week due to the [[:mw:Special:MyLanguage/Wikimedia Hackathon 2026|Wikimedia Hackathon]]). We plan to have the following agenda: there will be time to ask questions and discuss all matters arising. 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: 81 new Functions === </div> <div lang="en" dir="ltr" class="mw-content-ltr"> This week we had 81 new functions. 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|Z33778}} * {{Z|Z33780}} * {{Z|Z33785}} * {{Z|Z33788}} * {{Z|Z33797}} * {{Z|Z33808}} * {{Z|Z33818}} * {{Z|Z33823}} * {{Z|Z33828}} * {{Z|Z33831}} * {{Z|Z33836}} * {{Z|Z33842}} * {{Z|Z33844}} * {{Z|Z33848}} * {{Z|Z33862}} * {{Z|Z33876}} * {{Z|Z33878}} * {{Z|Z33880}} * {{Z|Z33890}} * {{Z|Z33895}} * {{Z|Z33902}} * {{Z|Z33933}} * {{Z|Z33951}} * {{Z|Z33955}} * {{Z|Z33975}} * {{Z|Z33977}} * {{Z|Z33983}} * {{Z|Z33986}} * {{Z|Z33999}} * {{Z|Z34008}} * {{Z|Z34009}} * {{Z|Z34039}} * {{Z|Z34060}} * {{Z|Z34070}} * {{Z|Z34072}} * {{Z|Z34077}} * {{Z|Z34084}} * {{Z|Z34096}} * {{Z|Z34105}} * {{Z|Z34124}} * {{Z|Z34127}} * {{Z|Z34132}} * {{Z|Z34139}} * {{Z|Z34178}} * {{Z|Z34197}} * {{Z|Z34200}} * {{Z|Z34204}} * {{Z|Z34209}} * {{Z|Z34212}} * {{Z|Z34218}} * {{Z|Z34250}} * {{Z|Z34253}} * {{Z|Z34257}} * {{Z|Z34263}} * {{Z|Z34273}} <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-05-02]] 5d9ccgcjxcstf716gbznufukh5id5no Talk:Z32398 1 82485 272504 272400 2026-05-05T20:10:27Z Hogü-456 617 /* Selecting Lexeme based on gender of the item */ Reply 272504 wikitext text/x-wiki == Selecting Lexeme based on gender of the item == @[[User:Ameisenigel|Ameisenigel]] @[[User:GrounderUK|GrounderUK]] I looked at the function implementation and it does not work well for humans. It depends on what Lexeme has been created first if the correct result is retrieved or not. It is using [[Z22696]] to get the Lexeme related to the item. If there are several ones for the genders then it takes still the first one. From my point of view it needs to take the one related to the gender of the first item if this is a human. [[User:Hogü-456|Hogü-456]] ([[User talk:Hogü-456|talk]]) 20:11, 4 May 2026 (UTC) :Do we have a (better) function for finding the appropriate lexeme? --[[User:Ameisenigel|Ameisenigel]] ([[User talk:Ameisenigel|talk]]) 06:35, 5 May 2026 (UTC) ::I have not found such a function so far. It is possible to get with [[Z30460]] all Lexemes related to an item in a specific language and linked through {{P|P5137}} from the lexeme to the item. Maybe I am successful with creating a function. [[User:Hogü-456|Hogü-456]] ([[User talk:Hogü-456|talk]]) 20:10, 5 May 2026 (UTC) oqsubvo6o2dha2l0g4naqkuy7qnx7za Z34793 0 82489 272551 272369 2026-05-06T00:54:53Z YoshiRulz 10156 Added Z34842 to the approved list of implementations 272551 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34793" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z34793K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "list" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z8", "Z17K2": "Z34793K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "equality function" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z8K3": [ "Z20", "Z34794", "Z34795", "Z34796" ], "Z8K4": [ "Z14", "Z34842" ], "Z8K5": "Z34793" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "most common element(s) in list" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } en07vrc19za9wp5e01crmi92qk3hoia 272553 272551 2026-05-06T00:57:15Z YoshiRulz 10156 Added Z34843 to the approved list of test cases 272553 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34793" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z34793K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "list" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z8", "Z17K2": "Z34793K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "equality function" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z8K3": [ "Z20", "Z34794", "Z34795", "Z34796", "Z34843" ], "Z8K4": [ "Z14", "Z34842" ], "Z8K5": "Z34793" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "most common element(s) in list" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 8q2dkmzh80cesk7jryh81bpkc0wk7ju 272554 272553 2026-05-06T00:57:30Z YoshiRulz 10156 Removed Z34842 from the approved list of implementations 272554 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34793" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z34793K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "list" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z8", "Z17K2": "Z34793K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "equality function" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z8K3": [ "Z20", "Z34794", "Z34795", "Z34796", "Z34843" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34793" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "most common element(s) in list" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 7jbml6dksvjvbri5rwzqebzncaslmp6 272556 272554 2026-05-06T00:58:33Z YoshiRulz 10156 Added Z34842 to the approved list of implementations 272556 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34793" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z34793K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "list" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z8", "Z17K2": "Z34793K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "equality function" } ] } } ], "Z8K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z8K3": [ "Z20", "Z34794", "Z34795", "Z34796", "Z34843" ], "Z8K4": [ "Z14", "Z34842" ], "Z8K5": "Z34793" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "most common element(s) in list" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 8q2dkmzh80cesk7jryh81bpkc0wk7ju Z34797 0 82506 272610 272410 2026-05-06T06:31:08Z Sun8908 9804 Added Z34861, Z34862, Z34863, Z34864 and Z34865 to the approved list of test cases 272610 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34797" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z34797K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "pinyin" } ] } } ], "Z8K2": "Z40", "Z8K3": [ "Z20", "Z34861", "Z34862", "Z34863", "Z34864", "Z34865" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34797" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "is valid pinyin for single character" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } p63vnuy6cvcoa1xhdo5w1zzvikpo5tq 272612 272610 2026-05-06T06:36:12Z Sun8908 9804 Added Z34866 to the approved list of test cases 272612 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34797" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z34797K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "pinyin" } ] } } ], "Z8K2": "Z40", "Z8K3": [ "Z20", "Z34861", "Z34862", "Z34863", "Z34864", "Z34865", "Z34866" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34797" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "is valid pinyin for single character" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 8510kpc778kb8n0evqvx5iew2vm37p6 Talk:Z33138 1 82513 272427 2026-05-05T12:58:25Z YoshiRulz 10156 /* Shouldn't this return "the " with a trailing space? */ new section 272427 wikitext text/x-wiki == Shouldn't this return "the " with a trailing space? == [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 12:58, 5 May 2026 (UTC) lb50rdqlv538hjppicbkvfjjw3hq77k Z34799 0 82514 272428 2026-05-05T13:01:26Z YoshiRulz 10156 Create implementation 272428 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34799" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z33138", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z29661", "Z29661K1": { "Z1K1": "Z7", "Z7K1": "Z32645", "Z32645K1": { "Z1K1": "Z7", "Z7K1": "Z6821", "Z6821K1": { "Z1K1": "Z18", "Z18K1": "Z33138K1" } } } }, "Z802K2": "the", "Z802K3": "Z28420" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "English \"the\" or empty, via-Kleenean composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } lgpamzmmn5dg1r9so3cogzu0o1f8nrj Z34800 0 82515 272431 2026-05-05T15:16:20Z YoshiRulz 10156 Create function 272431 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34800" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z34800K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "display language" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z34800K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "input" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34800" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Argument reference key with short Type label" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "input ID with short Type label" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "e.g. (en, \"Z19711K1\") -\u003E en:\"Rational Z19711K1\"; (ja, \"Z10000K2\") -\u003E ja:\"Z10000K2文字列\"" } ] } } lb4zb5xlayd3kp918e0b6fxocouf6vy 272476 272431 2026-05-05T16:40:01Z YoshiRulz 10156 Added Z34801 to the approved list of test cases 272476 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34800" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z34800K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "display language" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z34800K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "input" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z34801" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34800" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Argument reference key with short Type label" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "input ID with short Type label" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "e.g. (en, \"Z19711K1\") -\u003E en:\"Rational Z19711K1\"; (ja, \"Z10000K2\") -\u003E ja:\"Z10000K2文字列\"" } ] } } o8yuupcvyda997992rkeb3g2014giyd 272485 272476 2026-05-05T17:18:16Z YoshiRulz 10156 Added Z34820 to the approved list of implementations 272485 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34800" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z34800K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "display language" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z34800K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "input" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z34801" ], "Z8K4": [ "Z14", "Z34820" ], "Z8K5": "Z34800" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Argument reference key with short Type label" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "input ID with short Type label" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "e.g. (en, \"Z19711K1\") -\u003E en:\"Rational Z19711K1\"; (ja, \"Z10000K2\") -\u003E ja:\"Z10000K2文字列\"" } ] } } evoc0d2lusng5go9tuhdida68kx1a2p 272487 272485 2026-05-05T17:21:25Z YoshiRulz 10156 Removed Z34820 from the approved list of implementations 272487 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34800" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z34800K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "display language" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z34800K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "input" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z34801" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34800" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Argument reference key with short Type label" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "input ID with short Type label" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "e.g. (en, \"Z19711K1\") -\u003E en:\"Rational Z19711K1\"; (ja, \"Z10000K2\") -\u003E ja:\"Z10000K2文字列\"" } ] } } o8yuupcvyda997992rkeb3g2014giyd 272489 272487 2026-05-05T17:22:20Z YoshiRulz 10156 Added Z34820 to the approved list of implementations 272489 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34800" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z34800K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "display language" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z34800K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "input" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z34801" ], "Z8K4": [ "Z14", "Z34820" ], "Z8K5": "Z34800" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Argument reference key with short Type label" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "input ID with short Type label" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "e.g. (en, \"Z19711K1\") -\u003E en:\"Rational Z19711K1\"; (ja, \"Z10000K2\") -\u003E ja:\"Z10000K2文字列\"" } ] } } evoc0d2lusng5go9tuhdida68kx1a2p 272492 272489 2026-05-05T17:25:27Z YoshiRulz 10156 Added Z34821 to the approved list of test cases 272492 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34800" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z34800K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "display language" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z34800K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "input" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z34801", "Z34821" ], "Z8K4": [ "Z14", "Z34820" ], "Z8K5": "Z34800" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Argument reference key with short Type label" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "input ID with short Type label" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "e.g. (en, \"Z19711K1\") -\u003E en:\"Rational Z19711K1\"; (ja, \"Z10000K2\") -\u003E ja:\"Z10000K2文字列\"" } ] } } qf2qquemdkfd9lo6fgxz01x2tclay24 272493 272492 2026-05-05T17:25:32Z YoshiRulz 10156 Removed Z34820 from the approved list of implementations 272493 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34800" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z34800K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "display language" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z34800K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "input" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z34801", "Z34821" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34800" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Argument reference key with short Type label" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "input ID with short Type label" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "e.g. (en, \"Z19711K1\") -\u003E en:\"Rational Z19711K1\"; (ja, \"Z10000K2\") -\u003E ja:\"Z10000K2文字列\"" } ] } } 0gjcj464yitmetfbcdwuuu63h37g2aq 272495 272493 2026-05-05T17:26:13Z YoshiRulz 10156 Added Z34820 to the approved list of implementations 272495 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34800" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z34800K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "display language" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z34800K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "input" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z34801", "Z34821" ], "Z8K4": [ "Z14", "Z34820" ], "Z8K5": "Z34800" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Argument reference key with short Type label" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "input ID with short Type label" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "e.g. (en, \"Z19711K1\") -\u003E en:\"Rational Z19711K1\"; (ja, \"Z10000K2\") -\u003E ja:\"Z10000K2文字列\"" } ] } } qf2qquemdkfd9lo6fgxz01x2tclay24 Z34801 0 82516 272432 2026-05-05T15:17:25Z YoshiRulz 10156 Create test 272432 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34801" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34800", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34800", "Z34800K1": "Z1002", "Z34800K2": "Z19711K1" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Rational Z19711K1" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "(en, \"Z19711K1\") -\u003E en:\"Rational Z19711K1\"" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } big6nqla2ler9o5il4pqby2vxa6l40d Z34802 0 82517 272433 2026-05-05T15:21:01Z YoshiRulz 10156 Create function 272433 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34802" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z34802K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "display language" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z4", "Z17K2": "Z34802K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "type" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34802" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "short form of label for Type" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 90jq5kg0850q89ogykjiq3ndudxhihg 272435 272433 2026-05-05T15:25:21Z YoshiRulz 10156 Added Z34803 to the approved list of test cases 272435 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34802" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z34802K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "display language" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z4", "Z17K2": "Z34802K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "type" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z34803" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34802" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "short form of label for Type" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } sic5ecj2gf8h3bpgp5bzmc9oniv7izu 272475 272435 2026-05-05T16:39:45Z YoshiRulz 10156 Added Z34819 to the approved list of implementations 272475 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34802" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z34802K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "display language" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z4", "Z17K2": "Z34802K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "type" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z34803" ], "Z8K4": [ "Z14", "Z34819" ], "Z8K5": "Z34802" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "short form of label for Type" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 6xj738jyk0gtq8irbxelpmc92kmz914 Z34803 0 82518 272434 2026-05-05T15:24:37Z YoshiRulz 10156 Create test 272434 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34803" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34802", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34802", "Z34802K1": "Z1002", "Z34802K2": "Z19677" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Rational" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "(en, Z19677) -\u003E en:\"Rational\"" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } m5majv0o9c57y1ntvrvbj7pfe9vawxc Z34804 0 82519 272436 2026-05-05T15:27:27Z YoshiRulz 10156 Create function 272436 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34804" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z34804K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "display language" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z4", "Z17K2": "Z34804K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "type" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34804" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "short form of label for Type, English" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } e52w58xgb2807umt74zfw3uu6h91e8r 272442 272436 2026-05-05T15:32:12Z YoshiRulz 10156 Added Z34805, Z34806, Z34807, Z34808 and Z34809 to the approved list of test cases 272442 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34804" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z34804K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "display language" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z4", "Z17K2": "Z34804K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "type" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z34805", "Z34806", "Z34807", "Z34808", "Z34809" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34804" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "short form of label for Type, English" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } ld3ju4e2hrwt3iwje66rjtjrvtg2b2i 272460 272442 2026-05-05T16:18:56Z YoshiRulz 10156 Added Z34817 to the approved list of implementations 272460 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34804" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z34804K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "display language" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z4", "Z17K2": "Z34804K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "type" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z34805", "Z34806", "Z34807", "Z34808", "Z34809" ], "Z8K4": [ "Z14", "Z34817" ], "Z8K5": "Z34804" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "short form of label for Type, English" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } i61ratv7kq73gr81kgi0954t4vow1p2 272461 272460 2026-05-05T16:29:10Z YoshiRulz 10156 Removed Z34817 from the approved list of implementations 272461 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34804" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z34804K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "display language" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z4", "Z17K2": "Z34804K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "type" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z34805", "Z34806", "Z34807", "Z34808", "Z34809" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34804" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "short form of label for Type, English" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } ld3ju4e2hrwt3iwje66rjtjrvtg2b2i 272472 272461 2026-05-05T16:36:19Z YoshiRulz 10156 Added Z34817 to the approved list of implementations 272472 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34804" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z34804K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "display language" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z4", "Z17K2": "Z34804K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "type" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z34805", "Z34806", "Z34807", "Z34808", "Z34809" ], "Z8K4": [ "Z14", "Z34817" ], "Z8K5": "Z34804" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "short form of label for Type, English" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } i61ratv7kq73gr81kgi0954t4vow1p2 Z34805 0 82520 272437 2026-05-05T15:29:52Z YoshiRulz 10156 Create test 272437 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34805" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34804", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34804", "Z34804K1": "Z1002", "Z34804K2": "Z19677" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Rational" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Z19677 -\u003E \"Rational\"" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } cgvl0ln95pjxcsljlsg269r2hudzee2 Z34806 0 82521 272438 2026-05-05T15:29:57Z YoshiRulz 10156 Create test 272438 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34806" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34804", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34804", "Z34804K1": "Z1002", "Z34804K2": "Z33198" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "complex128" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Z33198 -\u003E \"complex128\"" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } jyqhobqqbe2tmagcn8bju871j9y2c49 Z34807 0 82522 272439 2026-05-05T15:30:03Z YoshiRulz 10156 Create test 272439 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34807" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34804", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34804", "Z34804K1": "Z1002", "Z34804K2": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z6" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "list" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Z881(Z6) -\u003E \"list\"" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } r680f4k1aax8lslq2g7a7bwxvttag2p Z34808 0 82523 272440 2026-05-05T15:31:11Z YoshiRulz 10156 Create test 272440 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34808" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34804", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34804", "Z34804K1": "Z1002", "Z34804K2": "Z26934" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Grammatical number (sing./pl.)" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Z26934 -\u003E \"Grammatical number (sing./pl.)\"" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 2c5ferqh0q33y5ybf804k57bpg701qf Z34809 0 82524 272441 2026-05-05T15:31:44Z YoshiRulz 10156 Create test 272441 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34809" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34804", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34804", "Z34804K1": "Z1002", "Z34804K2": "Z16098" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Gregorian month" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Z16098 -\u003E \"Gregorian month\"" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } oe7c13n3562wwmuit8n3jt9yt8txfiw Z34810 0 82525 272446 2026-05-05T15:47:52Z YoshiRulz 10156 Create function 272446 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34810" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z4", "Z17K2": "Z34810K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "type" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z34810K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "display language" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34810" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "label of persistent Type in language or fallback" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "broken, see [[phab:T414181]]" } ] } } i6s5lzmhwgb6fwjxhpfgxmru1bdketp 272453 272446 2026-05-05T15:53:09Z YoshiRulz 10156 Added Z34812, Z34813 and Z34815 to the approved list of test cases 272453 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34810" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z4", "Z17K2": "Z34810K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "type" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z34810K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "display language" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z34812", "Z34813", "Z34815" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34810" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "label of persistent Type in language or fallback" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "broken, see [[phab:T414181]]" } ] } } sjtja18bzo3yb91ktdo18jepwodtvs4 272457 272453 2026-05-05T15:57:48Z YoshiRulz 10156 Added Z34816 to the approved list of implementations 272457 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34810" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z4", "Z17K2": "Z34810K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "type" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z34810K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "display language" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z34812", "Z34813", "Z34815" ], "Z8K4": [ "Z14", "Z34816" ], "Z8K5": "Z34810" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "label of persistent Type in language or fallback" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "broken, see [[phab:T414181]]" } ] } } p61bbt0nfn9c7493khevj846ho94srk 272462 272457 2026-05-05T16:29:39Z YoshiRulz 10156 Removed Z34816 from the approved list of implementations 272462 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34810" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z4", "Z17K2": "Z34810K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "type" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z34810K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "display language" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z34812", "Z34813", "Z34815" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34810" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "label of persistent Type in language or fallback" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "broken, see [[phab:T414181]]" } ] } } sjtja18bzo3yb91ktdo18jepwodtvs4 272463 272462 2026-05-05T16:29:42Z YoshiRulz 10156 Removed Z34812, Z34813 and Z34815 from the approved list of test cases 272463 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34810" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z4", "Z17K2": "Z34810K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "type" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z34810K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "display language" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34810" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "label of persistent Type in language or fallback" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "broken, see [[phab:T414181]]" } ] } } i6s5lzmhwgb6fwjxhpfgxmru1bdketp 272464 272463 2026-05-05T16:30:13Z YoshiRulz 10156 Swap parameters 272464 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34810" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z34810K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "display language" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z4", "Z17K2": "Z34810K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "type" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34810" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "label of persistent Type in language or fallback" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "broken, see [[phab:T414181]]" } ] } } 5lv2r05zyl9e9tae9b9qp9tgx4fsuk7 272468 272464 2026-05-05T16:33:40Z YoshiRulz 10156 Added Z34812, Z34813 and Z34815 to the approved list of test cases 272468 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34810" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z34810K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "display language" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z4", "Z17K2": "Z34810K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "type" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z34812", "Z34813", "Z34815" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34810" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "label of persistent Type in language or fallback" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "broken, see [[phab:T414181]]" } ] } } d7gmaqqgrbocmqos7vp7vzvgl8zbhrr 272470 272468 2026-05-05T16:34:40Z YoshiRulz 10156 Added Z34816 to the approved list of implementations 272470 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34810" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z34810K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "display language" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z4", "Z17K2": "Z34810K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "type" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z34812", "Z34813", "Z34815" ], "Z8K4": [ "Z14", "Z34816" ], "Z8K5": "Z34810" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "label of persistent Type in language or fallback" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "broken, see [[phab:T414181]]" } ] } } 91i73dz6vp70rf38gww6jckr4qx8gqc Z34811 0 82526 272447 2026-05-05T15:48:59Z Jsamwrites 938 272447 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34811" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z34811K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "entity" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z34811K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "language" } ] } } ], "Z8K2": "Z12", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34811" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "multilingual label of item reference in language" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } hy5kzjnnvsltfvspo9vrj4c117r51fj 272455 272447 2026-05-05T15:53:38Z Jsamwrites 938 Added Z34814 to the approved list of implementations 272455 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34811" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z34811K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "entity" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z34811K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "language" } ] } } ], "Z8K2": "Z12", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14", "Z34814" ], "Z8K5": "Z34811" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "multilingual label of item reference in language" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 664sqb4vdb368d7gvg67g9dk7ulqpq1 Z34812 0 82527 272448 2026-05-05T15:49:08Z YoshiRulz 10156 Create test 272448 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34812" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34810", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34810", "Z34810K1": "Z19677", "Z34810K2": "Z1002" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Rational number" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "(Z19677, en) -\u003E \"Rational number\"" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } oyu51wp6q63wyaq4zc7vr5oqwnlqmxd 272449 272448 2026-05-05T15:50:30Z YoshiRulz 10156 Clarify en label 272449 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34812" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34810", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34810", "Z34810K1": "Z19677", "Z34810K2": "Z1002" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Rational number" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "(Z19677, en) -\u003E en:\"Rational number\"" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 87ib7dg6r29ebjbv6akgpb4436htgpa 272465 272449 2026-05-05T16:31:11Z YoshiRulz 10156 Swap arguments 272465 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34812" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34810", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34810", "Z34810K1": "Z1002", "Z34810K2": "Z19677" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Rational number" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "(Z19677, en) -\u003E en:\"Rational number\"" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } syvt7jsl7kaa2z1218sadjapu9omznz Z34813 0 82528 272450 2026-05-05T15:50:36Z YoshiRulz 10156 Create test 272450 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34813" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34810", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34810", "Z34810K1": "Z6", "Z34810K2": "Z1113" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "String" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "(Z6, en-au) -\u003E en:\"String\"" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } c4s4tk6xv1h3ah75yktl3x4axfcr74g 272466 272450 2026-05-05T16:31:29Z YoshiRulz 10156 Swap arguments 272466 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34813" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34810", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34810", "Z34810K1": "Z1113", "Z34810K2": "Z6" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "String" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "(Z6, en-au) -\u003E en:\"String\"" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 9k33rkzf6jt1qr7masohe06sxxbobkc Z34814 0 82529 272451 2026-05-05T15:52:39Z Jsamwrites 938 272451 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34814" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z34811", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z26107", "Z26107K1": { "Z1K1": "Z18", "Z18K1": "Z34811K2" }, "Z26107K2": { "Z1K1": "Z7", "Z7K1": "Z23753", "Z23753K1": { "Z1K1": "Z18", "Z18K1": "Z34811K1" }, "Z23753K2": { "Z1K1": "Z18", "Z18K1": "Z34811K2" } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "multilingual label of item reference in lang, comp" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 45merrrv9s6stmi42o8owlhmfmkusk0 Z34815 0 82530 272452 2026-05-05T15:52:53Z YoshiRulz 10156 Create test 272452 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34815" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34810", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34810", "Z34810K1": "Z6", "Z34810K2": "Z1444" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "文字列" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "(Z6, ja-hrkt) -\u003E ja:\"文字列\"" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } lsdyd1qwcv7id3yupbhqxkyhds4kphq 272467 272452 2026-05-05T16:31:41Z YoshiRulz 10156 Swap arguments 272467 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34815" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34810", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34810", "Z34810K1": "Z1444", "Z34810K2": "Z6" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1830", "Z11K2": "文字列" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "(Z6, ja-hrkt) -\u003E ja:\"文字列\"" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 1h94esolx9lttkxp3npuk4k5sf5dw7p Z34816 0 82531 272456 2026-05-05T15:57:33Z YoshiRulz 10156 Create implementation 272456 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34816" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z34810", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z31168", "Z31168K1": { "Z1K1": "Z18", "Z18K1": "Z34810K2" }, "Z31168K2": { "Z1K1": "Z7", "Z7K1": "Z16556", "Z16556K1": { "Z1K1": "Z7", "Z7K1": "Z29113", "Z29113K1": { "Z1K1": "Z7", "Z7K1": "Z16365", "Z16365K1": { "Z1K1": "Z18", "Z18K1": "Z34810K1" } } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "label of Type in lang or fallback, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } of0gyddpudwc63l2ytaim026y14yv6m 272469 272456 2026-05-05T16:34:26Z YoshiRulz 10156 Swap parameters 272469 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34816" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z34810", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z31168", "Z31168K1": { "Z1K1": "Z18", "Z18K1": "Z34810K1" }, "Z31168K2": { "Z1K1": "Z7", "Z7K1": "Z16556", "Z16556K1": { "Z1K1": "Z7", "Z7K1": "Z29113", "Z29113K1": { "Z1K1": "Z7", "Z7K1": "Z16365", "Z16365K1": { "Z1K1": "Z18", "Z18K1": "Z34810K2" } } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "label of Type in lang or fallback, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } g3t1lqz0ngvpo018y3yqw5i0c9xpmzk Z34817 0 82532 272458 2026-05-05T16:15:26Z YoshiRulz 10156 Create implementation 272458 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34817" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z34804", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z19601", "Z19601K1": [ "Z40", { "Z1K1": "Z7", "Z7K1": "Z10615", "Z10615K1": { "Z1K1": "Z7", "Z7K1": "Z22764", "Z22764K1": { "Z1K1": "Z18", "Z18K1": "Z34804K2" } }, "Z10615K2": "Z881 " }, { "Z1K1": "Z7", "Z7K1": "Z866", "Z866K1": { "Z1K1": "Z7", "Z7K1": "Z22764", "Z22764K1": { "Z1K1": "Z18", "Z18K1": "Z34804K2" } }, "Z866K2": { "Z1K1": "Z6", "Z6K1": "Z86" } }, { "Z1K1": "Z7", "Z7K1": "Z866", "Z866K1": { "Z1K1": "Z7", "Z7K1": "Z22764", "Z22764K1": { "Z1K1": "Z18", "Z18K1": "Z34804K2" } }, "Z866K2": { "Z1K1": "Z6", "Z6K1": "Z33198" } } ], "Z19601K2": [ "Z1", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "list" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Codepoint" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "complex128" }, { "Z1K1": "Z11", "Z11K1": { "Z1K1": "Z7", "Z7K1": "Z14404", "Z14404K1": { "Z1K1": "Z7", "Z7K1": "Z34810", "Z34810K1": { "Z1K1": "Z18", "Z18K1": "Z34804K2" }, "Z34810K2": { "Z1K1": "Z18", "Z18K1": "Z34804K1" } } }, "Z11K2": { "Z1K1": "Z7", "Z7K1": "Z19549", "Z19549K1": [ "Z6", "Gregorian calendar", " / ", "singular", "plural" ], "Z19549K2": [ "Z6", "Gregorian", "/", "sing.", "pl." ], "Z19549K3": { "Z1K1": "Z7", "Z7K1": "Z11170", "Z11170K1": { "Z1K1": "Z7", "Z7K1": "Z14396", "Z14396K1": { "Z1K1": "Z7", "Z7K1": "Z34810", "Z34810K1": { "Z1K1": "Z18", "Z18K1": "Z34804K2" }, "Z34810K2": { "Z1K1": "Z18", "Z18K1": "Z34804K1" } } }, "Z11170K2": " number" } } } ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "short form of label for Type, English, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 4ictycnnvnz2k6g445afd6r1oq7qv6q 272459 272458 2026-05-05T16:17:54Z YoshiRulz 10156 Construct Z11 via function 272459 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34817" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z34804", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z19601", "Z19601K1": [ "Z40", { "Z1K1": "Z7", "Z7K1": "Z10615", "Z10615K1": { "Z1K1": "Z7", "Z7K1": "Z22764", "Z22764K1": { "Z1K1": "Z18", "Z18K1": "Z34804K2" } }, "Z10615K2": "Z881 " }, { "Z1K1": "Z7", "Z7K1": "Z866", "Z866K1": { "Z1K1": "Z7", "Z7K1": "Z22764", "Z22764K1": { "Z1K1": "Z18", "Z18K1": "Z34804K2" } }, "Z866K2": { "Z1K1": "Z6", "Z6K1": "Z86" } }, { "Z1K1": "Z7", "Z7K1": "Z866", "Z866K1": { "Z1K1": "Z7", "Z7K1": "Z22764", "Z22764K1": { "Z1K1": "Z18", "Z18K1": "Z34804K2" } }, "Z866K2": { "Z1K1": "Z6", "Z6K1": "Z33198" } } ], "Z19601K2": [ "Z1", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "list" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Codepoint" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "complex128" }, { "Z1K1": "Z7", "Z7K1": "Z26107", "Z26107K1": { "Z1K1": "Z7", "Z7K1": "Z14404", "Z14404K1": { "Z1K1": "Z7", "Z7K1": "Z34810", "Z34810K1": { "Z1K1": "Z18", "Z18K1": "Z34804K2" }, "Z34810K2": { "Z1K1": "Z18", "Z18K1": "Z34804K1" } } }, "Z26107K2": { "Z1K1": "Z7", "Z7K1": "Z19549", "Z19549K1": [ "Z6", "Gregorian calendar", " / ", "singular", "plural" ], "Z19549K2": [ "Z6", "Gregorian", "/", "sing.", "pl." ], "Z19549K3": { "Z1K1": "Z7", "Z7K1": "Z11170", "Z11170K1": { "Z1K1": "Z7", "Z7K1": "Z14396", "Z14396K1": { "Z1K1": "Z7", "Z7K1": "Z34810", "Z34810K1": { "Z1K1": "Z18", "Z18K1": "Z34804K2" }, "Z34810K2": { "Z1K1": "Z18", "Z18K1": "Z34804K1" } } }, "Z11170K2": " number" } } } ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "short form of label for Type, English, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 2qvj0qh12g48n4tgnuh7yr3vwwdz69z 272471 272459 2026-05-05T16:36:04Z YoshiRulz 10156 Swap arguments to Z34810 272471 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34817" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z34804", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z19601", "Z19601K1": [ "Z40", { "Z1K1": "Z7", "Z7K1": "Z10615", "Z10615K1": { "Z1K1": "Z7", "Z7K1": "Z22764", "Z22764K1": { "Z1K1": "Z18", "Z18K1": "Z34804K2" } }, "Z10615K2": "Z881 " }, { "Z1K1": "Z7", "Z7K1": "Z866", "Z866K1": { "Z1K1": "Z7", "Z7K1": "Z22764", "Z22764K1": { "Z1K1": "Z18", "Z18K1": "Z34804K2" } }, "Z866K2": { "Z1K1": "Z6", "Z6K1": "Z86" } }, { "Z1K1": "Z7", "Z7K1": "Z866", "Z866K1": { "Z1K1": "Z7", "Z7K1": "Z22764", "Z22764K1": { "Z1K1": "Z18", "Z18K1": "Z34804K2" } }, "Z866K2": { "Z1K1": "Z6", "Z6K1": "Z33198" } } ], "Z19601K2": [ "Z1", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "list" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Codepoint" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "complex128" }, { "Z1K1": "Z7", "Z7K1": "Z26107", "Z26107K1": { "Z1K1": "Z7", "Z7K1": "Z14404", "Z14404K1": { "Z1K1": "Z7", "Z7K1": "Z34810", "Z34810K1": { "Z1K1": "Z18", "Z18K1": "Z34804K1" }, "Z34810K2": { "Z1K1": "Z18", "Z18K1": "Z34804K2" } } }, "Z26107K2": { "Z1K1": "Z7", "Z7K1": "Z19549", "Z19549K1": [ "Z6", "Gregorian calendar", " / ", "singular", "plural" ], "Z19549K2": [ "Z6", "Gregorian", "/", "sing.", "pl." ], "Z19549K3": { "Z1K1": "Z7", "Z7K1": "Z11170", "Z11170K1": { "Z1K1": "Z7", "Z7K1": "Z14396", "Z14396K1": { "Z1K1": "Z7", "Z7K1": "Z34810", "Z34810K1": { "Z1K1": "Z18", "Z18K1": "Z34804K1" }, "Z34810K2": { "Z1K1": "Z18", "Z18K1": "Z34804K2" } } }, "Z11170K2": " number" } } } ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "short form of label for Type, English, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } skrg9vfxzm3j2jg0bmdyaq6nroeuuzc Z34818 0 82533 272473 2026-05-05T16:37:41Z YoshiRulz 10156 Create persistent config 272473 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34818" }, "Z2K2": { "Z1K1": "Z14294", "Z14294K1": [ "Z14293", { "Z1K1": "Z14293", "Z14293K1": "Z34804", "Z14293K2": "Z33034" } ], "Z14294K2": "Z34810" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "config for short form of label for Type" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } h6fpyiz2bqev3aq8h1n71xwz8pkx4s2 Z34819 0 82534 272474 2026-05-05T16:39:01Z YoshiRulz 10156 Create implementation 272474 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34819" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z34802", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z13318", "Z13318K1": { "Z1K1": "Z7", "Z7K1": "Z14310", "Z14310K1": "Z34818", "Z14310K2": { "Z1K1": "Z18", "Z18K1": "Z34802K1" } }, "Z13318K2": { "Z1K1": "Z18", "Z18K1": "Z34802K1" }, "Z13318K3": { "Z1K1": "Z18", "Z18K1": "Z34802K2" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "short form of label for Type, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 2b116upv79mumqjhi0lyq3u30dqsqm8 Z34820 0 82535 272479 2026-05-05T16:59:56Z YoshiRulz 10156 Create implementation 272479 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34820" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z34800", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z29661", "Z29661K1": { "Z1K1": "Z7", "Z7K1": "Z29654", "Z29654K1": { "Z1K1": "Z18", "Z18K1": "Z34800K1" } } }, "Z802K2": { "Z1K1": "Z7", "Z7K1": "Z30795", "Z30795K1": { "Z1K1": "Z7", "Z7K1": "Z10000", "Z10000K1": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z12696", "Z12696K1": "Z33984", "Z12696K2": { "Z1K1": "Z18", "Z18K1": "Z34800K1" } }, "Z802K2": "Z11853", "Z802K3": "Z13128" }, "Z10000K2": { "Z1K1": "Z18", "Z18K1": "Z34800K2" } }, "Z30795K2": { "Z1K1": "Z7", "Z7K1": "Z34802", "Z34802K1": { "Z1K1": "Z18", "Z18K1": "Z34800K1" }, "Z34802K2": { "Z1K1": "Z7", "Z7K1": "Z30531", "Z30531K1": { "Z1K1": "Z7", "Z7K1": "Z11410", "Z11410K1": { "Z1K1": "Z18", "Z18K1": "Z34800K2" }, "Z11410K2": "K" } } } }, "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z30035", "Z30035K1": { "Z1K1": "Z7", "Z7K1": "Z10000", "Z10000K1": { "Z1K1": "Z18", "Z18K1": "Z34800K2" }, "Z10000K2": { "Z1K1": "Z7", "Z7K1": "Z10000", "Z10000K1": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z12696", "Z12696K1": "Z33984", "Z12696K2": { "Z1K1": "Z18", "Z18K1": "Z34800K1" } }, "Z802K2": "Z11853", "Z802K3": "Z13128" }, "Z10000K2": { "Z1K1": "Z18", "Z18K1": "Z34800K2" } } }, "Z30035K2": { "Z1K1": "Z7", "Z7K1": "Z34802", "Z34802K1": { "Z1K1": "Z18", "Z18K1": "Z34800K1" }, "Z34802K2": { "Z1K1": "Z7", "Z7K1": "Z30531", "Z30531K1": { "Z1K1": "Z7", "Z7K1": "Z11410", "Z11410K1": { "Z1K1": "Z18", "Z18K1": "Z34800K2" }, "Z11410K2": "K" } } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } eoox7fbys6ozwzk9g37fte2wb9cnpo3 272483 272479 2026-05-05T17:07:38Z YoshiRulz 10156 Swap prepend/append branches 272483 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34820" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z34800", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z29661", "Z29661K1": { "Z1K1": "Z7", "Z7K1": "Z29654", "Z29654K1": { "Z1K1": "Z18", "Z18K1": "Z34800K1" } } }, "Z802K2": { "Z1K1": "Z7", "Z7K1": "Z30035", "Z30035K1": { "Z1K1": "Z7", "Z7K1": "Z10000", "Z10000K1": { "Z1K1": "Z18", "Z18K1": "Z34800K2" }, "Z10000K2": { "Z1K1": "Z7", "Z7K1": "Z10000", "Z10000K1": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z12696", "Z12696K1": "Z33984", "Z12696K2": { "Z1K1": "Z18", "Z18K1": "Z34800K1" } }, "Z802K2": "Z11853", "Z802K3": "Z13128" }, "Z10000K2": { "Z1K1": "Z18", "Z18K1": "Z34800K2" } } }, "Z30035K2": { "Z1K1": "Z7", "Z7K1": "Z34802", "Z34802K1": { "Z1K1": "Z18", "Z18K1": "Z34800K1" }, "Z34802K2": { "Z1K1": "Z7", "Z7K1": "Z30531", "Z30531K1": { "Z1K1": "Z7", "Z7K1": "Z11410", "Z11410K1": { "Z1K1": "Z18", "Z18K1": "Z34800K2" }, "Z11410K2": "K" } } } }, "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z30795", "Z30795K1": { "Z1K1": "Z7", "Z7K1": "Z10000", "Z10000K1": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z12696", "Z12696K1": "Z33984", "Z12696K2": { "Z1K1": "Z18", "Z18K1": "Z34800K1" } }, "Z802K2": "Z11853", "Z802K3": "Z13128" }, "Z10000K2": { "Z1K1": "Z18", "Z18K1": "Z34800K2" } }, "Z30795K2": { "Z1K1": "Z7", "Z7K1": "Z34802", "Z34802K1": { "Z1K1": "Z18", "Z18K1": "Z34800K1" }, "Z34802K2": { "Z1K1": "Z7", "Z7K1": "Z30531", "Z30531K1": { "Z1K1": "Z7", "Z7K1": "Z11410", "Z11410K1": { "Z1K1": "Z18", "Z18K1": "Z34800K2" }, "Z11410K2": "K" } } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } awvaetq41o9y1fgi1g452kjbsica22q 272484 272483 2026-05-05T17:17:33Z YoshiRulz 10156 Get the label for the argument, not the function 272484 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34820" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z34800", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z29661", "Z29661K1": { "Z1K1": "Z7", "Z7K1": "Z29654", "Z29654K1": { "Z1K1": "Z18", "Z18K1": "Z34800K1" } } }, "Z802K2": { "Z1K1": "Z7", "Z7K1": "Z30035", "Z30035K1": { "Z1K1": "Z7", "Z7K1": "Z10000", "Z10000K1": { "Z1K1": "Z18", "Z18K1": "Z34800K2" }, "Z10000K2": { "Z1K1": "Z7", "Z7K1": "Z10000", "Z10000K1": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z12696", "Z12696K1": "Z33984", "Z12696K2": { "Z1K1": "Z18", "Z18K1": "Z34800K1" } }, "Z802K2": "Z11853", "Z802K3": "Z13128" }, "Z10000K2": { "Z1K1": "Z18", "Z18K1": "Z34800K2" } } }, "Z30035K2": { "Z1K1": "Z7", "Z7K1": "Z34802", "Z34802K1": { "Z1K1": "Z18", "Z18K1": "Z34800K1" }, "Z34802K2": { "Z1K1": "Z7", "Z7K1": "Z21174", "Z21174K1": { "Z1K1": "Z7", "Z7K1": "Z13397", "Z13397K1": { "Z1K1": "Z7", "Z7K1": "Z21177", "Z21177K1": { "Z1K1": "Z7", "Z7K1": "Z30531", "Z30531K1": { "Z1K1": "Z7", "Z7K1": "Z11410", "Z11410K1": { "Z1K1": "Z18", "Z18K1": "Z34800K2" }, "Z11410K2": "K" } } }, "Z13397K2": { "Z1K1": "Z7", "Z7K1": "Z14283", "Z14283K1": { "Z1K1": "Z7", "Z7K1": "Z11420", "Z11420K1": { "Z1K1": "Z18", "Z18K1": "Z34800K2" }, "Z11420K2": "K" } } } } } }, "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z30795", "Z30795K1": { "Z1K1": "Z7", "Z7K1": "Z10000", "Z10000K1": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z12696", "Z12696K1": "Z33984", "Z12696K2": { "Z1K1": "Z18", "Z18K1": "Z34800K1" } }, "Z802K2": "Z11853", "Z802K3": "Z13128" }, "Z10000K2": { "Z1K1": "Z18", "Z18K1": "Z34800K2" } }, "Z30795K2": { "Z1K1": "Z7", "Z7K1": "Z34802", "Z34802K1": { "Z1K1": "Z18", "Z18K1": "Z34800K1" }, "Z34802K2": { "Z1K1": "Z7", "Z7K1": "Z21174", "Z21174K1": { "Z1K1": "Z7", "Z7K1": "Z13397", "Z13397K1": { "Z1K1": "Z7", "Z7K1": "Z21177", "Z21177K1": { "Z1K1": "Z7", "Z7K1": "Z30531", "Z30531K1": { "Z1K1": "Z7", "Z7K1": "Z11410", "Z11410K1": { "Z1K1": "Z18", "Z18K1": "Z34800K2" }, "Z11410K2": "K" } } }, "Z13397K2": { "Z1K1": "Z7", "Z7K1": "Z14283", "Z14283K1": { "Z1K1": "Z7", "Z7K1": "Z11420", "Z11420K1": { "Z1K1": "Z18", "Z18K1": "Z34800K2" }, "Z11420K2": "K" } } } } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } i8kxdusfbgpmsar40iopoz5tpd9ci7c 272486 272484 2026-05-05T17:19:13Z YoshiRulz 10156 Add en label 272486 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34820" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z34800", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z29661", "Z29661K1": { "Z1K1": "Z7", "Z7K1": "Z29654", "Z29654K1": { "Z1K1": "Z18", "Z18K1": "Z34800K1" } } }, "Z802K2": { "Z1K1": "Z7", "Z7K1": "Z30035", "Z30035K1": { "Z1K1": "Z7", "Z7K1": "Z10000", "Z10000K1": { "Z1K1": "Z18", "Z18K1": "Z34800K2" }, "Z10000K2": { "Z1K1": "Z7", "Z7K1": "Z10000", "Z10000K1": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z12696", "Z12696K1": "Z33984", "Z12696K2": { "Z1K1": "Z18", "Z18K1": "Z34800K1" } }, "Z802K2": "Z11853", "Z802K3": "Z13128" }, "Z10000K2": { "Z1K1": "Z18", "Z18K1": "Z34800K2" } } }, "Z30035K2": { "Z1K1": "Z7", "Z7K1": "Z34802", "Z34802K1": { "Z1K1": "Z18", "Z18K1": "Z34800K1" }, "Z34802K2": { "Z1K1": "Z7", "Z7K1": "Z21174", "Z21174K1": { "Z1K1": "Z7", "Z7K1": "Z13397", "Z13397K1": { "Z1K1": "Z7", "Z7K1": "Z21177", "Z21177K1": { "Z1K1": "Z7", "Z7K1": "Z30531", "Z30531K1": { "Z1K1": "Z7", "Z7K1": "Z11410", "Z11410K1": { "Z1K1": "Z18", "Z18K1": "Z34800K2" }, "Z11410K2": "K" } } }, "Z13397K2": { "Z1K1": "Z7", "Z7K1": "Z14283", "Z14283K1": { "Z1K1": "Z7", "Z7K1": "Z11420", "Z11420K1": { "Z1K1": "Z18", "Z18K1": "Z34800K2" }, "Z11420K2": "K" } } } } } }, "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z30795", "Z30795K1": { "Z1K1": "Z7", "Z7K1": "Z10000", "Z10000K1": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z12696", "Z12696K1": "Z33984", "Z12696K2": { "Z1K1": "Z18", "Z18K1": "Z34800K1" } }, "Z802K2": "Z11853", "Z802K3": "Z13128" }, "Z10000K2": { "Z1K1": "Z18", "Z18K1": "Z34800K2" } }, "Z30795K2": { "Z1K1": "Z7", "Z7K1": "Z34802", "Z34802K1": { "Z1K1": "Z18", "Z18K1": "Z34800K1" }, "Z34802K2": { "Z1K1": "Z7", "Z7K1": "Z21174", "Z21174K1": { "Z1K1": "Z7", "Z7K1": "Z13397", "Z13397K1": { "Z1K1": "Z7", "Z7K1": "Z21177", "Z21177K1": { "Z1K1": "Z7", "Z7K1": "Z30531", "Z30531K1": { "Z1K1": "Z7", "Z7K1": "Z11410", "Z11410K1": { "Z1K1": "Z18", "Z18K1": "Z34800K2" }, "Z11410K2": "K" } } }, "Z13397K2": { "Z1K1": "Z7", "Z7K1": "Z14283", "Z14283K1": { "Z1K1": "Z7", "Z7K1": "Z11420", "Z11420K1": { "Z1K1": "Z18", "Z18K1": "Z34800K2" }, "Z11420K2": "K" } } } } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "input ID with short Type label, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 9mr79h9aesgupej0301u7bhojs3pw9r 272488 272486 2026-05-05T17:22:15Z YoshiRulz 10156 Fix copy-paste error 272488 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34820" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z34800", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z29661", "Z29661K1": { "Z1K1": "Z7", "Z7K1": "Z29654", "Z29654K1": { "Z1K1": "Z18", "Z18K1": "Z34800K1" } } }, "Z802K2": { "Z1K1": "Z7", "Z7K1": "Z30035", "Z30035K1": { "Z1K1": "Z7", "Z7K1": "Z10000", "Z10000K1": { "Z1K1": "Z18", "Z18K1": "Z34800K2" }, "Z10000K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z12696", "Z12696K1": "Z33984", "Z12696K2": { "Z1K1": "Z18", "Z18K1": "Z34800K1" } }, "Z802K2": "Z11853", "Z802K3": "Z13128" } }, "Z30035K2": { "Z1K1": "Z7", "Z7K1": "Z34802", "Z34802K1": { "Z1K1": "Z18", "Z18K1": "Z34800K1" }, "Z34802K2": { "Z1K1": "Z7", "Z7K1": "Z21174", "Z21174K1": { "Z1K1": "Z7", "Z7K1": "Z13397", "Z13397K1": { "Z1K1": "Z7", "Z7K1": "Z21177", "Z21177K1": { "Z1K1": "Z7", "Z7K1": "Z30531", "Z30531K1": { "Z1K1": "Z7", "Z7K1": "Z11410", "Z11410K1": { "Z1K1": "Z18", "Z18K1": "Z34800K2" }, "Z11410K2": "K" } } }, "Z13397K2": { "Z1K1": "Z7", "Z7K1": "Z14283", "Z14283K1": { "Z1K1": "Z7", "Z7K1": "Z11420", "Z11420K1": { "Z1K1": "Z18", "Z18K1": "Z34800K2" }, "Z11420K2": "K" } } } } } }, "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z30795", "Z30795K1": { "Z1K1": "Z7", "Z7K1": "Z10000", "Z10000K1": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z12696", "Z12696K1": "Z33984", "Z12696K2": { "Z1K1": "Z18", "Z18K1": "Z34800K1" } }, "Z802K2": "Z11853", "Z802K3": "Z13128" }, "Z10000K2": { "Z1K1": "Z18", "Z18K1": "Z34800K2" } }, "Z30795K2": { "Z1K1": "Z7", "Z7K1": "Z34802", "Z34802K1": { "Z1K1": "Z18", "Z18K1": "Z34800K1" }, "Z34802K2": { "Z1K1": "Z7", "Z7K1": "Z21174", "Z21174K1": { "Z1K1": "Z7", "Z7K1": "Z13397", "Z13397K1": { "Z1K1": "Z7", "Z7K1": "Z21177", "Z21177K1": { "Z1K1": "Z7", "Z7K1": "Z30531", "Z30531K1": { "Z1K1": "Z7", "Z7K1": "Z11410", "Z11410K1": { "Z1K1": "Z18", "Z18K1": "Z34800K2" }, "Z11410K2": "K" } } }, "Z13397K2": { "Z1K1": "Z7", "Z7K1": "Z14283", "Z14283K1": { "Z1K1": "Z7", "Z7K1": "Z11420", "Z11420K1": { "Z1K1": "Z18", "Z18K1": "Z34800K2" }, "Z11420K2": "K" } } } } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "input ID with short Type label, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } tbi9zcvo7t66zj4vx1jelb73a1d4935 272490 272488 2026-05-05T17:24:06Z YoshiRulz 10156 Swap the prepend and append branches back 272490 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34820" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z34800", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z29661", "Z29661K1": { "Z1K1": "Z7", "Z7K1": "Z29654", "Z29654K1": { "Z1K1": "Z18", "Z18K1": "Z34800K1" } } }, "Z802K2": { "Z1K1": "Z7", "Z7K1": "Z30795", "Z30795K1": { "Z1K1": "Z7", "Z7K1": "Z10000", "Z10000K1": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z12696", "Z12696K1": "Z33984", "Z12696K2": { "Z1K1": "Z18", "Z18K1": "Z34800K1" } }, "Z802K2": "Z11853", "Z802K3": "Z13128" }, "Z10000K2": { "Z1K1": "Z18", "Z18K1": "Z34800K2" } }, "Z30795K2": { "Z1K1": "Z7", "Z7K1": "Z34802", "Z34802K1": { "Z1K1": "Z18", "Z18K1": "Z34800K1" }, "Z34802K2": { "Z1K1": "Z7", "Z7K1": "Z21174", "Z21174K1": { "Z1K1": "Z7", "Z7K1": "Z13397", "Z13397K1": { "Z1K1": "Z7", "Z7K1": "Z21177", "Z21177K1": { "Z1K1": "Z7", "Z7K1": "Z30531", "Z30531K1": { "Z1K1": "Z7", "Z7K1": "Z11410", "Z11410K1": { "Z1K1": "Z18", "Z18K1": "Z34800K2" }, "Z11410K2": "K" } } }, "Z13397K2": { "Z1K1": "Z7", "Z7K1": "Z14283", "Z14283K1": { "Z1K1": "Z7", "Z7K1": "Z11420", "Z11420K1": { "Z1K1": "Z18", "Z18K1": "Z34800K2" }, "Z11420K2": "K" } } } } } }, "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z30035", "Z30035K1": { "Z1K1": "Z7", "Z7K1": "Z10000", "Z10000K1": { "Z1K1": "Z18", "Z18K1": "Z34800K2" }, "Z10000K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z12696", "Z12696K1": "Z33984", "Z12696K2": { "Z1K1": "Z18", "Z18K1": "Z34800K1" } }, "Z802K2": "Z11853", "Z802K3": "Z13128" } }, "Z30035K2": { "Z1K1": "Z7", "Z7K1": "Z34802", "Z34802K1": { "Z1K1": "Z18", "Z18K1": "Z34800K1" }, "Z34802K2": { "Z1K1": "Z7", "Z7K1": "Z21174", "Z21174K1": { "Z1K1": "Z7", "Z7K1": "Z13397", "Z13397K1": { "Z1K1": "Z7", "Z7K1": "Z21177", "Z21177K1": { "Z1K1": "Z7", "Z7K1": "Z30531", "Z30531K1": { "Z1K1": "Z7", "Z7K1": "Z11410", "Z11410K1": { "Z1K1": "Z18", "Z18K1": "Z34800K2" }, "Z11410K2": "K" } } }, "Z13397K2": { "Z1K1": "Z7", "Z7K1": "Z14283", "Z14283K1": { "Z1K1": "Z7", "Z7K1": "Z11420", "Z11420K1": { "Z1K1": "Z18", "Z18K1": "Z34800K2" }, "Z11420K2": "K" } } } } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "input ID with short Type label, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } adjvzraiyqthp15isvor1p6ieoh83my 272494 272490 2026-05-05T17:26:07Z YoshiRulz 10156 Revert 272494 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34820" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z34800", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z29661", "Z29661K1": { "Z1K1": "Z7", "Z7K1": "Z29654", "Z29654K1": { "Z1K1": "Z18", "Z18K1": "Z34800K1" } } }, "Z802K2": { "Z1K1": "Z7", "Z7K1": "Z30035", "Z30035K1": { "Z1K1": "Z7", "Z7K1": "Z10000", "Z10000K1": { "Z1K1": "Z18", "Z18K1": "Z34800K2" }, "Z10000K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z12696", "Z12696K1": "Z33984", "Z12696K2": { "Z1K1": "Z18", "Z18K1": "Z34800K1" } }, "Z802K2": "Z11853", "Z802K3": "Z13128" } }, "Z30035K2": { "Z1K1": "Z7", "Z7K1": "Z34802", "Z34802K1": { "Z1K1": "Z18", "Z18K1": "Z34800K1" }, "Z34802K2": { "Z1K1": "Z7", "Z7K1": "Z21174", "Z21174K1": { "Z1K1": "Z7", "Z7K1": "Z13397", "Z13397K1": { "Z1K1": "Z7", "Z7K1": "Z21177", "Z21177K1": { "Z1K1": "Z7", "Z7K1": "Z30531", "Z30531K1": { "Z1K1": "Z7", "Z7K1": "Z11410", "Z11410K1": { "Z1K1": "Z18", "Z18K1": "Z34800K2" }, "Z11410K2": "K" } } }, "Z13397K2": { "Z1K1": "Z7", "Z7K1": "Z14283", "Z14283K1": { "Z1K1": "Z7", "Z7K1": "Z11420", "Z11420K1": { "Z1K1": "Z18", "Z18K1": "Z34800K2" }, "Z11420K2": "K" } } } } } }, "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z30795", "Z30795K1": { "Z1K1": "Z7", "Z7K1": "Z10000", "Z10000K1": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z12696", "Z12696K1": "Z33984", "Z12696K2": { "Z1K1": "Z18", "Z18K1": "Z34800K1" } }, "Z802K2": "Z11853", "Z802K3": "Z13128" }, "Z10000K2": { "Z1K1": "Z18", "Z18K1": "Z34800K2" } }, "Z30795K2": { "Z1K1": "Z7", "Z7K1": "Z34802", "Z34802K1": { "Z1K1": "Z18", "Z18K1": "Z34800K1" }, "Z34802K2": { "Z1K1": "Z7", "Z7K1": "Z21174", "Z21174K1": { "Z1K1": "Z7", "Z7K1": "Z13397", "Z13397K1": { "Z1K1": "Z7", "Z7K1": "Z21177", "Z21177K1": { "Z1K1": "Z7", "Z7K1": "Z30531", "Z30531K1": { "Z1K1": "Z7", "Z7K1": "Z11410", "Z11410K1": { "Z1K1": "Z18", "Z18K1": "Z34800K2" }, "Z11410K2": "K" } } }, "Z13397K2": { "Z1K1": "Z7", "Z7K1": "Z14283", "Z14283K1": { "Z1K1": "Z7", "Z7K1": "Z11420", "Z11420K1": { "Z1K1": "Z18", "Z18K1": "Z34800K2" }, "Z11420K2": "K" } } } } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "input ID with short Type label, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } tbi9zcvo7t66zj4vx1jelb73a1d4935 Z34821 0 82536 272491 2026-05-05T17:25:01Z YoshiRulz 10156 Create test 272491 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34821" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34800", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34800", "Z34800K1": "Z1113", "Z34800K2": "Z19711K1" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Rational Z19711K1" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "(en-au, \"Z19711K1\") -\u003E en:\"Rational Z19711K1\"" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } mylnirb1qv1fpyij5gyyy3onacc1q0y Z34822 0 82537 272498 2026-05-05T17:34:10Z YoshiRulz 10156 Create implementation 272498 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34822" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z31041", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z14396", "Z14396K1": { "Z1K1": "Z7", "Z7K1": "Z34810", "Z34810K1": { "Z1K1": "Z18", "Z18K1": "Z31041K2" }, "Z34810K2": { "Z1K1": "Z7", "Z7K1": "Z30531", "Z30531K1": { "Z1K1": "Z18", "Z18K1": "Z31041K1" } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "display object label text, via-Z11 composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } qzhhf9q29l20mjdd6sgxrr8z6apyax1 Z34823 0 82538 272500 2026-05-05T17:35:45Z YoshiRulz 10156 Create implementation 272500 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34823" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z34367", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z12696", "Z12696K1": { "Z1K1": "Z18", "Z18K1": "Z34367K1" }, "Z12696K2": { "Z1K1": "Z18", "Z18K1": "Z34367K2" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "list of Booleans contains, via-list composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } dhwjan6qpeawuy99ri79u1fx5drrj7b Z34824 0 82539 272501 2026-05-05T17:37:04Z YoshiRulz 10156 Create implementation 272501 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34824" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z34367", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z13036", "Z13036K1": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z18", "Z18K1": "Z34367K2" }, "Z802K2": "Z12698", "Z802K3": "Z16798" }, "Z13036K2": { "Z1K1": "Z18", "Z18K1": "Z34367K1" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "list of Booleans contains, via-any composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 3kh3esr1op280zwjswlh4bsvxxzar32 Z34825 0 82540 272506 2026-05-05T20:29:05Z Hogü-456 617 Erstelle Funktion 272506 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34825" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z34825K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Datenobjekt" } ] } } ], "Z8K2": "Z6005", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34825" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Geschlechtsbezogene Berufsbezeichnung" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Gibt für eine Person, angegeben durch ein Datenobjekt die geschlechtsspezifische Berufsbezeichnung zurück" } ] } } bo34tw7qksruoyqc4ucki9z4p5onpgy 272509 272506 2026-05-05T20:33:08Z Hogü-456 617 272509 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34825" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z34825K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "generische Berufsbezeichnung" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z34825K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Datenobjekt zur Person" } ] } } ], "Z8K2": "Z6005", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34825" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Geschlechtsbezogene Berufsbezeichnung" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Gibt für eine Person, angegeben durch ein Datenobjekt die geschlechtsspezifische Berufsbezeichnung zurück" } ] } } 1afzon1dawfnviz9vmlxjgiue3eeh4i Z34826 0 82541 272507 2026-05-05T20:31:50Z Hogü-456 617 272507 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34826" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z34825", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z30460", "Z30460K1": { "Z1K1": "Z18", "Z18K1": "Z34825K1" }, "Z30460K2": "Z1430" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Geschlechtsspezifische Berufsbezeichnung, Komp." } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Komposition zur Ausgabe vom Wikidata-Lexem der Geschlechtsspezifischen Berufsbezeichnung" } ] } } 9txe1arjmw9lb0a5pcmkeaceglk8f7k Z34827 0 82542 272512 2026-05-05T20:39:45Z YoshiRulz 10156 Create function 272512 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34827" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z34827K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "number" } ] } } ], "Z8K2": "Z40", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34827" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "is float64 finite?" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } f0y22s83c0riae3n8qoydqxwj563cpb 272524 272512 2026-05-05T21:40:16Z YoshiRulz 10156 Added Z34830, Z34831, Z34832, Z34833, Z34834, Z34835 and Z34836 to the approved list of test cases 272524 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34827" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z34827K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "number" } ] } } ], "Z8K2": "Z40", "Z8K3": [ "Z20", "Z34830", "Z34831", "Z34832", "Z34833", "Z34834", "Z34835", "Z34836" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34827" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "is float64 finite?" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } l9dnqqgpk85ak3u3gcdlini0u8hbevj 272527 272524 2026-05-05T21:43:11Z YoshiRulz 10156 Added Z34837 and Z34838 to the approved list of implementations 272527 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34827" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z34827K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "number" } ] } } ], "Z8K2": "Z40", "Z8K3": [ "Z20", "Z34830", "Z34831", "Z34832", "Z34833", "Z34834", "Z34835", "Z34836" ], "Z8K4": [ "Z14", "Z34837", "Z34838" ], "Z8K5": "Z34827" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "is float64 finite?" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } rioaszcm1vy8227qp8fb946yob5ber8 272529 272527 2026-05-05T21:44:03Z YoshiRulz 10156 Added Z34839 to the approved list of test cases 272529 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34827" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z34827K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "number" } ] } } ], "Z8K2": "Z40", "Z8K3": [ "Z20", "Z34830", "Z34831", "Z34832", "Z34833", "Z34834", "Z34835", "Z34836", "Z34839" ], "Z8K4": [ "Z14", "Z34837", "Z34838" ], "Z8K5": "Z34827" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "is float64 finite?" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } n7jr2h6tgf0d7wpteo78hw8idznrswa 272537 272529 2026-05-05T22:18:27Z WikiLambda system 3 Updated the implementation list (see [[Help:Wikifunctions/Implementation_ordering_and_choosing|About implementation selection]]) 272537 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34827" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z20838", "Z17K2": "Z34827K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "number" } ] } } ], "Z8K2": "Z40", "Z8K3": [ "Z20", "Z34830", "Z34831", "Z34832", "Z34833", "Z34834", "Z34835", "Z34836", "Z34839" ], "Z8K4": [ "Z14", "Z34838", "Z34837" ], "Z8K5": "Z34827" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "is float64 finite?" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 4ob7pir95hpiulztfbn98ccw2h2wy3h Z34828 0 82543 272515 2026-05-05T21:36:43Z YoshiRulz 10156 Create persistent float 272515 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34828" }, "Z2K2": { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "1024" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "0" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20832" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "positive infinity (float64)" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 6cypaiugukmhcddpbjh0mwknurf94vt Z34829 0 82544 272516 2026-05-05T21:36:47Z YoshiRulz 10156 Create persistent float 272516 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34829" }, "Z2K2": { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16662" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "1024" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "0" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20833" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "negative infinity (float64)" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } msxltqkote1w73fhqxp9503mw1nadl2 Z34830 0 82545 272517 2026-05-05T21:39:32Z YoshiRulz 10156 Create test 272517 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34830" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34827", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34827", "Z34827K1": "Z20862" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z844", "Z844K2": { "Z1K1": "Z40", "Z40K1": "Z41" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "pi is finite" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } ckjx6o4wbpce3k36k3m2rwtx0p76cfy Z34831 0 82546 272518 2026-05-05T21:39:37Z YoshiRulz 10156 Create test 272518 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34831" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34827", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34827", "Z34827K1": { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16662" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "1023" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "0" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20829" } } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z844", "Z844K2": { "Z1K1": "Z40", "Z40K1": "Z41" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "0 is finite" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } nl055jhab0v5ntune3cd9u1u5028wak Z34832 0 82547 272519 2026-05-05T21:39:40Z YoshiRulz 10156 Create test 272519 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34832" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34827", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34827", "Z34827K1": { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16662" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16662" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "1023" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "0" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20831" } } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z844", "Z844K2": { "Z1K1": "Z40", "Z40K1": "Z41" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "-0 is finite" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } mugcp3g2cxhwwqr2j7eixts3qlv9zyr Z34833 0 82548 272520 2026-05-05T21:39:43Z YoshiRulz 10156 Create test 272520 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34833" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34827", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34827", "Z34827K1": { "Z1K1": "Z7", "Z7K1": "Z21775", "Z21775K1": { "Z1K1": "Z7", "Z7K1": "Z21028", "Z21028K1": { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "1" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "0" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20837" } }, "Z21028K2": { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "7" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "2533274790395904" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20837" } } } } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z844", "Z844K2": { "Z1K1": "Z40", "Z40K1": "Z41" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "-2^200 is finite" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } nu3axpbg6muz6l60s6v00slmkvke8d2 Z34834 0 82549 272521 2026-05-05T21:39:46Z YoshiRulz 10156 Create test 272521 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34834" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34827", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34827", "Z34827K1": "Z34828" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z844", "Z844K2": { "Z1K1": "Z40", "Z40K1": "Z42" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "∞ is not finite" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 22rzcd2l5uugkme2av18pqu33w2kry8 Z34835 0 82550 272522 2026-05-05T21:39:49Z YoshiRulz 10156 Create test 272522 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34835" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34827", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34827", "Z34827K1": "Z34829" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z844", "Z844K2": { "Z1K1": "Z40", "Z40K1": "Z42" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "-∞ is not finite" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 8r09scgplohkmzcbzmu9mrh1tik9hrk Z34836 0 82551 272523 2026-05-05T21:39:52Z YoshiRulz 10156 Create test 272523 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34836" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34827", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34827", "Z34827K1": { "Z1K1": "Z20838", "Z20838K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z20838K2": { "Z1K1": "Z16683", "Z16683K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "1024" } }, "Z20838K3": { "Z1K1": "Z13518", "Z13518K1": "4503599627370495" }, "Z20838K4": { "Z1K1": "Z20825", "Z20825K1": "Z20834" } } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z844", "Z844K2": { "Z1K1": "Z40", "Z40K1": "Z42" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "NaN is not finite" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 09p6lfad57eqlgthi1ovp4k84cl0qkf Z34837 0 82552 272525 2026-05-05T21:41:59Z YoshiRulz 10156 Create implementation 272525 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34837" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z34827", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z10603", "Z10603K1": { "Z1K1": "Z18", "Z18K1": "Z34827K1" }, "Z10603K2": { "Z1K1": "Z7", "Z7K1": "Z21775", "Z21775K1": "Z26368" }, "Z10603K3": "Z26368" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "is float64 finite, in range composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } cdhvf2p41vyg71rhiix865n6j7upjvz Z34838 0 82553 272526 2026-05-05T21:42:52Z YoshiRulz 10156 Create implementation 272526 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34838" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z34827", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z10216", "Z10216K1": { "Z1K1": "Z7", "Z7K1": "Z12696", "Z12696K1": [ "Z20825", "Z20832", "Z20833", "Z20834", "Z20835", "Z20836" ], "Z12696K2": { "Z1K1": "Z7", "Z7K1": "Z21145", "Z21145K1": { "Z1K1": "Z18", "Z18K1": "Z34827K1" } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "is float64 finite, special value composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 18gs87zjovjrax1nkd7879n7d1krv5k Z34839 0 82554 272528 2026-05-05T21:43:49Z YoshiRulz 10156 Create test 272528 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34839" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34827", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34827", "Z34827K1": "Z26368" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z844", "Z844K2": { "Z1K1": "Z40", "Z40K1": "Z41" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "highest finite value is finite" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 51ngffgpz0rttz963zpxln60xgyhvt5 Z34840 0 82555 272531 2026-05-05T22:04:41Z YoshiRulz 10156 Create implementation 272531 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34840" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z21071", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z34827", "Z34827K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } }, "Z802K2": { "Z1K1": "Z7", "Z7K1": "Z19706", "Z19706K1": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z10615", "Z10615K1": { "Z1K1": "Z7", "Z7K1": "Z21158", "Z21158K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } }, "Z10615K2": "1" }, "Z802K2": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16662" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "1" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "1" } }, "Z802K3": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "1" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "1" } } }, "Z19706K2": { "Z1K1": "Z7", "Z7K1": "Z19706", "Z19706K1": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z10615", "Z10615K1": { "Z1K1": "Z7", "Z7K1": "Z14456", "Z14456K1": { "Z1K1": "Z7", "Z7K1": "Z21158", "Z21158K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } } }, "Z10615K2": "00000000000" }, "Z802K2": { "Z1K1": "Z7", "Z7K1": "Z19953", "Z19953K1": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "2" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "1" } }, "Z19953K2": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16662" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "1022" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "1" } } }, "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z19953", "Z19953K1": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "2" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "1" } }, "Z19953K2": { "Z1K1": "Z7", "Z7K1": "Z19744", "Z19744K1": { "Z1K1": "Z7", "Z7K1": "Z17315", "Z17315K1": { "Z1K1": "Z7", "Z7K1": "Z13797", "Z13797K1": { "Z1K1": "Z7", "Z7K1": "Z28630", "Z28630K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" }, "Z28630K2": { "Z1K1": "Z13518", "Z13518K1": "1" }, "Z28630K3": { "Z1K1": "Z13518", "Z13518K1": "12" } } }, "Z17315K2": { "Z1K1": "Z13518", "Z13518K1": "1023" } } } } }, "Z19706K2": { "Z1K1": "Z7", "Z7K1": "Z27232", "Z27232K1": { "Z1K1": "Z7", "Z7K1": "Z13797", "Z13797K1": { "Z1K1": "Z7", "Z7K1": "Z14636", "Z14636K1": { "Z1K1": "Z7", "Z7K1": "Z21158", "Z21158K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } }, "Z14636K2": { "Z1K1": "Z13518", "Z13518K1": "12" } } }, "Z27232K2": { "Z1K1": "Z7", "Z7K1": "Z13644", "Z13644K1": { "Z1K1": "Z13518", "Z13518K1": "52" } } } } }, "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z851", "Z851K1": "Z516", "Z851K2": [ "Z6", "Z21071K1", { "Z1K1": "Z18", "Z18K1": "Z21071K1" } ] } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "float64 to Rational number, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } c5v8bgx04jyjqavvh825okurjb8e2xl 272532 272531 2026-05-05T22:11:17Z YoshiRulz 10156 Fix type 272532 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34840" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z21071", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z34827", "Z34827K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } }, "Z802K2": { "Z1K1": "Z7", "Z7K1": "Z19706", "Z19706K1": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z10615", "Z10615K1": { "Z1K1": "Z7", "Z7K1": "Z21158", "Z21158K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } }, "Z10615K2": "1" }, "Z802K2": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16662" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "1" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "1" } }, "Z802K3": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "1" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "1" } } }, "Z19706K2": { "Z1K1": "Z7", "Z7K1": "Z19706", "Z19706K1": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z10615", "Z10615K1": { "Z1K1": "Z7", "Z7K1": "Z14456", "Z14456K1": { "Z1K1": "Z7", "Z7K1": "Z21158", "Z21158K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } } }, "Z10615K2": "00000000000" }, "Z802K2": { "Z1K1": "Z7", "Z7K1": "Z19953", "Z19953K1": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "2" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "1" } }, "Z19953K2": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16662" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "1022" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "1" } } }, "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z19953", "Z19953K1": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "2" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "1" } }, "Z19953K2": { "Z1K1": "Z7", "Z7K1": "Z19744", "Z19744K1": { "Z1K1": "Z7", "Z7K1": "Z17315", "Z17315K1": { "Z1K1": "Z7", "Z7K1": "Z13797", "Z13797K1": { "Z1K1": "Z7", "Z7K1": "Z28630", "Z28630K1": { "Z1K1": "Z7", "Z7K1": "Z21158", "Z21158K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } }, "Z28630K2": { "Z1K1": "Z13518", "Z13518K1": "1" }, "Z28630K3": { "Z1K1": "Z13518", "Z13518K1": "12" } } }, "Z17315K2": { "Z1K1": "Z13518", "Z13518K1": "1023" } } } } }, "Z19706K2": { "Z1K1": "Z7", "Z7K1": "Z27232", "Z27232K1": { "Z1K1": "Z7", "Z7K1": "Z13797", "Z13797K1": { "Z1K1": "Z7", "Z7K1": "Z14636", "Z14636K1": { "Z1K1": "Z7", "Z7K1": "Z21158", "Z21158K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } }, "Z14636K2": { "Z1K1": "Z13518", "Z13518K1": "12" } } }, "Z27232K2": { "Z1K1": "Z7", "Z7K1": "Z13644", "Z13644K1": { "Z1K1": "Z13518", "Z13518K1": "52" } } } } }, "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z851", "Z851K1": "Z516", "Z851K2": [ "Z6", "Z21071K1", { "Z1K1": "Z18", "Z18K1": "Z21071K1" } ] } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "float64 to Rational number, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 1cbf615mon6jow0vhpa170f1uf6dqin 272533 272532 2026-05-05T22:13:47Z YoshiRulz 10156 Add in the implied 1 left of the decimal point 272533 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34840" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z21071", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z34827", "Z34827K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } }, "Z802K2": { "Z1K1": "Z7", "Z7K1": "Z19706", "Z19706K1": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z10615", "Z10615K1": { "Z1K1": "Z7", "Z7K1": "Z21158", "Z21158K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } }, "Z10615K2": "1" }, "Z802K2": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16662" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "1" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "1" } }, "Z802K3": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "1" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "1" } } }, "Z19706K2": { "Z1K1": "Z7", "Z7K1": "Z19706", "Z19706K1": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z10615", "Z10615K1": { "Z1K1": "Z7", "Z7K1": "Z14456", "Z14456K1": { "Z1K1": "Z7", "Z7K1": "Z21158", "Z21158K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } } }, "Z10615K2": "00000000000" }, "Z802K2": { "Z1K1": "Z7", "Z7K1": "Z19953", "Z19953K1": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "2" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "1" } }, "Z19953K2": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16662" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "1022" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "1" } } }, "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z19953", "Z19953K1": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "2" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "1" } }, "Z19953K2": { "Z1K1": "Z7", "Z7K1": "Z19744", "Z19744K1": { "Z1K1": "Z7", "Z7K1": "Z17315", "Z17315K1": { "Z1K1": "Z7", "Z7K1": "Z13797", "Z13797K1": { "Z1K1": "Z7", "Z7K1": "Z28630", "Z28630K1": { "Z1K1": "Z7", "Z7K1": "Z21158", "Z21158K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } }, "Z28630K2": { "Z1K1": "Z13518", "Z13518K1": "1" }, "Z28630K3": { "Z1K1": "Z13518", "Z13518K1": "12" } } }, "Z17315K2": { "Z1K1": "Z13518", "Z13518K1": "1023" } } } } }, "Z19706K2": { "Z1K1": "Z7", "Z7K1": "Z27232", "Z27232K1": { "Z1K1": "Z7", "Z7K1": "Z13797", "Z13797K1": { "Z1K1": "Z7", "Z7K1": "Z10000", "Z10000K1": "1", "Z10000K2": { "Z1K1": "Z7", "Z7K1": "Z14636", "Z14636K1": { "Z1K1": "Z7", "Z7K1": "Z21158", "Z21158K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } }, "Z14636K2": { "Z1K1": "Z13518", "Z13518K1": "12" } } } }, "Z27232K2": { "Z1K1": "Z7", "Z7K1": "Z13644", "Z13644K1": { "Z1K1": "Z13518", "Z13518K1": "52" } } } } }, "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z851", "Z851K1": "Z516", "Z851K2": [ "Z6", "Z21071K1", { "Z1K1": "Z18", "Z18K1": "Z21071K1" } ] } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "float64 to Rational number, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } rzal2etq2k99hqjjzcpyogx61qenkq7 272534 272533 2026-05-05T22:15:34Z YoshiRulz 10156 ...unless it's subnormal 272534 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34840" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z21071", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z34827", "Z34827K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } }, "Z802K2": { "Z1K1": "Z7", "Z7K1": "Z19706", "Z19706K1": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z10615", "Z10615K1": { "Z1K1": "Z7", "Z7K1": "Z21158", "Z21158K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } }, "Z10615K2": "1" }, "Z802K2": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16662" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "1" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "1" } }, "Z802K3": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "1" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "1" } } }, "Z19706K2": { "Z1K1": "Z7", "Z7K1": "Z19706", "Z19706K1": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z10615", "Z10615K1": { "Z1K1": "Z7", "Z7K1": "Z14456", "Z14456K1": { "Z1K1": "Z7", "Z7K1": "Z21158", "Z21158K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } } }, "Z10615K2": "00000000000" }, "Z802K2": { "Z1K1": "Z7", "Z7K1": "Z19953", "Z19953K1": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "2" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "1" } }, "Z19953K2": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16662" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "1022" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "1" } } }, "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z19953", "Z19953K1": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "2" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "1" } }, "Z19953K2": { "Z1K1": "Z7", "Z7K1": "Z19744", "Z19744K1": { "Z1K1": "Z7", "Z7K1": "Z17315", "Z17315K1": { "Z1K1": "Z7", "Z7K1": "Z13797", "Z13797K1": { "Z1K1": "Z7", "Z7K1": "Z28630", "Z28630K1": { "Z1K1": "Z7", "Z7K1": "Z21158", "Z21158K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } }, "Z28630K2": { "Z1K1": "Z13518", "Z13518K1": "1" }, "Z28630K3": { "Z1K1": "Z13518", "Z13518K1": "12" } } }, "Z17315K2": { "Z1K1": "Z13518", "Z13518K1": "1023" } } } } }, "Z19706K2": { "Z1K1": "Z7", "Z7K1": "Z27232", "Z27232K1": { "Z1K1": "Z7", "Z7K1": "Z13797", "Z13797K1": { "Z1K1": "Z7", "Z7K1": "Z10000", "Z10000K1": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z10615", "Z10615K1": { "Z1K1": "Z7", "Z7K1": "Z14456", "Z14456K1": { "Z1K1": "Z7", "Z7K1": "Z21158", "Z21158K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } } }, "Z10615K2": "00000000000" }, "Z802K2": "Z28420", "Z802K3": "1" }, "Z10000K2": { "Z1K1": "Z7", "Z7K1": "Z14636", "Z14636K1": { "Z1K1": "Z7", "Z7K1": "Z21158", "Z21158K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } }, "Z14636K2": { "Z1K1": "Z13518", "Z13518K1": "12" } } } }, "Z27232K2": { "Z1K1": "Z7", "Z7K1": "Z13644", "Z13644K1": { "Z1K1": "Z13518", "Z13518K1": "52" } } } } }, "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z851", "Z851K1": "Z516", "Z851K2": [ "Z6", "Z21071K1", { "Z1K1": "Z18", "Z18K1": "Z21071K1" } ] } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "float64 to Rational number, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } fjjklw4vj1oorq9t66307w7c780tjvf 272538 272534 2026-05-05T22:19:44Z YoshiRulz 10156 Fix typo 272538 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34840" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z21071", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z34827", "Z34827K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } }, "Z802K2": { "Z1K1": "Z7", "Z7K1": "Z19706", "Z19706K1": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z10615", "Z10615K1": { "Z1K1": "Z7", "Z7K1": "Z21158", "Z21158K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } }, "Z10615K2": "1" }, "Z802K2": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16662" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "1" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "1" } }, "Z802K3": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "1" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "1" } } }, "Z19706K2": { "Z1K1": "Z7", "Z7K1": "Z19706", "Z19706K1": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z10615", "Z10615K1": { "Z1K1": "Z7", "Z7K1": "Z14456", "Z14456K1": { "Z1K1": "Z7", "Z7K1": "Z21158", "Z21158K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } } }, "Z10615K2": "00000000000" }, "Z802K2": { "Z1K1": "Z7", "Z7K1": "Z19953", "Z19953K1": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "2" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "1" } }, "Z19953K2": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16662" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "1022" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "1" } } }, "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z19953", "Z19953K1": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "2" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "1" } }, "Z19953K2": { "Z1K1": "Z7", "Z7K1": "Z19744", "Z19744K1": { "Z1K1": "Z7", "Z7K1": "Z17315", "Z17315K1": { "Z1K1": "Z7", "Z7K1": "Z13797", "Z13797K1": { "Z1K1": "Z7", "Z7K1": "Z28630", "Z28630K1": { "Z1K1": "Z7", "Z7K1": "Z21158", "Z21158K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } }, "Z28630K2": { "Z1K1": "Z13518", "Z13518K1": "1" }, "Z28630K3": { "Z1K1": "Z13518", "Z13518K1": "12" } } }, "Z17315K2": { "Z1K1": "Z13518", "Z13518K1": "1023" } } } } }, "Z19706K2": { "Z1K1": "Z7", "Z7K1": "Z27232", "Z27232K1": { "Z1K1": "Z7", "Z7K1": "Z13797", "Z13797K1": { "Z1K1": "Z7", "Z7K1": "Z10000", "Z10000K1": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z10615", "Z10615K1": { "Z1K1": "Z7", "Z7K1": "Z14456", "Z14456K1": { "Z1K1": "Z7", "Z7K1": "Z21158", "Z21158K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } } }, "Z10615K2": "00000000000" }, "Z802K2": "Z11853", "Z802K3": "1" }, "Z10000K2": { "Z1K1": "Z7", "Z7K1": "Z14636", "Z14636K1": { "Z1K1": "Z7", "Z7K1": "Z21158", "Z21158K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } }, "Z14636K2": { "Z1K1": "Z13518", "Z13518K1": "12" } } } }, "Z27232K2": { "Z1K1": "Z7", "Z7K1": "Z13644", "Z13644K1": { "Z1K1": "Z13518", "Z13518K1": "52" } } } } }, "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z851", "Z851K1": "Z516", "Z851K2": [ "Z6", "Z21071K1", { "Z1K1": "Z18", "Z18K1": "Z21071K1" } ] } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "float64 to Rational number, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } tcabjzetdpz5kyvo6sl5g9hatcsxc3v 272539 272538 2026-05-05T22:25:03Z YoshiRulz 10156 Simply 2^n reconstruction 272539 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34840" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z21071", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z34827", "Z34827K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } }, "Z802K2": { "Z1K1": "Z7", "Z7K1": "Z19706", "Z19706K1": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z10615", "Z10615K1": { "Z1K1": "Z7", "Z7K1": "Z21158", "Z21158K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } }, "Z10615K2": "1" }, "Z802K2": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16662" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "1" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "1" } }, "Z802K3": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "1" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "1" } } }, "Z19706K2": { "Z1K1": "Z7", "Z7K1": "Z19706", "Z19706K1": { "Z1K1": "Z7", "Z7K1": "Z19953", "Z19953K1": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "2" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "1" } }, "Z19953K2": { "Z1K1": "Z7", "Z7K1": "Z19744", "Z19744K1": { "Z1K1": "Z7", "Z7K1": "Z17315", "Z17315K1": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z10615", "Z10615K1": { "Z1K1": "Z7", "Z7K1": "Z14456", "Z14456K1": { "Z1K1": "Z7", "Z7K1": "Z21158", "Z21158K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } } }, "Z10615K2": "00000000000" }, "Z802K2": { "Z1K1": "Z13518", "Z13518K1": "1" }, "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z13797", "Z13797K1": { "Z1K1": "Z7", "Z7K1": "Z28630", "Z28630K1": { "Z1K1": "Z7", "Z7K1": "Z21158", "Z21158K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } }, "Z28630K2": { "Z1K1": "Z13518", "Z13518K1": "1" }, "Z28630K3": { "Z1K1": "Z13518", "Z13518K1": "12" } } } }, "Z17315K2": { "Z1K1": "Z13518", "Z13518K1": "1023" } } } }, "Z19706K2": { "Z1K1": "Z7", "Z7K1": "Z27232", "Z27232K1": { "Z1K1": "Z7", "Z7K1": "Z13797", "Z13797K1": { "Z1K1": "Z7", "Z7K1": "Z10000", "Z10000K1": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z10615", "Z10615K1": { "Z1K1": "Z7", "Z7K1": "Z14456", "Z14456K1": { "Z1K1": "Z7", "Z7K1": "Z21158", "Z21158K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } } }, "Z10615K2": "00000000000" }, "Z802K2": "Z11853", "Z802K3": "1" }, "Z10000K2": { "Z1K1": "Z7", "Z7K1": "Z14636", "Z14636K1": { "Z1K1": "Z7", "Z7K1": "Z21158", "Z21158K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } }, "Z14636K2": { "Z1K1": "Z13518", "Z13518K1": "12" } } } }, "Z27232K2": { "Z1K1": "Z7", "Z7K1": "Z13644", "Z13644K1": { "Z1K1": "Z13518", "Z13518K1": "52" } } } } }, "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z851", "Z851K1": "Z516", "Z851K2": [ "Z6", "Z21071K1", { "Z1K1": "Z18", "Z18K1": "Z21071K1" } ] } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "float64 to Rational number, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 120a3mquzs40xyh7crtghtew54kza8c 272540 272539 2026-05-05T22:36:23Z YoshiRulz 10156 Consolidate factors of 2 272540 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34840" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z21071", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z34827", "Z34827K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } }, "Z802K2": { "Z1K1": "Z7", "Z7K1": "Z19706", "Z19706K1": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z10615", "Z10615K1": { "Z1K1": "Z7", "Z7K1": "Z21158", "Z21158K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } }, "Z10615K2": "1" }, "Z802K2": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16662" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "1" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "1" } }, "Z802K3": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "1" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "1" } } }, "Z19706K2": { "Z1K1": "Z7", "Z7K1": "Z19706", "Z19706K1": { "Z1K1": "Z7", "Z7K1": "Z19953", "Z19953K1": { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "2" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "1" } }, "Z19953K2": { "Z1K1": "Z7", "Z7K1": "Z19744", "Z19744K1": { "Z1K1": "Z7", "Z7K1": "Z17315", "Z17315K1": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z10615", "Z10615K1": { "Z1K1": "Z7", "Z7K1": "Z14456", "Z14456K1": { "Z1K1": "Z7", "Z7K1": "Z21158", "Z21158K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } } }, "Z10615K2": "00000000000" }, "Z802K2": { "Z1K1": "Z13518", "Z13518K1": "1" }, "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z13797", "Z13797K1": { "Z1K1": "Z7", "Z7K1": "Z28630", "Z28630K1": { "Z1K1": "Z7", "Z7K1": "Z21158", "Z21158K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } }, "Z28630K2": { "Z1K1": "Z13518", "Z13518K1": "1" }, "Z28630K3": { "Z1K1": "Z13518", "Z13518K1": "12" } } } }, "Z17315K2": { "Z1K1": "Z13518", "Z13518K1": "1075" } } } }, "Z19706K2": { "Z1K1": "Z7", "Z7K1": "Z21653", "Z21653K1": { "Z1K1": "Z7", "Z7K1": "Z13797", "Z13797K1": { "Z1K1": "Z7", "Z7K1": "Z10000", "Z10000K1": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z10615", "Z10615K1": { "Z1K1": "Z7", "Z7K1": "Z14456", "Z14456K1": { "Z1K1": "Z7", "Z7K1": "Z21158", "Z21158K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } } }, "Z10615K2": "00000000000" }, "Z802K2": "Z11853", "Z802K3": "1" }, "Z10000K2": { "Z1K1": "Z7", "Z7K1": "Z14636", "Z14636K1": { "Z1K1": "Z7", "Z7K1": "Z21158", "Z21158K1": { "Z1K1": "Z18", "Z18K1": "Z21071K1" } }, "Z14636K2": { "Z1K1": "Z13518", "Z13518K1": "12" } } } } } } }, "Z802K3": { "Z1K1": "Z7", "Z7K1": "Z851", "Z851K1": "Z516", "Z851K2": [ "Z6", "Z21071K1", { "Z1K1": "Z18", "Z18K1": "Z21071K1" } ] } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "float64 to Rational number, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } rwtcovckhnkzkbii4mn2c2xdnx4x3a7 Z34841 0 82556 272547 2026-05-06T00:46:36Z Some helpful person 65824 272547 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34841" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32314", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32314", "Z32314K1": "Unicode" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z844", "Z844K2": { "Z1K1": "Z40", "Z40K1": "Z42" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "\"Unicode\" -\u003E false" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } gpgor4run8m7k21a9wwc4r6xmqqj8ol 272549 272547 2026-05-06T00:49:54Z Some helpful person 65824 272549 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34841" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32314", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32314", "Z32314K1": "Unicode" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z844", "Z844K2": { "Z1K1": "Z40", "Z40K1": "Z42" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "\"Unicode\" -\u003E F" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 3vvzw0q3v9lbruo4e3xq5da7j4swpj7 Z34842 0 82557 272550 2026-05-06T00:54:35Z YoshiRulz 10156 Create implementation 272550 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34842" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z34793", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z19205", "Z19205K1": { "Z1K1": "Z7", "Z7K1": "Z22820", "Z22820K1": { "Z1K1": "Z18", "Z18K1": "Z34793K1" }, "Z22820K2": { "Z1K1": "Z7", "Z7K1": "Z13464", "Z13464K1": "Z13522", "Z13464K2": { "Z1K1": "Z7", "Z7K1": "Z13436", "Z13436K1": "Z29413", "Z13436K2": { "Z1K1": "Z40", "Z40K1": "Z41" }, "Z13436K3": { "Z1K1": "Z7", "Z7K1": "Z29794", "Z29794K1": { "Z1K1": "Z18", "Z18K1": "Z34793K2" }, "Z29794K2": { "Z1K1": "Z18", "Z18K1": "Z34793K1" }, "Z29794K3": { "Z1K1": "Z18", "Z18K1": "Z34793K1" } } }, "Z13464K3": { "Z1K1": "Z7", "Z7K1": "Z29429", "Z29429K1": { "Z1K1": "Z7", "Z7K1": "Z18475", "Z18475K1": { "Z1K1": "Z7", "Z7K1": "Z13436", "Z13436K1": "Z29413", "Z13436K2": { "Z1K1": "Z40", "Z40K1": "Z41" }, "Z13436K3": { "Z1K1": "Z7", "Z7K1": "Z29794", "Z29794K1": { "Z1K1": "Z18", "Z18K1": "Z34793K2" }, "Z29794K2": { "Z1K1": "Z18", "Z18K1": "Z34793K1" }, "Z29794K3": { "Z1K1": "Z18", "Z18K1": "Z34793K1" } } } } } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "most common elements in list, product composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 4cuja5j4lfmy3egu6s69pzkunraxeil 272555 272550 2026-05-06T00:58:25Z YoshiRulz 10156 Fix list typing 272555 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34842" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z34793", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z19205", "Z19205K1": { "Z1K1": "Z7", "Z7K1": "Z22820", "Z22820K1": { "Z1K1": "Z18", "Z18K1": "Z34793K1" }, "Z22820K2": { "Z1K1": "Z7", "Z7K1": "Z13464", "Z13464K1": "Z13522", "Z13464K2": { "Z1K1": "Z7", "Z7K1": "Z13436", "Z13436K1": "Z29413", "Z13436K2": { "Z1K1": "Z40", "Z40K1": "Z41" }, "Z13436K3": { "Z1K1": "Z7", "Z7K1": "Z29794", "Z29794K1": { "Z1K1": "Z18", "Z18K1": "Z34793K2" }, "Z29794K2": { "Z1K1": "Z7", "Z7K1": "Z17895", "Z17895K1": { "Z1K1": "Z18", "Z18K1": "Z34793K1" } }, "Z29794K3": { "Z1K1": "Z7", "Z7K1": "Z17895", "Z17895K1": { "Z1K1": "Z18", "Z18K1": "Z34793K1" } } } }, "Z13464K3": { "Z1K1": "Z7", "Z7K1": "Z29429", "Z29429K1": { "Z1K1": "Z7", "Z7K1": "Z18475", "Z18475K1": { "Z1K1": "Z7", "Z7K1": "Z13436", "Z13436K1": "Z29413", "Z13436K2": { "Z1K1": "Z40", "Z40K1": "Z41" }, "Z13436K3": { "Z1K1": "Z7", "Z7K1": "Z29794", "Z29794K1": { "Z1K1": "Z18", "Z18K1": "Z34793K2" }, "Z29794K2": { "Z1K1": "Z7", "Z7K1": "Z17895", "Z17895K1": { "Z1K1": "Z18", "Z18K1": "Z34793K1" } }, "Z29794K3": { "Z1K1": "Z7", "Z7K1": "Z17895", "Z17895K1": { "Z1K1": "Z18", "Z18K1": "Z34793K1" } } } } } } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "most common elements in list, product composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } ghaeatn7fqsxdlklm95i4r76s3vyg67 Z34843 0 82558 272552 2026-05-06T00:56:52Z YoshiRulz 10156 Create test 272552 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34843" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34793", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34793", "Z34793K1": [ "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": "1" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "3" } }, { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "2" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "4" } }, { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "3" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "6" } }, { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "2" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "6" } } ], "Z34793K2": "Z19686" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z889", "Z889K2": [ "Z19677", { "Z1K1": "Z19677", "Z19677K1": { "Z1K1": "Z16659", "Z16659K1": "Z16660" }, "Z19677K2": { "Z1K1": "Z13518", "Z13518K1": "1" }, "Z19677K3": { "Z1K1": "Z13518", "Z13518K1": "2" } } ], "Z889K3": "Z19686" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "mode([ 1/2, 1/3, 2/4, 3/6, 2/6 ], equality)" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } q7vx5s8taxqtlkudahjld4ni50j9vpt Z34844 0 82559 272561 2026-05-06T01:04:21Z YoshiRulz 10156 Create implementation 272561 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34844" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z21851", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z34793", "Z34793K1": { "Z1K1": "Z18", "Z18K1": "Z21851K1" }, "Z34793K2": "Z16688" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "mode(s) of list of Integers, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 3emv5sua81fawooxwillaumvmn2lxne Z34845 0 82560 272563 2026-05-06T01:08:22Z YoshiRulz 10156 Create implementation 272563 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34845" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z21856", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z20854", "Z20854K1": { "Z1K1": "Z7", "Z7K1": "Z27232", "Z27232K1": { "Z1K1": "Z7", "Z7K1": "Z13521", "Z13521K1": { "Z1K1": "Z7", "Z7K1": "Z15107", "Z15107K1": { "Z1K1": "Z18", "Z18K1": "Z21856K1" } }, "Z13521K2": { "Z1K1": "Z18", "Z18K1": "Z21856K2" } }, "Z27232K2": { "Z1K1": "Z13518", "Z13518K1": "3" } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "mean arterial pressure, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 25q09sndx5peogd7x9d0tmxadjzpyae Z34846 0 82561 272565 2026-05-06T01:13:45Z YoshiRulz 10156 Create implementation 272565 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34846" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z21868", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z13522", "Z13522K1": { "Z1K1": "Z7", "Z7K1": "Z14038", "Z14038K1": { "Z1K1": "Z7", "Z7K1": "Z18475", "Z18475K1": { "Z1K1": "Z7", "Z7K1": "Z13464", "Z13464K1": "Z13647", "Z13464K2": { "Z1K1": "Z7", "Z7K1": "Z25520", "Z25520K1": { "Z1K1": "Z18", "Z18K1": "Z21868K1" } }, "Z13464K3": { "Z1K1": "Z7", "Z7K1": "Z14344", "Z14344K1": { "Z1K1": "Z18", "Z18K1": "Z21868K1" } } } } }, "Z13522K2": { "Z1K1": "Z18", "Z18K1": "Z21868K1" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "is base-10 narcissistic number, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } ro9v83ithetqr61qddoy5hwcx5qas72 Z34847 0 82562 272567 2026-05-06T01:21:53Z YoshiRulz 10156 Create implementation 272567 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34847" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z21890", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z27182", "Z27182K1": { "Z1K1": "Z7", "Z7K1": "Z18779", "Z18779K1": { "Z1K1": "Z7", "Z7K1": "Z13464", "Z13464K1": "Z19241", "Z13464K2": { "Z1K1": "Z18", "Z18K1": "Z21890K1" }, "Z13464K3": [ "Z6091" ] } }, "Z27182K2": { "Z1K1": "Z7", "Z7K1": "Z27410", "Z27410K1": { "Z1K1": "Z18", "Z18K1": "Z21890K2" }, "Z27410K2": [ "Z6091", { "Z1K1": "Z7", "Z7K1": "Z13397", "Z13397K1": [ "Z6091", { "Z1K1": "Z6091", "Z6091K1": "Q1392475" }, { "Z1K1": "Z6091", "Z6091K1": "Q3910936" }, { "Z1K1": "Z6091", "Z6091K1": "Q1475560" } ], "Z13397K2": { "Z1K1": "Z18", "Z18K1": "Z21890K3" } } ] } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "English verb, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } b86rmmei8fxoegjvg6cegf1540wkjfb Z34848 0 82563 272569 2026-05-06T01:25:39Z YoshiRulz 10156 Create implementation 272569 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34848" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z21898", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z21047", "Z21047K1": { "Z1K1": "Z7", "Z7K1": "Z21032", "Z21032K1": { "Z1K1": "Z18", "Z18K1": "Z21898K1" }, "Z21032K2": { "Z1K1": "Z7", "Z7K1": "Z21028", "Z21028K1": { "Z1K1": "Z7", "Z7K1": "Z31111", "Z31111K1": { "Z1K1": "Z7", "Z7K1": "Z21033", "Z21033K1": { "Z1K1": "Z18", "Z18K1": "Z21898K2" }, "Z21033K2": { "Z1K1": "Z18", "Z18K1": "Z21898K3" } } }, "Z21028K2": { "Z1K1": "Z7", "Z7K1": "Z21032", "Z21032K1": { "Z1K1": "Z18", "Z18K1": "Z21898K3" }, "Z21032K2": { "Z1K1": "Z18", "Z18K1": "Z21898K4" } } } }, "Z21047K2": { "Z1K1": "Z13518", "Z13518K1": "2" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "compound interest amount, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } n4kqxekhin2q2b3y7wivzgiqt34bdkt Talk:Z21903 1 82564 272571 2026-05-06T01:40:23Z YoshiRulz 10156 Add to category 272571 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Z34849 0 82565 272572 2026-05-06T01:42:32Z YoshiRulz 10156 Create implementation 272572 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34849" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z21913", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z25073", "Z25073K1": { "Z1K1": "Z7", "Z7K1": "Z16693", "Z16693K1": { "Z1K1": "Z16683", "Z16683K1": "Z16660", "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "10000" } }, "Z16693K2": { "Z1K1": "Z7", "Z7K1": "Z20257", "Z20257K1": { "Z1K1": "Z7", "Z7K1": "Z22910", "Z22910K1": { "Z1K1": "Z18", "Z18K1": "Z21913K1" }, "Z22910K2": "Z1002" } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 29j0tg8cc8cdlkdwi65pahkc7zm1gxi 272573 272572 2026-05-06T01:42:57Z YoshiRulz 10156 Add en label 272573 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34849" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z21913", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z25073", "Z25073K1": { "Z1K1": "Z7", "Z7K1": "Z16693", "Z16693K1": { "Z1K1": "Z16683", "Z16683K1": "Z16660", "Z16683K2": { "Z1K1": "Z13518", "Z13518K1": "10000" } }, "Z16693K2": { "Z1K1": "Z7", "Z7K1": "Z20257", "Z20257K1": { "Z1K1": "Z7", "Z7K1": "Z22910", "Z22910K1": { "Z1K1": "Z18", "Z18K1": "Z21913K1" }, "Z22910K2": "Z1002" } } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Gregorian year String to Holocene, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 6rtjfr9ofxqhl9z8pry3pkg4zkmapbv Talk:Z21934 1 82566 272575 2026-05-06T01:44:07Z YoshiRulz 10156 Add to category 272575 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z21939 1 82567 272576 2026-05-06T01:44:35Z YoshiRulz 10156 Add to category 272576 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z21961 1 82568 272577 2026-05-06T01:45:11Z YoshiRulz 10156 Add to category 272577 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Z34850 0 82569 272578 2026-05-06T01:46:27Z YoshiRulz 10156 Create implementation 272578 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34850" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z21987", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z10184", "Z10184K1": { "Z1K1": "Z7", "Z7K1": "Z10070", "Z10070K1": { "Z1K1": "Z7", "Z7K1": "Z10047", "Z10047K1": { "Z1K1": "Z18", "Z18K1": "Z21987K1" } }, "Z10070K2": "na" }, "Z10184K2": { "Z1K1": "Z7", "Z7K1": "Z10070", "Z10070K1": { "Z1K1": "Z7", "Z7K1": "Z10047", "Z10047K1": { "Z1K1": "Z18", "Z18K1": "Z21987K1" } }, "Z10070K2": "nf" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "string includes \"na\" or \"nf\", composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 6jpnjxi7oi2rcb10jo7oiyuo1xcu9uv Talk:Z22002 1 82570 272580 2026-05-06T01:53:03Z YoshiRulz 10156 Add to category 272580 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z22007 1 82571 272581 2026-05-06T01:53:09Z YoshiRulz 10156 Add to category 272581 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z22107 1 82572 272582 2026-05-06T01:58:28Z YoshiRulz 10156 Add to category 272582 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z22162 1 82573 272584 2026-05-06T02:04:01Z YoshiRulz 10156 Add to category 272584 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Z34851 0 82574 272586 2026-05-06T02:08:35Z YoshiRulz 10156 Create implementation 272586 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34851" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z22168", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z19565", "Z19565K1": { "Z1K1": "Z7", "Z7K1": "Z10184", "Z10184K1": { "Z1K1": "Z7", "Z7K1": "Z22131", "Z22131K1": { "Z1K1": "Z18", "Z18K1": "Z22168K1" } }, "Z10184K2": { "Z1K1": "Z7", "Z7K1": "Z22131", "Z22131K1": { "Z1K1": "Z18", "Z18K1": "Z22168K2" } } }, "Z19565K2": "Z22113", "Z19565K3": { "Z1K1": "Z7", "Z7K1": "Z10174", "Z10174K1": { "Z1K1": "Z7", "Z7K1": "Z22120", "Z22120K1": { "Z1K1": "Z18", "Z18K1": "Z22168K1" }, "Z22120K2": "Z22115" }, "Z10174K2": { "Z1K1": "Z7", "Z7K1": "Z22120", "Z22120K1": { "Z1K1": "Z18", "Z18K1": "Z22168K2" }, "Z22120K2": "Z22115" } }, "Z19565K4": "Z22115", "Z19565K5": "Z22114" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Kleenean OR, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 15msnhjixn1z12h1131uzfeuskbnswl Talk:Z22214 1 82575 272588 2026-05-06T02:08:52Z YoshiRulz 10156 Add to category 272588 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Talk:Z22236 1 82576 272589 2026-05-06T02:11:04Z YoshiRulz 10156 Add to category 272589 wikitext text/x-wiki [[Category:Functions_with_only_code_implementations]] 423sug58fedukocikcui1tj3l1r5prt Z34852 0 82577 272590 2026-05-06T02:16:20Z YoshiRulz 10156 Create implementation 272590 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34852" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z22240", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z13397", "Z13397K1": [ "Z6091", { "Z1K1": "Z6091", "Z6091K1": "Q108" }, { "Z1K1": "Z6091", "Z6091K1": "Q109" }, { "Z1K1": "Z6091", "Z6091K1": "Q21492582" }, { "Z1K1": "Z6091", "Z6091K1": "Q621915" }, { "Z1K1": "Z6091", "Z6091K1": "Q1751954" }, { "Z1K1": "Z6091", "Z6091K1": "Q1152453" }, { "Z1K1": "Z6091", "Z6091K1": "Q121" }, { "Z1K1": "Z6091", "Z6091K1": "Q122" }, { "Z1K1": "Z6091", "Z6091K1": "Q123" }, { "Z1K1": "Z6091", "Z6091K1": "Q124" }, { "Z1K1": "Z6091", "Z6091K1": "Q125" }, { "Z1K1": "Z6091", "Z6091K1": "Q126" } ], "Z13397K2": { "Z1K1": "Z7", "Z7K1": "Z16230", "Z16230K1": { "Z1K1": "Z18", "Z18K1": "Z22240K1" } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Gregorian calendar month to QID, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 9p8v7dpzdhko9bg62ybz20067gaggo4 User talk:Some helpful person 3 82578 272592 2026-05-06T02:27:39Z Feeglgeef 8776 Created page with "{{welcome|~~~~}} == Functioneer == Hello! I think you meet the requirements for [[WF:Functioneers|functioneer rights]], and if you'd be willing to request them [[WF:RFP|here]], I would support it. Thanks, ~~~~" 272592 wikitext text/x-wiki {{welcome|[[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 02:27, 6 May 2026 (UTC)}} == Functioneer == Hello! I think you meet the requirements for [[WF:Functioneers|functioneer rights]], and if you'd be willing to request them [[WF:RFP|here]], I would support it. Thanks, [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 02:27, 6 May 2026 (UTC) a3r2gt6j0ln01gzmvzc1hp8zvpvhese Z34853 0 82579 272593 2026-05-06T03:10:36Z YoshiRulz 10156 Create persistent list 272593 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34853" }, "Z2K2": { "Z1K1": { "Z1K1": "Z7", "Z7K1": "Z801", "Z801K1": { "Z1K1": "Z7", "Z7K1": "Z14779", "Z14779K1": "Z30414", "Z14779K2": { "Z1K1": "Z7", "Z7K1": "Z13464", "Z13464K1": "Z11410", "Z13464K2": { "Z1K1": "Z7", "Z7K1": "Z13464", "Z13464K1": "Z11420", "Z13464K2": { "Z1K1": "Z7", "Z7K1": "Z28316", "Z28316K1": "Z10070", "Z28316K2": { "Z1K1": "Z7", "Z7K1": "Z25614", "Z25614K1": { "Z1K1": "Z7", "Z7K1": "Z11414", "Z11414K1": { "Z1K1": "Z7", "Z7K1": "Z11420", "Z11420K1": { "Z1K1": "Z7", "Z7K1": "Z10062", "Z10062K1": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiID8+CjwhRE9DVFlQRSBzdXBwbGVtZW50YWxEYXRhIFNZU1RFTSAiLi4vLi4vY29tbW9uL2R0ZC9sZG1sU3VwcGxlbWVudGFsLmR0ZCI+CjwhLS0KQ29weXJpZ2h0IMKpIDE5OTEtMjAxNiBVbmljb2RlLCBJbmMuCkNMRFIgZGF0YSBmaWxlcyBhcmUgaW50ZXJwcmV0ZWQgYWNjb3JkaW5nIHRvIHRoZSBMRE1MIHNwZWNpZmljYXRpb24gKGh0dHA6Ly91bmljb2RlLm9yZy9yZXBvcnRzL3RyMzUvKQpGb3IgdGVybXMgb2YgdXNlLCBzZWUgaHR0cDovL3d3dy51bmljb2RlLm9yZy9jb3B5cmlnaHQuaHRtbAotLT4KPHN1cHBsZW1lbnRhbERhdGE+CiAgICA8dmVyc2lvbiBudW1iZXI9IiRSZXZpc2lvbiQiLz4KICAgIDxudW1iZXJpbmdTeXN0ZW1zPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9ImFkbG0iIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0iJiN4MUU5NTA7JiN4MUU5NTE7JiN4MUU5NTI7JiN4MUU5NTM7JiN4MUU5NTQ7JiN4MUU5NTU7JiN4MUU5NTY7JiN4MUU5NTc7JiN4MUU5NTg7JiN4MUU5NTk7Ii8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0iYWhvbSIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSImI3gxMTczMDsmI3gxMTczMTsmI3gxMTczMjsmI3gxMTczMzsmI3gxMTczNDsmI3gxMTczNTsmI3gxMTczNjsmI3gxMTczNzsmI3gxMTczODsmI3gxMTczOTsiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJhcmFiIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9Itmg2aHZotmj2aTZpdmm2afZqNmpIi8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0iYXJhYmV4dCIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSLbsNux27Lbs9u027Xbttu327jbuSIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9ImFybW4iIHR5cGU9ImFsZ29yaXRobWljIiBydWxlcz0iYXJtZW5pYW4tdXBwZXIiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJhcm1ubG93IiB0eXBlPSJhbGdvcml0aG1pYyIgcnVsZXM9ImFybWVuaWFuLWxvd2VyIi8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0iYmFsaSIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSLhrZDhrZHhrZLhrZPhrZThrZXhrZbhrZfhrZjhrZkiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJiZW5nIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IuCnpuCnp+CnqOCnqeCnquCnq+CnrOCnreCnruCnryIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9ImJoa3MiIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0iJiN4MTFDNTA7JiN4MTFDNTE7JiN4MTFDNTI7JiN4MTFDNTM7JiN4MTFDNTQ7JiN4MTFDNTU7JiN4MTFDNTY7JiN4MTFDNTc7JiN4MTFDNTg7JiN4MTFDNTk7Ii8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0iYnJhaCIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSImI3gxMTA2NjsmI3gxMTA2NzsmI3gxMTA2ODsmI3gxMTA2OTsmI3gxMTA2QTsmI3gxMTA2QjsmI3gxMTA2QzsmI3gxMTA2RDsmI3gxMTA2RTsmI3gxMTA2RjsiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJjYWttIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IiYjeDExMTM2OyYjeDExMTM3OyYjeDExMTM4OyYjeDExMTM5OyYjeDExMTNBOyYjeDExMTNCOyYjeDExMTNDOyYjeDExMTNEOyYjeDExMTNFOyYjeDExMTNGOyIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9ImNoYW0iIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0i6qmQ6qmR6qmS6qmT6qmU6qmV6qmW6qmX6qmY6qmZIi8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0iY2hpcyIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSImI3gxNkRBMDsmI3gxNkRBMTsmI3gxNkRBMjsmI3gxNkRBMzsmI3gxNkRBNDsmI3gxNkRBNTsmI3gxNkRBNjsmI3gxNkRBNzsmI3gxNkRBODsmI3gxNkRBOTsiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJjeXJsIiB0eXBlPSJhbGdvcml0aG1pYyIgcnVsZXM9ImN5cmlsbGljLWxvd2VyIi8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0iZGV2YSIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSLgpabgpafgpajgpangpargpavgpazgpa3gpa7gpa8iLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJkaWFrIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IiYjeDExOTUwOyYjeDExOTUxOyYjeDExOTUyOyYjeDExOTUzOyYjeDExOTU0OyYjeDExOTU1OyYjeDExOTU2OyYjeDExOTU3OyYjeDExOTU4OyYjeDExOTU5OyIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9ImV0aGkiIHR5cGU9ImFsZ29yaXRobWljIiBydWxlcz0iZXRoaW9waWMiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJmdWxsd2lkZSIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSLvvJDvvJHvvJLvvJPvvJTvvJXvvJbvvJfvvJjvvJkiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJnYXJhIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IiYjeDEwRDQwOyYjeDEwRDQxOyYjeDEwRDQyOyYjeDEwRDQzOyYjeDEwRDQ0OyYjeDEwRDQ1OyYjeDEwRDQ2OyYjeDEwRDQ3OyYjeDEwRDQ4OyYjeDEwRDQ5OyIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9Imdlb3IiIHR5cGU9ImFsZ29yaXRobWljIiBydWxlcz0iZ2VvcmdpYW4iLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJnb25nIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IiYjeDExREEwOyYjeDExREExOyYjeDExREEyOyYjeDExREEzOyYjeDExREE0OyYjeDExREE1OyYjeDExREE2OyYjeDExREE3OyYjeDExREE4OyYjeDExREE5OyIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9Imdvbm0iIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0iJiN4MTFENTA7JiN4MTFENTE7JiN4MTFENTI7JiN4MTFENTM7JiN4MTFENTQ7JiN4MTFENTU7JiN4MTFENTY7JiN4MTFENTc7JiN4MTFENTg7JiN4MTFENTk7Ii8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0iZ3JlayIgdHlwZT0iYWxnb3JpdGhtaWMiIHJ1bGVzPSJncmVlay11cHBlciIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9ImdyZWtsb3ciIHR5cGU9ImFsZ29yaXRobWljIiBydWxlcz0iZ3JlZWstbG93ZXIiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJndWpyIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IuCrpuCrp+CrqOCrqeCrquCrq+CrrOCrreCrruCrryIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9Imd1a2giIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0iJiN4MTYxMzA7JiN4MTYxMzE7JiN4MTYxMzI7JiN4MTYxMzM7JiN4MTYxMzQ7JiN4MTYxMzU7JiN4MTYxMzY7JiN4MTYxMzc7JiN4MTYxMzg7JiN4MTYxMzk7Ii8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0iZ3VydSIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSLgqabgqafgqajgqangqargqavgqazgqa3gqa7gqa8iLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJoYW5pZGF5cyIgdHlwZT0iYWxnb3JpdGhtaWMiIHJ1bGVzPSJ6aC9TcGVsbG91dFJ1bGVzL3NwZWxsb3V0LW51bWJlcmluZy1kYXlzIi8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0iaGFuaWRlYyIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSLjgIfkuIDkuozkuInlm5vkupTlha3kuIPlhavkuZ0iLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJoYW5zIiB0eXBlPSJhbGdvcml0aG1pYyIgcnVsZXM9InpoL1NwZWxsb3V0UnVsZXMvc3BlbGxvdXQtY2FyZGluYWwiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJoYW5zZmluIiB0eXBlPSJhbGdvcml0aG1pYyIgcnVsZXM9InpoL1NwZWxsb3V0UnVsZXMvc3BlbGxvdXQtY2FyZGluYWwtZmluYW5jaWFsIi8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0iaGFudCIgdHlwZT0iYWxnb3JpdGhtaWMiIHJ1bGVzPSJ6aF9IYW50L1NwZWxsb3V0UnVsZXMvc3BlbGxvdXQtY2FyZGluYWwiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJoYW50ZmluIiB0eXBlPSJhbGdvcml0aG1pYyIgcnVsZXM9InpoX0hhbnQvU3BlbGxvdXRSdWxlcy9zcGVsbG91dC1jYXJkaW5hbC1maW5hbmNpYWwiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJoZWJyIiB0eXBlPSJhbGdvcml0aG1pYyIgcnVsZXM9ImhlYnJldyIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9ImhtbmciIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0iJiN4MTZCNTA7JiN4MTZCNTE7JiN4MTZCNTI7JiN4MTZCNTM7JiN4MTZCNTQ7JiN4MTZCNTU7JiN4MTZCNTY7JiN4MTZCNTc7JiN4MTZCNTg7JiN4MTZCNTk7Ii8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0iaG1ucCIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSImI3gxRTE0MDsmI3gxRTE0MTsmI3gxRTE0MjsmI3gxRTE0MzsmI3gxRTE0NDsmI3gxRTE0NTsmI3gxRTE0NjsmI3gxRTE0NzsmI3gxRTE0ODsmI3gxRTE0OTsiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJqYXZhIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IuqnkOqnkeqnkuqnk+qnlOqnleqnluqnl+qnmOqnmSIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9ImpwYW4iIHR5cGU9ImFsZ29yaXRobWljIiBydWxlcz0iamEvU3BlbGxvdXRSdWxlcy9zcGVsbG91dC1jYXJkaW5hbCIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9ImpwYW5maW4iIHR5cGU9ImFsZ29yaXRobWljIiBydWxlcz0iamEvU3BlbGxvdXRSdWxlcy9zcGVsbG91dC1jYXJkaW5hbC1maW5hbmNpYWwiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJqcGFueWVhciIgdHlwZT0iYWxnb3JpdGhtaWMiIHJ1bGVzPSJqYS9TcGVsbG91dFJ1bGVzL3NwZWxsb3V0LW51bWJlcmluZy15ZWFyLWxhdG4iLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJrYWxpIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IuqkgOqkgeqkguqkg+qkhOqkheqkhuqkh+qkiOqkiSIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9Imthd2kiIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0iJiN4MTFGNTA7JiN4MTFGNTE7JiN4MTFGNTI7JiN4MTFGNTM7JiN4MTFGNTQ7JiN4MTFGNTU7JiN4MTFGNTY7JiN4MTFGNTc7JiN4MTFGNTg7JiN4MTFGNTk7Ii8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0ia2htciIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSLhn6Dhn6Hhn6Lhn6Phn6Thn6Xhn6bhn6fhn6jhn6kiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJrbmRhIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IuCzpuCzp+CzqOCzqeCzquCzq+CzrOCzreCzruCzryIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9ImtyYWkiIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0iJiN4MTZENzA7JiN4MTZENzE7JiN4MTZENzI7JiN4MTZENzM7JiN4MTZENzQ7JiN4MTZENzU7JiN4MTZENzY7JiN4MTZENzc7JiN4MTZENzg7JiN4MTZENzk7Ii8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0ibGFuYSIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSLhqoDhqoHhqoLhqoPhqoThqoXhqobhqofhqojhqokiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJsYW5hdGhhbSIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSLhqpDhqpHhqpLhqpPhqpThqpXhqpbhqpfhqpjhqpkiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJsYW9vIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IuC7kOC7keC7kuC7k+C7lOC7leC7luC7l+C7mOC7mSIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9ImxhdG4iIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0iMDEyMzQ1Njc4OSIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9ImxlcGMiIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0i4bGA4bGB4bGC4bGD4bGE4bGF4bGG4bGH4bGI4bGJIi8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0ibGltYiIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSLhpYbhpYfhpYjhpYnhpYrhpYvhpYzhpY3hpY7hpY8iLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJtYXRoYm9sZCIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSImI3gxRDdDRTsmI3gxRDdDRjsmI3gxRDdEMDsmI3gxRDdEMTsmI3gxRDdEMjsmI3gxRDdEMzsmI3gxRDdENDsmI3gxRDdENTsmI3gxRDdENjsmI3gxRDdENzsiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJtYXRoZGJsIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IiYjeDFEN0Q4OyYjeDFEN0Q5OyYjeDFEN0RBOyYjeDFEN0RCOyYjeDFEN0RDOyYjeDFEN0REOyYjeDFEN0RFOyYjeDFEN0RGOyYjeDFEN0UwOyYjeDFEN0UxOyIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9Im1hdGhtb25vIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IiYjeDFEN0Y2OyYjeDFEN0Y3OyYjeDFEN0Y4OyYjeDFEN0Y5OyYjeDFEN0ZBOyYjeDFEN0ZCOyYjeDFEN0ZDOyYjeDFEN0ZEOyYjeDFEN0ZFOyYjeDFEN0ZGOyIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9Im1hdGhzYW5iIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IiYjeDFEN0VDOyYjeDFEN0VEOyYjeDFEN0VFOyYjeDFEN0VGOyYjeDFEN0YwOyYjeDFEN0YxOyYjeDFEN0YyOyYjeDFEN0YzOyYjeDFEN0Y0OyYjeDFEN0Y1OyIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9Im1hdGhzYW5zIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IiYjeDFEN0UyOyYjeDFEN0UzOyYjeDFEN0U0OyYjeDFEN0U1OyYjeDFEN0U2OyYjeDFEN0U3OyYjeDFEN0U4OyYjeDFEN0U5OyYjeDFEN0VBOyYjeDFEN0VCOyIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9Im1seW0iIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0i4LWm4LWn4LWo4LWp4LWq4LWr4LWs4LWt4LWu4LWvIi8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0ibW9kaSIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSImI3gxMTY1MDsmI3gxMTY1MTsmI3gxMTY1MjsmI3gxMTY1MzsmI3gxMTY1NDsmI3gxMTY1NTsmI3gxMTY1NjsmI3gxMTY1NzsmI3gxMTY1ODsmI3gxMTY1OTsiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJtb25nIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IuGgkOGgkeGgkuGgk+GglOGgleGgluGgl+GgmOGgmSIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9Im1yb28iIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0iJiN4MTZBNjA7JiN4MTZBNjE7JiN4MTZBNjI7JiN4MTZBNjM7JiN4MTZBNjQ7JiN4MTZBNjU7JiN4MTZBNjY7JiN4MTZBNjc7JiN4MTZBNjg7JiN4MTZBNjk7Ii8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0ibXRlaSIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSLqr7Dqr7Hqr7Lqr7Pqr7Tqr7Xqr7bqr7fqr7jqr7kiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJteW1yIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IuGBgOGBgeGBguGBg+GBhOGBheGBhuGBh+GBiOGBiSIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9Im15bXJlcGthIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IiYjeDExNkRBOyYjeDExNkRCOyYjeDExNkRDOyYjeDExNkREOyYjeDExNkRFOyYjeDExNkRGOyYjeDExNkUwOyYjeDExNkUxOyYjeDExNkUyOyYjeDExNkUzOyIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9Im15bXJwYW8iIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0iJiN4MTE2RDA7JiN4MTE2RDE7JiN4MTE2RDI7JiN4MTE2RDM7JiN4MTE2RDQ7JiN4MTE2RDU7JiN4MTE2RDY7JiN4MTE2RDc7JiN4MTE2RDg7JiN4MTE2RDk7Ii8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0ibXltcnNoYW4iIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0i4YKQ4YKR4YKS4YKT4YKU4YKV4YKW4YKX4YKY4YKZIi8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0ibXltcnRsbmciIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0iJiN4QTlGMDsmI3hBOUYxOyYjeEE5RjI7JiN4QTlGMzsmI3hBOUY0OyYjeEE5RjU7JiN4QTlGNjsmI3hBOUY3OyYjeEE5Rjg7JiN4QTlGOTsiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJuYWdtIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IiYjeDFFNEYwOyYjeDFFNEYxOyYjeDFFNEYyOyYjeDFFNEYzOyYjeDFFNEY0OyYjeDFFNEY1OyYjeDFFNEY2OyYjeDFFNEY3OyYjeDFFNEY4OyYjeDFFNEY5OyIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9Im5ld2EiIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0iJiN4MTE0NTA7JiN4MTE0NTE7JiN4MTE0NTI7JiN4MTE0NTM7JiN4MTE0NTQ7JiN4MTE0NTU7JiN4MTE0NTY7JiN4MTE0NTc7JiN4MTE0NTg7JiN4MTE0NTk7Ii8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0ibmtvbyIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSLfgN+B34Lfg9+E34Xfht+H34jfiSIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9Im9sY2siIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0i4bGQ4bGR4bGS4bGT4bGU4bGV4bGW4bGX4bGY4bGZIi8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0ib25hbyIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSImI3gxRTVGMTsmI3gxRTVGMjsmI3gxRTVGMzsmI3gxRTVGNDsmI3gxRTVGNTsmI3gxRTVGNjsmI3gxRTVGNzsmI3gxRTVGODsmI3gxRTVGOTsmI3gxRTVGQTsiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJvcnlhIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IuCtpuCtp+CtqOCtqeCtquCtq+CtrOCtreCtruCtryIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9Im9zbWEiIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0iJiN4MTA0QTA7JiN4MTA0QTE7JiN4MTA0QTI7JiN4MTA0QTM7JiN4MTA0QTQ7JiN4MTA0QTU7JiN4MTA0QTY7JiN4MTA0QTc7JiN4MTA0QTg7JiN4MTA0QTk7Ii8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0ib3V0bGluZWQiIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0iJiN4MUNDRjA7JiN4MUNDRjE7JiN4MUNDRjI7JiN4MUNDRjM7JiN4MUNDRjQ7JiN4MUNDRjU7JiN4MUNDRjY7JiN4MUNDRjc7JiN4MUNDRjg7JiN4MUNDRjk7Ii8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0icm9oZyIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSImI3gxMEQzMDsmI3gxMEQzMTsmI3gxMEQzMjsmI3gxMEQzMzsmI3gxMEQzNDsmI3gxMEQzNTsmI3gxMEQzNjsmI3gxMEQzNzsmI3gxMEQzODsmI3gxMEQzOTsiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJyb21hbiIgdHlwZT0iYWxnb3JpdGhtaWMiIHJ1bGVzPSJyb21hbi11cHBlciIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9InJvbWFubG93IiB0eXBlPSJhbGdvcml0aG1pYyIgcnVsZXM9InJvbWFuLWxvd2VyIi8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0ic2F1ciIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSLqo5Dqo5Hqo5Lqo5Pqo5Tqo5Xqo5bqo5fqo5jqo5kiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJzZWdtZW50IiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IiYjeDFGQkYwOyYjeDFGQkYxOyYjeDFGQkYyOyYjeDFGQkYzOyYjeDFGQkY0OyYjeDFGQkY1OyYjeDFGQkY2OyYjeDFGQkY3OyYjeDFGQkY4OyYjeDFGQkY5OyIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9InNocmQiIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0iJiN4MTExRDA7JiN4MTExRDE7JiN4MTExRDI7JiN4MTExRDM7JiN4MTExRDQ7JiN4MTExRDU7JiN4MTExRDY7JiN4MTExRDc7JiN4MTExRDg7JiN4MTExRDk7Ii8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0ic2luZCIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSImI3gxMTJGMDsmI3gxMTJGMTsmI3gxMTJGMjsmI3gxMTJGMzsmI3gxMTJGNDsmI3gxMTJGNTsmI3gxMTJGNjsmI3gxMTJGNzsmI3gxMTJGODsmI3gxMTJGOTsiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJzaW5oIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IiYjeDBERTY7JiN4MERFNzsmI3gwREU4OyYjeDBERTk7JiN4MERFQTsmI3gwREVCOyYjeDBERUM7JiN4MERFRDsmI3gwREVFOyYjeDBERUY7Ii8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0ic29yYSIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSImI3gxMTBGMDsmI3gxMTBGMTsmI3gxMTBGMjsmI3gxMTBGMzsmI3gxMTBGNDsmI3gxMTBGNTsmI3gxMTBGNjsmI3gxMTBGNzsmI3gxMTBGODsmI3gxMTBGOTsiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJzdW5kIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IuGusOGuseGusuGus+GutOGuteGutuGut+GuuOGuuSIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9InN1bnUiIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0iJiN4MTFCRjA7JiN4MTFCRjE7JiN4MTFCRjI7JiN4MTFCRjM7JiN4MTFCRjQ7JiN4MTFCRjU7JiN4MTFCRjY7JiN4MTFCRjc7JiN4MTFCRjg7JiN4MTFCRjk7Ii8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0idGFrciIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSImI3gxMTZDMDsmI3gxMTZDMTsmI3gxMTZDMjsmI3gxMTZDMzsmI3gxMTZDNDsmI3gxMTZDNTsmI3gxMTZDNjsmI3gxMTZDNzsmI3gxMTZDODsmI3gxMTZDOTsiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJ0YWx1IiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IuGnkOGnkeGnkuGnk+GnlOGnleGnluGnl+GnmOGnmSIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9InRhbWwiIHR5cGU9ImFsZ29yaXRobWljIiBydWxlcz0idGFtaWwiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJ0YW1sZGVjIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IuCvpuCvp+CvqOCvqeCvquCvq+CvrOCvreCvruCvryIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9InRuc2EiIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0iJiN4MTZBQzA7JiN4MTZBQzE7JiN4MTZBQzI7JiN4MTZBQzM7JiN4MTZBQzQ7JiN4MTZBQzU7JiN4MTZBQzY7JiN4MTZBQzc7JiN4MTZBQzg7JiN4MTZBQzk7Ii8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0idGVsdSIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSLgsabgsafgsajgsangsargsavgsazgsa3gsa7gsa8iLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJ0aGFpIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IuC5kOC5keC5kuC5k+C5lOC5leC5luC5l+C5mOC5mSIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9InRpYnQiIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0i4Lyg4Lyh4Lyi4Lyj4Lyk4Lyl4Lym4Lyn4Lyo4LypIi8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0idGlyaCIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSImI3gxMTREMDsmI3gxMTREMTsmI3gxMTREMjsmI3gxMTREMzsmI3gxMTRENDsmI3gxMTRENTsmI3gxMTRENjsmI3gxMTRENzsmI3gxMTREODsmI3gxMTREOTsiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJ0b2xzIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IiYjeDExREUwOyYjeDExREUxOyYjeDExREUyOyYjeDExREUzOyYjeDExREU0OyYjeDExREU1OyYjeDExREU2OyYjeDExREU3OyYjeDExREU4OyYjeDExREU5OyIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9InZhaWkiIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0i6pig6pih6pii6pij6pik6pil6pim6pin6pio6pipIi8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0id2FyYSIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSImI3gxMThFMDsmI3gxMThFMTsmI3gxMThFMjsmI3gxMThFMzsmI3gxMThFNDsmI3gxMThFNTsmI3gxMThFNjsmI3gxMThFNzsmI3gxMThFODsmI3gxMThFOTsiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJ3Y2hvIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IiYjeDFFMkYwOyYjeDFFMkYxOyYjeDFFMkYyOyYjeDFFMkYzOyYjeDFFMkY0OyYjeDFFMkY1OyYjeDFFMkY2OyYjeDFFMkY3OyYjeDFFMkY4OyYjeDFFMkY5OyIvPgogICAgPC9udW1iZXJpbmdTeXN0ZW1zPgo8L3N1cHBsZW1lbnRhbERhdGE+Cg==" }, "Z11420K2": "\u003CnumberingSystems\u003E" }, "Z11414K2": "\u003C/numberingSystems\u003E" }, "Z25614K2": { "Z1K1": "Z7", "Z7K1": "Z10373", "Z10373K1": "0A" } }, "Z28316K3": "type=\"numeric\"" }, "Z13464K3": "id=\"" }, "Z13464K3": "\"" }, "Z14779K3": { "Z1K1": "Z7", "Z7K1": "Z13464", "Z13464K1": "Z11410", "Z13464K2": { "Z1K1": "Z7", "Z7K1": "Z13464", "Z13464K1": "Z11420", "Z13464K2": { "Z1K1": "Z7", "Z7K1": "Z28316", "Z28316K1": "Z10070", "Z28316K2": { "Z1K1": "Z7", "Z7K1": "Z25614", "Z25614K1": { "Z1K1": "Z7", "Z7K1": "Z11414", "Z11414K1": { "Z1K1": "Z7", "Z7K1": "Z11420", "Z11420K1": { "Z1K1": "Z7", "Z7K1": "Z10062", "Z10062K1": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiID8+CjwhRE9DVFlQRSBzdXBwbGVtZW50YWxEYXRhIFNZU1RFTSAiLi4vLi4vY29tbW9uL2R0ZC9sZG1sU3VwcGxlbWVudGFsLmR0ZCI+CjwhLS0KQ29weXJpZ2h0IMKpIDE5OTEtMjAxNiBVbmljb2RlLCBJbmMuCkNMRFIgZGF0YSBmaWxlcyBhcmUgaW50ZXJwcmV0ZWQgYWNjb3JkaW5nIHRvIHRoZSBMRE1MIHNwZWNpZmljYXRpb24gKGh0dHA6Ly91bmljb2RlLm9yZy9yZXBvcnRzL3RyMzUvKQpGb3IgdGVybXMgb2YgdXNlLCBzZWUgaHR0cDovL3d3dy51bmljb2RlLm9yZy9jb3B5cmlnaHQuaHRtbAotLT4KPHN1cHBsZW1lbnRhbERhdGE+CiAgICA8dmVyc2lvbiBudW1iZXI9IiRSZXZpc2lvbiQiLz4KICAgIDxudW1iZXJpbmdTeXN0ZW1zPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9ImFkbG0iIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0iJiN4MUU5NTA7JiN4MUU5NTE7JiN4MUU5NTI7JiN4MUU5NTM7JiN4MUU5NTQ7JiN4MUU5NTU7JiN4MUU5NTY7JiN4MUU5NTc7JiN4MUU5NTg7JiN4MUU5NTk7Ii8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0iYWhvbSIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSImI3gxMTczMDsmI3gxMTczMTsmI3gxMTczMjsmI3gxMTczMzsmI3gxMTczNDsmI3gxMTczNTsmI3gxMTczNjsmI3gxMTczNzsmI3gxMTczODsmI3gxMTczOTsiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJhcmFiIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9Itmg2aHZotmj2aTZpdmm2afZqNmpIi8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0iYXJhYmV4dCIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSLbsNux27Lbs9u027Xbttu327jbuSIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9ImFybW4iIHR5cGU9ImFsZ29yaXRobWljIiBydWxlcz0iYXJtZW5pYW4tdXBwZXIiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJhcm1ubG93IiB0eXBlPSJhbGdvcml0aG1pYyIgcnVsZXM9ImFybWVuaWFuLWxvd2VyIi8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0iYmFsaSIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSLhrZDhrZHhrZLhrZPhrZThrZXhrZbhrZfhrZjhrZkiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJiZW5nIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IuCnpuCnp+CnqOCnqeCnquCnq+CnrOCnreCnruCnryIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9ImJoa3MiIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0iJiN4MTFDNTA7JiN4MTFDNTE7JiN4MTFDNTI7JiN4MTFDNTM7JiN4MTFDNTQ7JiN4MTFDNTU7JiN4MTFDNTY7JiN4MTFDNTc7JiN4MTFDNTg7JiN4MTFDNTk7Ii8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0iYnJhaCIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSImI3gxMTA2NjsmI3gxMTA2NzsmI3gxMTA2ODsmI3gxMTA2OTsmI3gxMTA2QTsmI3gxMTA2QjsmI3gxMTA2QzsmI3gxMTA2RDsmI3gxMTA2RTsmI3gxMTA2RjsiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJjYWttIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IiYjeDExMTM2OyYjeDExMTM3OyYjeDExMTM4OyYjeDExMTM5OyYjeDExMTNBOyYjeDExMTNCOyYjeDExMTNDOyYjeDExMTNEOyYjeDExMTNFOyYjeDExMTNGOyIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9ImNoYW0iIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0i6qmQ6qmR6qmS6qmT6qmU6qmV6qmW6qmX6qmY6qmZIi8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0iY2hpcyIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSImI3gxNkRBMDsmI3gxNkRBMTsmI3gxNkRBMjsmI3gxNkRBMzsmI3gxNkRBNDsmI3gxNkRBNTsmI3gxNkRBNjsmI3gxNkRBNzsmI3gxNkRBODsmI3gxNkRBOTsiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJjeXJsIiB0eXBlPSJhbGdvcml0aG1pYyIgcnVsZXM9ImN5cmlsbGljLWxvd2VyIi8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0iZGV2YSIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSLgpabgpafgpajgpangpargpavgpazgpa3gpa7gpa8iLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJkaWFrIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IiYjeDExOTUwOyYjeDExOTUxOyYjeDExOTUyOyYjeDExOTUzOyYjeDExOTU0OyYjeDExOTU1OyYjeDExOTU2OyYjeDExOTU3OyYjeDExOTU4OyYjeDExOTU5OyIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9ImV0aGkiIHR5cGU9ImFsZ29yaXRobWljIiBydWxlcz0iZXRoaW9waWMiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJmdWxsd2lkZSIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSLvvJDvvJHvvJLvvJPvvJTvvJXvvJbvvJfvvJjvvJkiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJnYXJhIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IiYjeDEwRDQwOyYjeDEwRDQxOyYjeDEwRDQyOyYjeDEwRDQzOyYjeDEwRDQ0OyYjeDEwRDQ1OyYjeDEwRDQ2OyYjeDEwRDQ3OyYjeDEwRDQ4OyYjeDEwRDQ5OyIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9Imdlb3IiIHR5cGU9ImFsZ29yaXRobWljIiBydWxlcz0iZ2VvcmdpYW4iLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJnb25nIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IiYjeDExREEwOyYjeDExREExOyYjeDExREEyOyYjeDExREEzOyYjeDExREE0OyYjeDExREE1OyYjeDExREE2OyYjeDExREE3OyYjeDExREE4OyYjeDExREE5OyIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9Imdvbm0iIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0iJiN4MTFENTA7JiN4MTFENTE7JiN4MTFENTI7JiN4MTFENTM7JiN4MTFENTQ7JiN4MTFENTU7JiN4MTFENTY7JiN4MTFENTc7JiN4MTFENTg7JiN4MTFENTk7Ii8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0iZ3JlayIgdHlwZT0iYWxnb3JpdGhtaWMiIHJ1bGVzPSJncmVlay11cHBlciIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9ImdyZWtsb3ciIHR5cGU9ImFsZ29yaXRobWljIiBydWxlcz0iZ3JlZWstbG93ZXIiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJndWpyIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IuCrpuCrp+CrqOCrqeCrquCrq+CrrOCrreCrruCrryIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9Imd1a2giIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0iJiN4MTYxMzA7JiN4MTYxMzE7JiN4MTYxMzI7JiN4MTYxMzM7JiN4MTYxMzQ7JiN4MTYxMzU7JiN4MTYxMzY7JiN4MTYxMzc7JiN4MTYxMzg7JiN4MTYxMzk7Ii8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0iZ3VydSIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSLgqabgqafgqajgqangqargqavgqazgqa3gqa7gqa8iLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJoYW5pZGF5cyIgdHlwZT0iYWxnb3JpdGhtaWMiIHJ1bGVzPSJ6aC9TcGVsbG91dFJ1bGVzL3NwZWxsb3V0LW51bWJlcmluZy1kYXlzIi8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0iaGFuaWRlYyIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSLjgIfkuIDkuozkuInlm5vkupTlha3kuIPlhavkuZ0iLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJoYW5zIiB0eXBlPSJhbGdvcml0aG1pYyIgcnVsZXM9InpoL1NwZWxsb3V0UnVsZXMvc3BlbGxvdXQtY2FyZGluYWwiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJoYW5zZmluIiB0eXBlPSJhbGdvcml0aG1pYyIgcnVsZXM9InpoL1NwZWxsb3V0UnVsZXMvc3BlbGxvdXQtY2FyZGluYWwtZmluYW5jaWFsIi8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0iaGFudCIgdHlwZT0iYWxnb3JpdGhtaWMiIHJ1bGVzPSJ6aF9IYW50L1NwZWxsb3V0UnVsZXMvc3BlbGxvdXQtY2FyZGluYWwiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJoYW50ZmluIiB0eXBlPSJhbGdvcml0aG1pYyIgcnVsZXM9InpoX0hhbnQvU3BlbGxvdXRSdWxlcy9zcGVsbG91dC1jYXJkaW5hbC1maW5hbmNpYWwiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJoZWJyIiB0eXBlPSJhbGdvcml0aG1pYyIgcnVsZXM9ImhlYnJldyIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9ImhtbmciIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0iJiN4MTZCNTA7JiN4MTZCNTE7JiN4MTZCNTI7JiN4MTZCNTM7JiN4MTZCNTQ7JiN4MTZCNTU7JiN4MTZCNTY7JiN4MTZCNTc7JiN4MTZCNTg7JiN4MTZCNTk7Ii8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0iaG1ucCIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSImI3gxRTE0MDsmI3gxRTE0MTsmI3gxRTE0MjsmI3gxRTE0MzsmI3gxRTE0NDsmI3gxRTE0NTsmI3gxRTE0NjsmI3gxRTE0NzsmI3gxRTE0ODsmI3gxRTE0OTsiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJqYXZhIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IuqnkOqnkeqnkuqnk+qnlOqnleqnluqnl+qnmOqnmSIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9ImpwYW4iIHR5cGU9ImFsZ29yaXRobWljIiBydWxlcz0iamEvU3BlbGxvdXRSdWxlcy9zcGVsbG91dC1jYXJkaW5hbCIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9ImpwYW5maW4iIHR5cGU9ImFsZ29yaXRobWljIiBydWxlcz0iamEvU3BlbGxvdXRSdWxlcy9zcGVsbG91dC1jYXJkaW5hbC1maW5hbmNpYWwiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJqcGFueWVhciIgdHlwZT0iYWxnb3JpdGhtaWMiIHJ1bGVzPSJqYS9TcGVsbG91dFJ1bGVzL3NwZWxsb3V0LW51bWJlcmluZy15ZWFyLWxhdG4iLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJrYWxpIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IuqkgOqkgeqkguqkg+qkhOqkheqkhuqkh+qkiOqkiSIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9Imthd2kiIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0iJiN4MTFGNTA7JiN4MTFGNTE7JiN4MTFGNTI7JiN4MTFGNTM7JiN4MTFGNTQ7JiN4MTFGNTU7JiN4MTFGNTY7JiN4MTFGNTc7JiN4MTFGNTg7JiN4MTFGNTk7Ii8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0ia2htciIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSLhn6Dhn6Hhn6Lhn6Phn6Thn6Xhn6bhn6fhn6jhn6kiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJrbmRhIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IuCzpuCzp+CzqOCzqeCzquCzq+CzrOCzreCzruCzryIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9ImtyYWkiIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0iJiN4MTZENzA7JiN4MTZENzE7JiN4MTZENzI7JiN4MTZENzM7JiN4MTZENzQ7JiN4MTZENzU7JiN4MTZENzY7JiN4MTZENzc7JiN4MTZENzg7JiN4MTZENzk7Ii8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0ibGFuYSIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSLhqoDhqoHhqoLhqoPhqoThqoXhqobhqofhqojhqokiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJsYW5hdGhhbSIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSLhqpDhqpHhqpLhqpPhqpThqpXhqpbhqpfhqpjhqpkiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJsYW9vIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IuC7kOC7keC7kuC7k+C7lOC7leC7luC7l+C7mOC7mSIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9ImxhdG4iIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0iMDEyMzQ1Njc4OSIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9ImxlcGMiIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0i4bGA4bGB4bGC4bGD4bGE4bGF4bGG4bGH4bGI4bGJIi8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0ibGltYiIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSLhpYbhpYfhpYjhpYnhpYrhpYvhpYzhpY3hpY7hpY8iLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJtYXRoYm9sZCIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSImI3gxRDdDRTsmI3gxRDdDRjsmI3gxRDdEMDsmI3gxRDdEMTsmI3gxRDdEMjsmI3gxRDdEMzsmI3gxRDdENDsmI3gxRDdENTsmI3gxRDdENjsmI3gxRDdENzsiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJtYXRoZGJsIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IiYjeDFEN0Q4OyYjeDFEN0Q5OyYjeDFEN0RBOyYjeDFEN0RCOyYjeDFEN0RDOyYjeDFEN0REOyYjeDFEN0RFOyYjeDFEN0RGOyYjeDFEN0UwOyYjeDFEN0UxOyIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9Im1hdGhtb25vIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IiYjeDFEN0Y2OyYjeDFEN0Y3OyYjeDFEN0Y4OyYjeDFEN0Y5OyYjeDFEN0ZBOyYjeDFEN0ZCOyYjeDFEN0ZDOyYjeDFEN0ZEOyYjeDFEN0ZFOyYjeDFEN0ZGOyIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9Im1hdGhzYW5iIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IiYjeDFEN0VDOyYjeDFEN0VEOyYjeDFEN0VFOyYjeDFEN0VGOyYjeDFEN0YwOyYjeDFEN0YxOyYjeDFEN0YyOyYjeDFEN0YzOyYjeDFEN0Y0OyYjeDFEN0Y1OyIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9Im1hdGhzYW5zIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IiYjeDFEN0UyOyYjeDFEN0UzOyYjeDFEN0U0OyYjeDFEN0U1OyYjeDFEN0U2OyYjeDFEN0U3OyYjeDFEN0U4OyYjeDFEN0U5OyYjeDFEN0VBOyYjeDFEN0VCOyIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9Im1seW0iIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0i4LWm4LWn4LWo4LWp4LWq4LWr4LWs4LWt4LWu4LWvIi8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0ibW9kaSIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSImI3gxMTY1MDsmI3gxMTY1MTsmI3gxMTY1MjsmI3gxMTY1MzsmI3gxMTY1NDsmI3gxMTY1NTsmI3gxMTY1NjsmI3gxMTY1NzsmI3gxMTY1ODsmI3gxMTY1OTsiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJtb25nIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IuGgkOGgkeGgkuGgk+GglOGgleGgluGgl+GgmOGgmSIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9Im1yb28iIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0iJiN4MTZBNjA7JiN4MTZBNjE7JiN4MTZBNjI7JiN4MTZBNjM7JiN4MTZBNjQ7JiN4MTZBNjU7JiN4MTZBNjY7JiN4MTZBNjc7JiN4MTZBNjg7JiN4MTZBNjk7Ii8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0ibXRlaSIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSLqr7Dqr7Hqr7Lqr7Pqr7Tqr7Xqr7bqr7fqr7jqr7kiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJteW1yIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IuGBgOGBgeGBguGBg+GBhOGBheGBhuGBh+GBiOGBiSIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9Im15bXJlcGthIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IiYjeDExNkRBOyYjeDExNkRCOyYjeDExNkRDOyYjeDExNkREOyYjeDExNkRFOyYjeDExNkRGOyYjeDExNkUwOyYjeDExNkUxOyYjeDExNkUyOyYjeDExNkUzOyIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9Im15bXJwYW8iIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0iJiN4MTE2RDA7JiN4MTE2RDE7JiN4MTE2RDI7JiN4MTE2RDM7JiN4MTE2RDQ7JiN4MTE2RDU7JiN4MTE2RDY7JiN4MTE2RDc7JiN4MTE2RDg7JiN4MTE2RDk7Ii8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0ibXltcnNoYW4iIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0i4YKQ4YKR4YKS4YKT4YKU4YKV4YKW4YKX4YKY4YKZIi8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0ibXltcnRsbmciIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0iJiN4QTlGMDsmI3hBOUYxOyYjeEE5RjI7JiN4QTlGMzsmI3hBOUY0OyYjeEE5RjU7JiN4QTlGNjsmI3hBOUY3OyYjeEE5Rjg7JiN4QTlGOTsiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJuYWdtIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IiYjeDFFNEYwOyYjeDFFNEYxOyYjeDFFNEYyOyYjeDFFNEYzOyYjeDFFNEY0OyYjeDFFNEY1OyYjeDFFNEY2OyYjeDFFNEY3OyYjeDFFNEY4OyYjeDFFNEY5OyIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9Im5ld2EiIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0iJiN4MTE0NTA7JiN4MTE0NTE7JiN4MTE0NTI7JiN4MTE0NTM7JiN4MTE0NTQ7JiN4MTE0NTU7JiN4MTE0NTY7JiN4MTE0NTc7JiN4MTE0NTg7JiN4MTE0NTk7Ii8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0ibmtvbyIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSLfgN+B34Lfg9+E34Xfht+H34jfiSIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9Im9sY2siIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0i4bGQ4bGR4bGS4bGT4bGU4bGV4bGW4bGX4bGY4bGZIi8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0ib25hbyIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSImI3gxRTVGMTsmI3gxRTVGMjsmI3gxRTVGMzsmI3gxRTVGNDsmI3gxRTVGNTsmI3gxRTVGNjsmI3gxRTVGNzsmI3gxRTVGODsmI3gxRTVGOTsmI3gxRTVGQTsiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJvcnlhIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IuCtpuCtp+CtqOCtqeCtquCtq+CtrOCtreCtruCtryIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9Im9zbWEiIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0iJiN4MTA0QTA7JiN4MTA0QTE7JiN4MTA0QTI7JiN4MTA0QTM7JiN4MTA0QTQ7JiN4MTA0QTU7JiN4MTA0QTY7JiN4MTA0QTc7JiN4MTA0QTg7JiN4MTA0QTk7Ii8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0ib3V0bGluZWQiIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0iJiN4MUNDRjA7JiN4MUNDRjE7JiN4MUNDRjI7JiN4MUNDRjM7JiN4MUNDRjQ7JiN4MUNDRjU7JiN4MUNDRjY7JiN4MUNDRjc7JiN4MUNDRjg7JiN4MUNDRjk7Ii8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0icm9oZyIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSImI3gxMEQzMDsmI3gxMEQzMTsmI3gxMEQzMjsmI3gxMEQzMzsmI3gxMEQzNDsmI3gxMEQzNTsmI3gxMEQzNjsmI3gxMEQzNzsmI3gxMEQzODsmI3gxMEQzOTsiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJyb21hbiIgdHlwZT0iYWxnb3JpdGhtaWMiIHJ1bGVzPSJyb21hbi11cHBlciIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9InJvbWFubG93IiB0eXBlPSJhbGdvcml0aG1pYyIgcnVsZXM9InJvbWFuLWxvd2VyIi8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0ic2F1ciIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSLqo5Dqo5Hqo5Lqo5Pqo5Tqo5Xqo5bqo5fqo5jqo5kiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJzZWdtZW50IiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IiYjeDFGQkYwOyYjeDFGQkYxOyYjeDFGQkYyOyYjeDFGQkYzOyYjeDFGQkY0OyYjeDFGQkY1OyYjeDFGQkY2OyYjeDFGQkY3OyYjeDFGQkY4OyYjeDFGQkY5OyIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9InNocmQiIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0iJiN4MTExRDA7JiN4MTExRDE7JiN4MTExRDI7JiN4MTExRDM7JiN4MTExRDQ7JiN4MTExRDU7JiN4MTExRDY7JiN4MTExRDc7JiN4MTExRDg7JiN4MTExRDk7Ii8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0ic2luZCIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSImI3gxMTJGMDsmI3gxMTJGMTsmI3gxMTJGMjsmI3gxMTJGMzsmI3gxMTJGNDsmI3gxMTJGNTsmI3gxMTJGNjsmI3gxMTJGNzsmI3gxMTJGODsmI3gxMTJGOTsiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJzaW5oIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IiYjeDBERTY7JiN4MERFNzsmI3gwREU4OyYjeDBERTk7JiN4MERFQTsmI3gwREVCOyYjeDBERUM7JiN4MERFRDsmI3gwREVFOyYjeDBERUY7Ii8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0ic29yYSIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSImI3gxMTBGMDsmI3gxMTBGMTsmI3gxMTBGMjsmI3gxMTBGMzsmI3gxMTBGNDsmI3gxMTBGNTsmI3gxMTBGNjsmI3gxMTBGNzsmI3gxMTBGODsmI3gxMTBGOTsiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJzdW5kIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IuGusOGuseGusuGus+GutOGuteGutuGut+GuuOGuuSIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9InN1bnUiIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0iJiN4MTFCRjA7JiN4MTFCRjE7JiN4MTFCRjI7JiN4MTFCRjM7JiN4MTFCRjQ7JiN4MTFCRjU7JiN4MTFCRjY7JiN4MTFCRjc7JiN4MTFCRjg7JiN4MTFCRjk7Ii8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0idGFrciIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSImI3gxMTZDMDsmI3gxMTZDMTsmI3gxMTZDMjsmI3gxMTZDMzsmI3gxMTZDNDsmI3gxMTZDNTsmI3gxMTZDNjsmI3gxMTZDNzsmI3gxMTZDODsmI3gxMTZDOTsiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJ0YWx1IiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IuGnkOGnkeGnkuGnk+GnlOGnleGnluGnl+GnmOGnmSIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9InRhbWwiIHR5cGU9ImFsZ29yaXRobWljIiBydWxlcz0idGFtaWwiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJ0YW1sZGVjIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IuCvpuCvp+CvqOCvqeCvquCvq+CvrOCvreCvruCvryIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9InRuc2EiIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0iJiN4MTZBQzA7JiN4MTZBQzE7JiN4MTZBQzI7JiN4MTZBQzM7JiN4MTZBQzQ7JiN4MTZBQzU7JiN4MTZBQzY7JiN4MTZBQzc7JiN4MTZBQzg7JiN4MTZBQzk7Ii8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0idGVsdSIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSLgsabgsafgsajgsangsargsavgsazgsa3gsa7gsa8iLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJ0aGFpIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IuC5kOC5keC5kuC5k+C5lOC5leC5luC5l+C5mOC5mSIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9InRpYnQiIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0i4Lyg4Lyh4Lyi4Lyj4Lyk4Lyl4Lym4Lyn4Lyo4LypIi8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0idGlyaCIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSImI3gxMTREMDsmI3gxMTREMTsmI3gxMTREMjsmI3gxMTREMzsmI3gxMTRENDsmI3gxMTRENTsmI3gxMTRENjsmI3gxMTRENzsmI3gxMTREODsmI3gxMTREOTsiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJ0b2xzIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IiYjeDExREUwOyYjeDExREUxOyYjeDExREUyOyYjeDExREUzOyYjeDExREU0OyYjeDExREU1OyYjeDExREU2OyYjeDExREU3OyYjeDExREU4OyYjeDExREU5OyIvPgogICAgICAgIDxudW1iZXJpbmdTeXN0ZW0gaWQ9InZhaWkiIHR5cGU9Im51bWVyaWMiIGRpZ2l0cz0i6pig6pih6pii6pij6pik6pil6pim6pin6pio6pipIi8+CiAgICAgICAgPG51bWJlcmluZ1N5c3RlbSBpZD0id2FyYSIgdHlwZT0ibnVtZXJpYyIgZGlnaXRzPSImI3gxMThFMDsmI3gxMThFMTsmI3gxMThFMjsmI3gxMThFMzsmI3gxMThFNDsmI3gxMThFNTsmI3gxMThFNjsmI3gxMThFNzsmI3gxMThFODsmI3gxMThFOTsiLz4KICAgICAgICA8bnVtYmVyaW5nU3lzdGVtIGlkPSJ3Y2hvIiB0eXBlPSJudW1lcmljIiBkaWdpdHM9IiYjeDFFMkYwOyYjeDFFMkYxOyYjeDFFMkYyOyYjeDFFMkYzOyYjeDFFMkY0OyYjeDFFMkY1OyYjeDFFMkY2OyYjeDFFMkY3OyYjeDFFMkY4OyYjeDFFMkY5OyIvPgogICAgPC9udW1iZXJpbmdTeXN0ZW1zPgo8L3N1cHBsZW1lbnRhbERhdGE+Cg==" }, "Z11420K2": "\u003CnumberingSystems\u003E" }, "Z11414K2": "\u003C/numberingSystems\u003E" }, "Z25614K2": { "Z1K1": "Z7", "Z7K1": "Z10373", "Z10373K1": "0A" } }, "Z28316K3": "type=\"numeric\"" }, "Z13464K3": "digits=\"" }, "Z13464K3": "\"" } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "CLDR place-value decimal digit sets by script code" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "taken from numberingSystems.xml, last updated 2026-04-01" } ] } } 8kzr9qrl7ah82xoj480w3j6op6cy8mm Z34854 0 82580 272595 2026-05-06T03:18:14Z YoshiRulz 10156 Create function 272595 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34854" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z34854K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "langcode" } ] } } ], "Z8K2": "Z60", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34854" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infer script for Natural language" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "returns a langcode which specifies the script, assuming one isn't already specified, based off the language and country parts of the code" } ] } } jujqylqmxz462171qge10uok420m0d8 272602 272595 2026-05-06T03:33:29Z YoshiRulz 10156 Added Z34855, Z34856, Z34857, Z34858 and Z34859 to the approved list of test cases 272602 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34854" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z34854K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "langcode" } ] } } ], "Z8K2": "Z60", "Z8K3": [ "Z20", "Z34855", "Z34856", "Z34857", "Z34858", "Z34859" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34854" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infer script for Natural language" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "returns a langcode which specifies the script, assuming one isn't already specified, based off the language and country parts of the code" } ] } } fisulnai3j5gvnqa7vadbzdjmx7wv4x Z34855 0 82581 272597 2026-05-06T03:21:46Z YoshiRulz 10156 Create test 272597 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34855" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34854", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34854", "Z34854K1": "Z1002" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14326", "Z14326K2": { "Z1K1": "Z60", "Z60K1": "en-latn", "Z60K2": [ "Z6" ] } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "en -\u003E en-Latn" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } ipghzegde7nd42jehayl8og25oln380 Z34856 0 82582 272598 2026-05-06T03:22:55Z YoshiRulz 10156 Create test 272598 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34856" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34854", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34854", "Z34854K1": "Z1830" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14326", "Z14326K2": { "Z1K1": "Z60", "Z60K1": "ja-jpan", "Z60K2": [ "Z6" ] } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "ja -\u003E ja-Jpan" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } row5v8i38k8kbasj8jo7p2nvtguq9ix Z34857 0 82583 272599 2026-05-06T03:26:01Z YoshiRulz 10156 Create test 272599 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34857" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34854", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34854", "Z34854K1": "Z1114" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14326", "Z14326K2": { "Z1K1": "Z60", "Z60K1": "arz-arab", "Z60K2": [ "Z6" ] } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "arz -\u003E arz-Arab" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } et8h8dttwtnqz57jmya5l5l16i3bpqg Z34858 0 82584 272600 2026-05-06T03:32:46Z YoshiRulz 10156 Create test 272600 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34858" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34854", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34854", "Z34854K1": { "Z1K1": "Z60", "Z60K1": "sr-rs", "Z60K2": [ "Z6" ] } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14326", "Z14326K2": { "Z1K1": "Z60", "Z60K1": "sr-cyrl-rs", "Z60K2": [ "Z6" ] } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "sr-RS -\u003E sr-Cyrl-RS" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 9fdtyp6jlf4dt76pucrre6q6t92jvsy Z34859 0 82585 272601 2026-05-06T03:33:09Z YoshiRulz 10156 Create test 272601 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34859" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34854", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34854", "Z34854K1": { "Z1K1": "Z60", "Z60K1": "sr-hr", "Z60K2": [ "Z6" ] } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14326", "Z14326K2": { "Z1K1": "Z60", "Z60K1": "sr-latn-hr", "Z60K2": [ "Z6" ] } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "sr-HR -\u003E sr-Latn-HR" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } diz8fx03mesxo2ixqnvxx9zoqkasktx Z34860 0 82586 272603 2026-05-06T03:40:22Z YoshiRulz 10156 Draft implementation 272603 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34860" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z34854", "Z14K3": { "Z1K1": "Z16", "Z16K1": "Z600", "Z16K2": "const zobjRef = zid =\u003E ({ \"Z1K1\": \"Z9\", \"Z9K1\": zid });\nconst zobj = (typeZID, props) =\u003E new ZObject(new Map(props), zobjRef(typeZID));\nfunction Z34854( Z34854K1 ) {\n\treturn zobj(\"Z60\", [ [ \"Z60K1\", Z34854K1.Z60K1 ] ]);\n}" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infer script for Natural language, JS" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } hpkdjit6x8a9ng4sp9nd3gjx42optbp Z34861 0 82587 272605 2026-05-06T06:26:05Z Sun8908 9804 272605 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34861" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34797", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34797", "Z34797K1": "jiù" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z844", "Z844K2": { "Z1K1": "Z40", "Z40K1": "Z41" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "jiù is valid" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } cq8clfy75ell22h1ygqktxzrrjfdufg Z34862 0 82588 272606 2026-05-06T06:27:04Z Sun8908 9804 272606 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34862" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34797", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34797", "Z34797K1": "jìu" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z844", "Z844K2": { "Z1K1": "Z40", "Z40K1": "Z42" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "jìu is not valid" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } nl942yd9g526nt7vylb7gw3xnbjgccc Z34863 0 82589 272607 2026-05-06T06:29:03Z Sun8908 9804 272607 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34863" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34797", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34797", "Z34797K1": "ziù" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z844", "Z844K2": { "Z1K1": "Z40", "Z40K1": "Z42" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "ziù is not valid" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 7iwvazig502mzkx478dmouupjrsnd2r Z34864 0 82590 272608 2026-05-06T06:29:46Z Sun8908 9804 272608 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34864" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34797", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34797", "Z34797K1": "zhào" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z844", "Z844K2": { "Z1K1": "Z40", "Z40K1": "Z41" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "zhào is valid" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } ewumc94yifetruac32g3scjx09ca94e Z34865 0 82591 272609 2026-05-06T06:30:51Z Sun8908 9804 272609 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34865" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34797", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34797", "Z34797K1": "zhaǒ" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z844", "Z844K2": { "Z1K1": "Z40", "Z40K1": "Z42" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "zhaǒ is not valid" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 0s75ts451p2li6dxby9uuk8cemme4l7 Z34866 0 82592 272611 2026-05-06T06:35:55Z Sun8908 9804 272611 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34866" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34797", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34797", "Z34797K1": "jìù" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z844", "Z844K2": { "Z1K1": "Z40", "Z40K1": "Z42" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "jìù is not valid" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } ef3si9e98fxmb61ugz14aeesboilb36 Translations:Wikifunctions:Status updates/2026-05-02/20/de 1198 82593 272634 2026-05-06T10:19:39Z Ameisenigel 44 Created page with "Schließlich haben wir den Typ im Filterfeld der Spezialseite ListObjectsByType in Anführungszeichen gesetzt, um in Fällen wie "Alle Objekte vom Typ 'Typ' (Z4)" - [[$1|siehe Beispiel]] ($2) für mehr Klarheit zu sorgen, und die Sprachauswahl zeigt nun auch für nicht von MediaWiki unterstützte Sprachen den Namen der ausgewählten Sprache korrekt an ($3)." 272634 wikitext text/x-wiki Schließlich haben wir den Typ im Filterfeld der Spezialseite ListObjectsByType in Anführungszeichen gesetzt, um in Fällen wie "Alle Objekte vom Typ 'Typ' (Z4)" - [[$1|siehe Beispiel]] ($2) für mehr Klarheit zu sorgen, und die Sprachauswahl zeigt nun auch für nicht von MediaWiki unterstützte Sprachen den Namen der ausgewählten Sprache korrekt an ($3). lxh9504sw5i46ippte72z0u5629yd1x Z34867 0 82594 272637 2026-05-06T11:01:42Z Jsamwrites 938 272637 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34867" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z34867K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "entity" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34867" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "part-of sentence in French" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 08zdas2lg7mmri7g6yb8spg92p7e61q 272638 272637 2026-05-06T11:03:03Z Jsamwrites 938 272638 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34867" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z34867K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "entity" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "entité" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34867" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "part-of sentence in French" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "phrase de type « fait partie de » en français" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 8bzw0i3452o1119i6s0fprqlrv6fish 272643 272638 2026-05-06T11:12:07Z Jsamwrites 938 Added Z34870 to the approved list of implementations 272643 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34867" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z34867K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "entity" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "entité" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14", "Z34870" ], "Z8K5": "Z34867" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "part-of sentence in French" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "phrase de type « fait partie de » en français" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } a8l3i6qrrdh50c2oumyqs3lhj8cp1fe 272644 272643 2026-05-06T11:12:12Z Jsamwrites 938 Added Z34868 and Z34869 to the approved list of test cases 272644 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34867" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z34867K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "entity" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "entité" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z34868", "Z34869" ], "Z8K4": [ "Z14", "Z34870" ], "Z8K5": "Z34867" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "part-of sentence in French" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "phrase de type « fait partie de » en français" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 37knzrli0gqze56yxasemqcmq0dvy9g Z34868 0 82595 272639 2026-05-06T11:04:09Z Jsamwrites 938 272639 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34868" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34867", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34867", "Z34867K1": { "Z1K1": "Z6091", "Z6091K1": "" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "Le dimanche fait partie du week-end." } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 583v4mf59lgfzdhl776jvc5mbpljdn6 272640 272639 2026-05-06T11:04:37Z Jsamwrites 938 272640 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34868" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34867", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34867", "Z34867K1": { "Z1K1": "Z6091", "Z6091K1": "Q132" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "Le dimanche fait partie du week-end." } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } proy293774ocdaeqlh73wz6jjrfxvfv Z34869 0 82596 272641 2026-05-06T11:07:30Z Jsamwrites 938 272641 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34869" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34867", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34867", "Z34867K1": { "Z1K1": "Z6091", "Z6091K1": "Q525" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "Le soleil fait partie du système solaire." } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "Le soleil fait partie du système solaire." } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } fmfk7ro9ztkr5kn4jhzvhuqn8l44yor Z34870 0 82597 272642 2026-05-06T11:11:58Z Jsamwrites 938 272642 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34870" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z34867", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z34669", "Z34669K1": [ "Z11", { "Z1K1": "Z7", "Z7K1": "Z34669", "Z34669K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z18", "Z18K1": "Z34867K1" }, "Z24766K2": "Z1004" } }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "fait partie de" }, { "Z1K1": "Z7", "Z7K1": "Z34644", "Z34644K1": { "Z1K1": "Z7", "Z7K1": "Z33024", "Z33024K1": { "Z1K1": "Z7", "Z7K1": "Z34641", "Z34641K1": { "Z1K1": "Z7", "Z7K1": "Z6821", "Z6821K1": { "Z1K1": "Z18", "Z18K1": "Z34867K1" } } }, "Z33024K2": "Z1004" } } ], "Z34669K2": { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": " " } }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "." } ], "Z34669K2": { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "part-of sentence in French, impl" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "phrase de type « fait partie de » français, impl" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } tau5kybvjx1ygt5riphbhugo9jpz6ge Z34871 0 82598 272648 2026-05-06T11:48:53Z Some helpful person 65824 272648 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34871" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z33983", "Z14K3": { "Z1K1": "Z16", "Z16K1": "Z600", "Z16K2": "function Z33983( Z33983K1 ) {\n let json;\n try {\n json = JSON.parse(Z33983K1);\n } catch (e) {\n json = Z33983K1;\n }\n let output;\n if (Array.isArray(json)) {\n output = json.map(Z33983);\n } else if (json === null) {\n output = new ZPair(\"null\", String(json));\n } else if (typeof json === \"object\") {\n \tconst map = new Map();\n \tfor (let [key, value] of Object.entries(json)) {\n \tmap.set(key, Z33983(JSON.stringify(value)));\n \t}\n \toutput = map;\n } else {\n \toutput = new ZPair(typeof json, String(json));\n }\n // Wikifunctions.Debug(JSON.stringify(output instanceof Map ? Object.fromEntries(output) : output));\n return output;\n}" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "tokenize JSON but it works, JavaScript" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 2jfb3r0q1c5cvu7y6ksxwv8mbm55r1c 272649 272648 2026-05-06T11:49:34Z Some helpful person 65824 272649 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34871" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z33983", "Z14K3": { "Z1K1": "Z16", "Z16K1": "Z600", "Z16K2": "function Z33983( Z33983K1 ) {\n let json;\n try {\n json = JSON.parse(Z33983K1);\n } catch (e) {\n json = Z33983K1;\n }\n let output;\n if (Array.isArray(json)) {\n output = json.map(Z33983);\n } else if (json === null) {\n output = new ZPair(\"null\", String(json));\n } else if (typeof json === \"object\") {\n \tconst map = new Map();\n \tfor (let [key, value] of Object.entries(json)) {\n \tmap.set(key, Z33983(JSON.stringify(value)));\n \t}\n \toutput = map;\n } else {\n \toutput = new ZPair(typeof json, String(json));\n }\n // Wikifunctions.Debug(JSON.stringify(output instanceof Map ? Object.fromEntries(output) : output));\n return output;\n}" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "tokenize JSON but it works, JavaScript" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 91ikyphprayt3g1ik725qu7kh9khj8x