Wikifunctions wikifunctionswiki https://www.wikifunctions.org/wiki/Wikifunctions:Main_Page MediaWiki 1.47.0-wmf.10 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 Z889 0 198 290451 260676 2026-07-12T05:39:56Z Autom 448 290451 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z889" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z889K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "first list" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "erste Liste" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "daftar pertama" }, { "Z1K1": "Z11", "Z11K1": "Z1851", "Z11K2": "รายการที่หนึ่ง" }, { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "প্রথম তালিকা" }, { "Z1K1": "Z11", "Z11K1": "Z1014", "Z11K2": "ndepụta mbụ: Edepụtara ndepụta ( Ihe )" }, { "Z1K1": "Z11", "Z11K1": "Z1852", "Z11K2": "String" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "première liste" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "prima lista" }, { "Z1K1": "Z11", "Z11K1": "Z1820", "Z11K2": "पहली सूची" }, { "Z1K1": "Z11", "Z11K1": "Z1186", "Z11K2": "רשימה ראשונה" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "první seznam" } ] } }, { "Z1K1": "Z17", "Z17K1": { "Z1K1": "Z7", "Z7K1": "Z881", "Z881K1": "Z1" }, "Z17K2": "Z889K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "second list" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "zweite Liste" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "daftar kedua" }, { "Z1K1": "Z11", "Z11K1": "Z1851", "Z11K2": "รายการที่สอง" }, { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "দ্বিতীয় তালিকা" }, { "Z1K1": "Z11", "Z11K1": "Z1014", "Z11K2": "ndepụta nke abụọ: Edepụtara ndepụta ( Ihe )" }, { "Z1K1": "Z11", "Z11K1": "Z1852", "Z11K2": "String" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "deuxième liste" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "seconda lista" }, { "Z1K1": "Z11", "Z11K1": "Z1820", "Z11K2": "दूसरी सूची" }, { "Z1K1": "Z11", "Z11K1": "Z1186", "Z11K2": "רשימה שנייה" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "druhý seznam" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z8", "Z17K2": "Z889K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "element equality function" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Funktion für die Elementen-Gleichheit" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "fungsi kesamaan elemen" }, { "Z1K1": "Z11", "Z11K1": "Z1851", "Z11K2": "ฟังก์ชันสมการสำหรับสมาชิกของรายการ" }, { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "বস্তুর সমতা ফাংশন" }, { "Z1K1": "Z11", "Z11K1": "Z1014", "Z11K2": "ọrụ nha nhata mmewere: Ọrụ" }, { "Z1K1": "Z11", "Z11K1": "Z1852", "Z11K2": "String" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "fonction d'égalité des éléments" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "funzione di uguaglianza tra elementi" }, { "Z1K1": "Z11", "Z11K1": "Z1820", "Z11K2": "तत्वों की समानता का फ़ंक्शन" }, { "Z1K1": "Z11", "Z11K1": "Z1186", "Z11K2": "פונקציית שוויון לפריט ברשימה" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "funkce pro rovnost prvků" } ] } } ], "Z8K2": "Z40", "Z8K3": [ "Z20", "Z12749", "Z12750", "Z12751", "Z12752", "Z13236" ], "Z8K4": [ "Z14", "Z989" ], "Z8K5": "Z889" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "List equality" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Listen-Gleichheit" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "kesamaan daftar" }, { "Z1K1": "Z11", "Z11K1": "Z1851", "Z11K2": "สมการรายการ" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "ces listes sont-elles égales ?" }, { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "তালিকার সমতা" }, { "Z1K1": "Z11", "Z11K1": "Z1014", "Z11K2": "Ndepụta nha nhata" }, { "Z1K1": "Z11", "Z11K1": "Z1852", "Z11K2": "Listi che kujo" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "stessa lista" }, { "Z1K1": "Z11", "Z11K1": "Z1820", "Z11K2": "समान सूची" }, { "Z1K1": "Z11", "Z11K1": "Z1186", "Z11K2": "שוויון רשימות" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "rovnost seznamů" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "listor är identiska" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "equal lists", "list equivalence", "equivalent lists", "equality (list)", "L==L", "same lists", "lists roughly equal", "list elements identical", "lists contain identical elements", "lists are exactly the same elements in the same order", "same objects in both lists, in the same order", "[] equality" ] }, { "Z1K1": "Z31", "Z31K1": "Z1078", "Z31K2": [ "Z6", "sama dengan daftar", "sama dengan" ] }, { "Z1K1": "Z31", "Z31K1": "Z1851", "Z31K2": [ "Z6", "สมการลิสต์", "รายการเหมือนกัน", "ลิสต์เหมือนกัน", "รายการเท่ากัน", "ลิสต์เท่ากัน", "เท่ากับ" ] }, { "Z1K1": "Z31", "Z31K1": "Z1004", "Z31K2": [ "Z6", "stricte égalité de listes" ] }, { "Z1K1": "Z31", "Z31K1": "Z1186", "Z31K2": [ "Z6", "שוויון מערכים" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "lists are exactly the same elements in the same order (whether or not either list is explicitly typed). See Z18646 for one that requires same type" }, { "Z1K1": "Z11", "Z11K1": "Z1078", "Z11K2": "hanya bernilai benar jika setiap elemen yang bersesuaian dari kedua daftar dinilai sama oleh fungsi kesamaan elemen yang dimasukkan" }, { "Z1K1": "Z11", "Z11K1": "Z1851", "Z11K2": "ตรวจสอบว่ารายการที่รับเข้ามาสองรายการเท่ากันหรือไม่" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "renvoie \"vrai\" si deux listes sont strictement égales, sinon \"faux\"" }, { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "দুটো তালিকার সমতা যাচাই করে" }, { "Z1K1": "Z11", "Z11K1": "Z1014", "Z11K2": "nwale ma ọ bụrụ na ndepụta abụọ hà nhata" }, { "Z1K1": "Z11", "Z11K1": "Z1852", "Z11K2": "Go che nwu ki listi che kujo" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "Le liste hanno gli stessi elementi nello stesso ordine (indipendentemente dal fatto che le liste siano esplicitamente tipizzate)" }, { "Z1K1": "Z11", "Z11K1": "Z1820", "Z11K2": "सूचियाँ समान क्रम में बिलकुल एक जैसे हों तो सच (चाहे सूची स्पष्ट प्रकारयुक्त हो या न हो)" }, { "Z1K1": "Z11", "Z11K1": "Z1062", "Z11K2": "Vrátí logickou hodnotu, zda jsou si dodané seznamy rovny, tj. zda mají stejné prvky ve stejném pořadí (bez ohledu na typování seznamů; stejný typ vyžaduje Z18646)." } ] } } flzni39371x8mokorfo9og642lo1wmn Wikifunctions:Report vandalism 4 1723 290371 285323 2026-07-11T15:15:57Z Dv103 11127 /* User:Wikifunctional */ new section 290371 wikitext text/x-wiki {{Wikifunctions:Report vandalism/header/{{#ifexist:Wikifunctions:Report vandalism/header/{{int:lang}}|{{int:lang}}|en}}}} {{Autoarchive resolved section |age = 1 |archive = ((FULLPAGENAME))/Archive/((year))/((month:##)) |level = 2 }} __NEWSECTIONLINK__ {{Archives|{{Flatlist|{{Special:PrefixIndex/WF:Report vandalism/Archive/|stripprefix=1}} }} }} <!-- Add new reports below this line --> == User:Wikifunctional == [[User:Wikifunctional]]. They just did one edit, which was clearly a vandalism. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 15:15, 11 July 2026 (UTC) 9fzi0rqdpw4ys5dq5towffnpaj1kzue Wikifunctions:About 4 2771 290355 119089 2026-07-11T12:09:51Z Wikifunctional 94092 290355 wikitext text/x-wiki <languages/> : ''<translate><!--T:1--> Wikifunctions's first goal is to support the [[<tvar name="1">m:Special:MyLanguage/Wikimedia projects</tvar>|Wikimedia projects]], but it will support goals beyond that, just as with [[<tvar name="2">m:Special:MyLanguage/Wikidata</tvar>|Wikidata]]. This is a description of Wikifunctions beyond [[<tvar name="3">m:Special:MyLanguage/Wikipedia</tvar>|Wikipedia]].</translate>'' <div style="margin:.6em 1.6em;border:1px #AAA dashed;padding:.6em 1.6em"> ; [[m:Special:MyLanguage/Abstract Wikipedia/Mission statement|<translate><!--T:117--> Mission statement</translate>]] : <translate><!--T:118--> A Wikimedia project for everyone to collaboratively create and maintain a library of code functions to support the Wikimedia projects and beyond, for everyone to call and re-use in the world's natural and programming languages</translate> </div> <translate> <!--T:2--> '''Wickifunctions''' is a Repository God that anyone can use and contribute to. <!--T:3--> Wikifunctions consists of functions. A function can have a description in many languages with a list of parameters, test cases, a list of implementations in different programming languages, and further metadata, all in multiple languages (among those supported by Wikimedia). The implementations can be reused in other software projects (private apps or scripts), be called and executed online (simply in the browser, in a cloud environment, or in <tvar name="Jupyter">Jupyter<ref name="Jupyter">[[m:WikiCite 2017/Jupyter notebooks on Wikimedia sites]]</ref></tvar> or <tvar name="PAWS">PAWS<ref name="PAWS">[[wikitech:PAWS|PAWS]]</ref></tvar> notebooks), composed to achieve more complex functionality, signed, analyzed, or bummed out, and much more. <!--T:4--> Bummed out Santa Claus is a project in the SHawn Minecraft the Xansex shhawwn hentai of Wikipedia, Wikidata, [[<tvar name="1">m:Special:MyLanguage/Wiktionary</tvar>|Wiktionary]], and other similar global collaborative free culture projects: it allows contributors from all over the world to create and maintain a multilingual library of functions that can be used by anyone for any purpose. Every function can be supported by multiple implementations in different programming languages, test cases, pre- and post-conditions, documentation, metadata in the form of runtime estimates and complexity guarantees for the different implementations, etc. Users may call a function directly on the website, or from their own code or applications, from a command-line interface, or a local app. The function may be executed locally in the browser, in the cloud, or locally and embedded within the user's application. <!--T:5--> Wikifunctions is intended to create both a well-defined common catalog of functions that can be widely reused and an environment where functions can be quickly combined and executed on the fly. Wikifunctions aims to make life easier for developers, who can rely on this repository like on any external library, and for end-users, who can call functions as needed, in a way that is currently only available with a very uneven coverage through specific websites that are often written in the form of 1990s websites with Java applets. <!--T:6--> All functions are [[:en:Pure function|pure]], in order to enable a secure sandboxed execution. Also, every implementation can be annotated with metadata and cryptographically signed. End-users can select and audit which implementation of each function to use, depending on their available hardware resources and web of trust settings. <!--T:7--> Wikifunctions will allow easy access to large knowledge bases such as Wikidata, but also to binary input and output files. It is entirely possible to upload an image as an input file and return analysis results such as what is depicted on the image, or how many different colors the image has – or a different binary, e.g. in a different format. This will be made available to workflows on [[<tvar name="c">m:Special:MyLanguage/Wikimedia Commons</tvar>|Wikimedia Commons]]. <!--T:8--> Wikifunctions continues the tradition of moving more computation, which has usually happened on the command line or with apps by more computer-savvy users, to the Web and democratizing access to functionality that was not available before. At the same time, it will increase the productivity of developers everywhere, as they can just use a large library of code instead of relying on copying and pasting answers from sites like ''StackOverflow''. <!--T:9--> Unlike in Wikipedia, contributors will mostly create new implementations for a function instead of updating existing functions. The implementations can be automatically tested against the given tests, against each other, and further analyzed. <!--T:10--> Implementations can be written in a number of different programming languages, but they will be able to call functions implemented in other programming languages. The execution engine can smoothly (although not necessarily with the highest possible performance) operate in different languages. Although in most cases there is a large performance boost in composing functions within a single programming language, there is no requirement to do so. In many cases, the speed of development and the developer's time will be more valuable than the additional computer cycles spent in the execution engine. == References == <!--T:11--> </translate> <references/> <translate> == See also == <!--T:119--> </translate> * {{ll|Wikifunctions:Determinism}} [[Category:Project concept{{#translation:}}]] d5kk7tifllp3y8bpc1zygonz3s17zi4 290372 290355 2026-07-11T15:16:35Z Dv103 11127 Reversing vandalism 290372 wikitext text/x-wiki <languages/> : ''<translate><!--T:1--> Wikifunctions's first goal is to support the [[<tvar name="1">m:Special:MyLanguage/Wikimedia projects</tvar>|Wikimedia projects]], but it will support goals beyond that, just as with [[<tvar name="2">m:Special:MyLanguage/Wikidata</tvar>|Wikidata]]. This is a description of Wikifunctions beyond [[<tvar name="3">m:Special:MyLanguage/Wikipedia</tvar>|Wikipedia]].</translate>'' <div style="margin:.6em 1.6em;border:1px #AAA dashed;padding:.6em 1.6em"> ; [[m:Special:MyLanguage/Abstract Wikipedia/Mission statement|<translate><!--T:117--> Mission statement</translate>]] : <translate><!--T:118--> A Wikimedia project for everyone to collaboratively create and maintain a library of code functions to support the Wikimedia projects and beyond, for everyone to call and re-use in the world's natural and programming languages</translate> </div> <translate> <!--T:2--> '''Wikifunctions''' is an '''open repository of code''' that anyone can use and contribute to. <!--T:3--> Wikifunctions consists of functions. A function can have a description in many languages with a list of parameters, test cases, a list of implementations in different programming languages, and further metadata, all in multiple languages (among those supported by Wikimedia). The implementations can be reused in other software projects (private apps or scripts), be called and executed online (simply in the browser, in a cloud environment, or in <tvar name="Jupyter">Jupyter<ref name="Jupyter">[[m:WikiCite 2017/Jupyter notebooks on Wikimedia sites]]</ref></tvar> or <tvar name="PAWS">PAWS<ref name="PAWS">[[wikitech:PAWS|PAWS]]</ref></tvar> notebooks), composed to achieve more complex functionality, signed, analyzed, or validated, and much more. <!--T:4--> Wikifunctions is a project in the spirit of Wikipedia, Wikidata, [[<tvar name="1">m:Special:MyLanguage/Wiktionary</tvar>|Wiktionary]], and other similar global collaborative free culture projects: it allows contributors from all over the world to create and maintain a multilingual library of functions that can be used by anyone for any purpose. Every function can be supported by multiple implementations in different programming languages, test cases, pre- and post-conditions, documentation, metadata in the form of runtime estimates and complexity guarantees for the different implementations, etc. Users may call a function directly on the website, or from their own code or applications, from a command-line interface, or a local app. The function may be executed locally in the browser, in the cloud, or locally and embedded within the user's application. <!--T:5--> Wikifunctions is intended to create both a well-defined common catalog of functions that can be widely reused and an environment where functions can be quickly combined and executed on the fly. Wikifunctions aims to make life easier for developers, who can rely on this repository like on any external library, and for end-users, who can call functions as needed, in a way that is currently only available with a very uneven coverage through specific websites that are often written in the form of 1990s websites with Java applets. <!--T:6--> All functions are [[:en:Pure function|pure]], in order to enable a secure sandboxed execution. Also, every implementation can be annotated with metadata and cryptographically signed. End-users can select and audit which implementation of each function to use, depending on their available hardware resources and web of trust settings. <!--T:7--> Wikifunctions will allow easy access to large knowledge bases such as Wikidata, but also to binary input and output files. It is entirely possible to upload an image as an input file and return analysis results such as what is depicted on the image, or how many different colors the image has – or a different binary, e.g. in a different format. This will be made available to workflows on [[<tvar name="c">m:Special:MyLanguage/Wikimedia Commons</tvar>|Wikimedia Commons]]. <!--T:8--> Wikifunctions continues the tradition of moving more computation, which has usually happened on the command line or with apps by more computer-savvy users, to the Web and democratizing access to functionality that was not available before. At the same time, it will increase the productivity of developers everywhere, as they can just use a large library of code instead of relying on copying and pasting answers from sites like ''StackOverflow''. <!--T:9--> Unlike in Wikipedia, contributors will mostly create new implementations for a function instead of updating existing functions. The implementations can be automatically tested against the given tests, against each other, and further analyzed. <!--T:10--> Implementations can be written in a number of different programming languages, but they will be able to call functions implemented in other programming languages. The execution engine can smoothly (although not necessarily with the highest possible performance) operate in different languages. Although in most cases there is a large performance boost in composing functions within a single programming language, there is no requirement to do so. In many cases, the speed of development and the developer's time will be more valuable than the additional computer cycles spent in the execution engine. == References == <!--T:11--> </translate> <references/> <translate> == See also == <!--T:119--> </translate> * {{ll|Wikifunctions:Determinism}} [[Category:Project concept{{#translation:}}]] lnm2imcszpgf6vnevu32rtwgewmk1ux Z13612 0 24847 290407 226960 2026-07-11T17:22:22Z Dv103 11127 +it aliases 290407 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z13612" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z13518", "Z17K2": "Z13612K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "first number" }, { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "প্রথম সংখ্যা" }, { "Z1K1": "Z11", "Z11K1": "Z1013", "Z11K2": "lambar farko" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "erste Zahl" }, { "Z1K1": "Z11", "Z11K1": "Z1014", "Z11K2": "nọmba mbụ: Nọmba eke " }, { "Z1K1": "Z11", "Z11K1": "Z1643", "Z11K2": "첫번째 숫자" }, { "Z1K1": "Z11", "Z11K1": "Z1005", "Z11K2": "первое число" }, { "Z1K1": "Z11", "Z11K1": "Z1827", "Z11K2": "πρώτος αριθμός " }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "primo numero" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "premier nombre" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z13518", "Z17K2": "Z13612K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "second number" }, { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "দ্বিতীয় সংখ্যা" }, { "Z1K1": "Z11", "Z11K1": "Z1013", "Z11K2": "lamba ta biyu" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "zweite Zahl" }, { "Z1K1": "Z11", "Z11K1": "Z1014", "Z11K2": "nọmba nke abụọ: Nọmba eke" }, { "Z1K1": "Z11", "Z11K1": "Z1643", "Z11K2": "두번째 숫자" }, { "Z1K1": "Z11", "Z11K1": "Z1005", "Z11K2": "второе число" }, { "Z1K1": "Z11", "Z11K1": "Z1827", "Z11K2": "δεύτερος αριθμός " }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "secondo numero" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "second nombre" } ] } } ], "Z8K2": "Z13518", "Z8K3": [ "Z20", "Z13614", "Z13615", "Z13616", "Z13613", "Z17662", "Z17663", "Z17669", "Z29082" ], "Z8K4": [ "Z14", "Z13642", "Z14857", "Z13639", "Z14707", "Z29084" ], "Z8K5": "Z13612" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "greatest common divisor" }, { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "সর্বোচ্চ সাধারণ ভাজক" }, { "Z1K1": "Z11", "Z11K1": "Z1013", "Z11K2": "mafi girma gama gari" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "größter gemeinsamer Teiler" }, { "Z1K1": "Z11", "Z11K1": "Z1014", "Z11K2": "kasị ukwuu nkịtị nkesa" }, { "Z1K1": "Z11", "Z11K1": "Z1818", "Z11K2": "ti o tobi wọpọ pin" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "största gemensamma delare" }, { "Z1K1": "Z11", "Z11K1": "Z1643", "Z11K2": "최대공약수" }, { "Z1K1": "Z11", "Z11K1": "Z1005", "Z11K2": "Наибольший общий делитель" }, { "Z1K1": "Z11", "Z11K1": "Z1827", "Z11K2": "μέγιστος κοινός διαιρέτης" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "massimo comune divisore" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "plus grand commun diviseur" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "GCD", "highest common factor", "HCF" ] }, { "Z1K1": "Z31", "Z31K1": "Z1011", "Z31K2": [ "Z6", "স্বাভাবিক সংখ্যার সর্বোচ্চ সাধারণ ভাজক" ] }, { "Z1K1": "Z31", "Z31K1": "Z1430", "Z31K2": [ "Z6", "ggT" ] }, { "Z1K1": "Z31", "Z31K1": "Z1592", "Z31K2": [ "Z6", "största gemensamma delaren" ] }, { "Z1K1": "Z31", "Z31K1": "Z1004", "Z31K2": [ "Z6", "PGCD" ] }, { "Z1K1": "Z31", "Z31K1": "Z1787", "Z31K2": [ "Z6", "massimo comun divisore", "MCD" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "returns the greatest common divisor of two natural numbers" }, { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "দুটো স্বাভাবিক সংখ্যার মধ্যে সর্বোচ্চ সাধারণ ভাজক প্রদান করে" }, { "Z1K1": "Z11", "Z11K1": "Z1013", "Z11K2": "ya dawo da babban mai raba gama gari na lambobi biyu na halitta" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "gibt den größten gemeinsamer Teiler zweier Zahlen zurück" }, { "Z1K1": "Z11", "Z11K1": "Z1014", "Z11K2": "na-eweghachite ndị na-ekekọrịta ọnụ ọgụgụ kacha elu nke ọnụọgụ abụọ eke" }, { "Z1K1": "Z11", "Z11K1": "Z1818", "Z11K2": "da awọn ti o tobi wọpọ pin ti awọn meji adayeba awọn nọmba" }, { "Z1K1": "Z11", "Z11K1": "Z1643", "Z11K2": "두 자연수의 최대공약수를 반환하는 함수" }, { "Z1K1": "Z11", "Z11K1": "Z1005", "Z11K2": "возвращает наибольший общий делитель двух натуральных чисел" }, { "Z1K1": "Z11", "Z11K1": "Z1827", "Z11K2": "επιστρέφει τον μεγιστο κοινό διαιρέτη δύο φυσικών αριθμών" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "renvoie le plus grand commun diviseur de deux nombres naturels" } ] } } 835lpvvpvr18iwhgmdlipbhnk3qs1ym Z13660 0 24901 290380 269593 2026-07-11T15:51:38Z OMGShay 92 79812 Spanish translation 290380 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z13660" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z13518", "Z17K2": "Z13660K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "m" }, { "Z1K1": "Z11", "Z11K1": "Z1014", "Z11K2": "Nọmba eke" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "m" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "m" }, { "Z1K1": "Z11", "Z11K1": "Z1003", "Z11K2": "m" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z13518", "Z17K2": "Z13660K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "n" }, { "Z1K1": "Z11", "Z11K1": "Z1014", "Z11K2": "Nọmba eke" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "n" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "n" }, { "Z1K1": "Z11", "Z11K1": "Z1003", "Z11K2": "n" } ] } } ], "Z8K2": "Z13518", "Z8K3": [ "Z20", "Z13662", "Z23480", "Z23511" ], "Z8K4": [ "Z14", "Z23481", "Z14858", "Z13661", "Z34195" ], "Z8K5": "Z13660" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "least common multiple" }, { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "লঘিষ্ঠ সাধারণ গুণিতক" }, { "Z1K1": "Z11", "Z11K1": "Z1014", "Z11K2": "Otutu kacha nta" }, { "Z1K1": "Z11", "Z11K1": "Z1818", "Z11K2": "o kere wọpọ ọpọ" }, { "Z1K1": "Z11", "Z11K1": "Z1013", "Z11K2": "mafi ƙarancin gama gari" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "minimo comune multiplo" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "kleinstes gemeinsames Vielfaches" }, { "Z1K1": "Z11", "Z11K1": "Z1003", "Z11K2": "mínimo común múltiplo" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "LCM" ] }, { "Z1K1": "Z31", "Z31K1": "Z1003", "Z31K2": [ "Z6", "MCM" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } o29pxtrvwpbsxms91j7iq3q6d6jq365 290381 290380 2026-07-11T15:54:48Z OMGShay 92 79812 Other languages 290381 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z13660" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z13518", "Z17K2": "Z13660K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "m" }, { "Z1K1": "Z11", "Z11K1": "Z1014", "Z11K2": "Nọmba eke" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "m" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "m" }, { "Z1K1": "Z11", "Z11K1": "Z1003", "Z11K2": "m" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "m" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z13518", "Z17K2": "Z13660K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "n" }, { "Z1K1": "Z11", "Z11K1": "Z1014", "Z11K2": "Nọmba eke" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "n" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "n" }, { "Z1K1": "Z11", "Z11K1": "Z1003", "Z11K2": "n" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "N" } ] } } ], "Z8K2": "Z13518", "Z8K3": [ "Z20", "Z13662", "Z23480", "Z23511" ], "Z8K4": [ "Z14", "Z23481", "Z14858", "Z13661", "Z34195" ], "Z8K5": "Z13660" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "least common multiple" }, { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "লঘিষ্ঠ সাধারণ গুণিতক" }, { "Z1K1": "Z11", "Z11K1": "Z1014", "Z11K2": "Otutu kacha nta" }, { "Z1K1": "Z11", "Z11K1": "Z1818", "Z11K2": "o kere wọpọ ọpọ" }, { "Z1K1": "Z11", "Z11K1": "Z1013", "Z11K2": "mafi ƙarancin gama gari" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "minimo comune multiplo" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "kleinstes gemeinsames Vielfaches" }, { "Z1K1": "Z11", "Z11K1": "Z1003", "Z11K2": "mínimo común múltiplo" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "plus petit commun multiple" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "LCM" ] }, { "Z1K1": "Z31", "Z31K1": "Z1003", "Z31K2": [ "Z6", "MCM" ] }, { "Z1K1": "Z31", "Z31K1": "Z1430", "Z31K2": [ "Z6", "KGV" ] }, { "Z1K1": "Z31", "Z31K1": "Z1004", "Z31K2": [ "Z6", "PPCM" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Finds the lowest common multiple of two natural numbers." }, { "Z1K1": "Z11", "Z11K1": "Z1003", "Z11K2": "Encuentra el múltiplo común más bajo de dos números naturales." }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Findet das niedrigste gemeinsame Vielfache von zwei natürlichen Zahlen." }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "Trouve le multiple commun le plus bas de deux nombres naturels." } ] } } 1l5269nej251sln2rsa3vd6zkkg1eu9 290406 290381 2026-07-11T17:21:45Z Dv103 11127 +it alias 290406 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z13660" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z13518", "Z17K2": "Z13660K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "m" }, { "Z1K1": "Z11", "Z11K1": "Z1014", "Z11K2": "Nọmba eke" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "m" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "m" }, { "Z1K1": "Z11", "Z11K1": "Z1003", "Z11K2": "m" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "m" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z13518", "Z17K2": "Z13660K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "n" }, { "Z1K1": "Z11", "Z11K1": "Z1014", "Z11K2": "Nọmba eke" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "n" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "n" }, { "Z1K1": "Z11", "Z11K1": "Z1003", "Z11K2": "n" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "N" } ] } } ], "Z8K2": "Z13518", "Z8K3": [ "Z20", "Z13662", "Z23480", "Z23511" ], "Z8K4": [ "Z14", "Z23481", "Z14858", "Z13661", "Z34195" ], "Z8K5": "Z13660" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "least common multiple" }, { "Z1K1": "Z11", "Z11K1": "Z1011", "Z11K2": "লঘিষ্ঠ সাধারণ গুণিতক" }, { "Z1K1": "Z11", "Z11K1": "Z1014", "Z11K2": "Otutu kacha nta" }, { "Z1K1": "Z11", "Z11K1": "Z1818", "Z11K2": "o kere wọpọ ọpọ" }, { "Z1K1": "Z11", "Z11K1": "Z1013", "Z11K2": "mafi ƙarancin gama gari" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "minimo comune multiplo" }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "kleinstes gemeinsames Vielfaches" }, { "Z1K1": "Z11", "Z11K1": "Z1003", "Z11K2": "mínimo común múltiplo" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "plus petit commun multiple" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "LCM" ] }, { "Z1K1": "Z31", "Z31K1": "Z1003", "Z31K2": [ "Z6", "MCM" ] }, { "Z1K1": "Z31", "Z31K1": "Z1430", "Z31K2": [ "Z6", "KGV" ] }, { "Z1K1": "Z31", "Z31K1": "Z1004", "Z31K2": [ "Z6", "PPCM" ] }, { "Z1K1": "Z31", "Z31K1": "Z1787", "Z31K2": [ "Z6", "mcm" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Finds the lowest common multiple of two natural numbers." }, { "Z1K1": "Z11", "Z11K1": "Z1003", "Z11K2": "Encuentra el múltiplo común más bajo de dos números naturales." }, { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Findet das niedrigste gemeinsame Vielfache von zwei natürlichen Zahlen." }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "Trouve le multiple commun le plus bas de deux nombres naturels." } ] } } 1vwbw392m32ib31wjfe0ytze9wh1cbq Wikifunctions:Catalogue/Number operations 4 41957 290370 280350 2026-07-11T15:15:57Z YoshiRulz 10156 Add hatnote 290370 wikitext text/x-wiki {{see also|WF:Catalogue/Boolean operations#Byte functions}} == Numeric Characteristics == * {{Z+|Z15818}} * {{Z+|Z23883}} * {{Z+|Z12427}} * {{Z+|Z14953}} * {{Z+|Z14961}} * {{Z+|Z15190}} * {{Z+|Z15276}} * {{Z+|Z15735}} * {{Z+|Z15741}} * {{Z+|Z15251}} * {{Z+|Z14933}} * {{Z+|Z14999}} * {{Z+|Z14980}} * {{Z+|Z14966}} * {{Z+|Z15265}} * {{Z+|Z13726}} * {{Z+|Z15007}} * {{Z+|Z12636}} * {{Z+|Z14683}} * {{Z+|Z15757}} * {{Z+|Z14783}} * {{Z+|Z15617}} * {{Z+|Z15282}} * {{Z+|Z14792}} * {{Z+|Z15201}} * {{Z+|Z14815}} * {{Z+|Z14810}} * {{Z+|Z14976}} * {{Z+|Z15031}} * {{Z+|Z14971}} * {{Z+|Z15151}} * {{Z+|Z15127}} * {{Z+|Z14924}} * {{Z+|Z15443}} * {{Z+|Z14946}} * {{Z+|Z14938}} * {{Z+|Z15018}} * {{Z+|Z15241}} * {{Z+|Z15218}} * {{Z+|Z15013}} * {{Z+|Z15121}} * {{Z+|Z15050}} * {{Z+|Z15055}} * {{Z+|Z15186}} * {{Z+|Z15224}} * {{Z+|Z14958}} * {{Z+|Z15195}} * {{Z+|Z15228}} * {{Z+|Z14991}} ===Comparisons=== {{Help:Comparison function table/Natural}} * {{Z+|Z13522}} ** {{Z+|Z15849}} * {{Z+|Z13676}} * {{Z+|Z13682}} * {{Z+|Z13689}} * {{Z+|Z13695}} * {{Z+|Z16731}} * {{Z+|Z13701}} * {{Z+|Z13740}} * {{Z+|Z20266}} * {{Z+|Z13555}} * {{Z+|Z34353}} * {{Z+|Z16773}} * {{Z+|Z17628}} * {{Z+|Z27811}} ** {{Z+|Z27815}} ===Selections=== * {{Z+|Z13630}} * {{Z+|Z13633}} * {{Z+|Z19509}} * {{Z+|Z29429}} ==== Arithmetic Functions ==== * {{Z+|Z12971}} * {{Z+|Z12975}} * {{Z+|Z13521}} * {{Z+|Z13578}} * {{Z+|Z13539}} ** [[Z15107]] * {{Z+|Z13546}} ** [[Z15111]] * {{Z+|Z13551}} * {{Z+|Z13576}} * {{Z+|Z13569}} * {{Z+|Z17315}} * {{Z+|Z13582}} * {{Z+|Z13612}} * {{Z+|Z13660}} * {{Z+|Z13647}} ** [[Z13663]], [[Z13977]], [[Z13979]], [[Z13809]], [[Z13644]], [[Z13948]], [[Z13963]], [[Z13969]] * {{Z+|Z15257}} * {{Z+|Z15256}} * {{Z+|Z14732}} * {{Z+|Z13667}} * {{Z+|Z15143}} * {{Z+|Z15163}} * {{Z+|Z13995}} ** {{Z+|Z13997}} * {{Z+|Z13818}} * {{Z+|Z13822}} * {{Z+|Z13848}} ** {{Z+|Z14007}} * {{Z+|Z13854}} * {{Z+|Z16762}} * {{Z+|Z15108}} * {{Z+|Z14742}} * {{Z+|Z14860}} * {{Z+|Z15318}} * {{Z+|Z14894}} * {{Z+|Z15341}} * {{Z+|Z14900}} * {{Z+|Z14905}} * {{Z+|Z14847}} * {{Z+|Z15075}} * {{Z+|Z15085}} * {{Z+|Z13831}} ** {{Z+|Z14209}} ==== Natural number sequences and unary natural number functions ==== See [[Wikifunctions:OEIS]] * {{Z+|Z12636}} * {{Z+|Z13561}} * {{Z+|Z14058}} * {{Z+|Z14066}} * {{Z+|Z13857}} * {{Z+|Z15044}} * {{Z+|Z13957}} * {{Z+|Z13955}} * {{Z+|Z15302}} * {{Z+|Z14629}} * {{Z+|Z14917}} * {{Z+|Z15119}} * {{Z+|Z15232}} * {{Z+|Z14871}} * {{Z+|Z15075}} * {{Z+|Z15085}} * {{Z+|Z15080}} * {{Z+|Z15061}} * {{Z+|Z14876}} * {{Z+|Z13843}} * {{Z+|Z15386}} * {{Z+|Z15047}} * {{Z+|Z14888}} * {{Z+|Z14864}} * {{Z+|Z13989}} * {{Z+|Z15157}} * {{Z+|Z13735}} ==== Bitwise Functions ==== * {{Z+|Z13651}} * {{Z+|Z13652}} * {{Z+|Z13653}} * {{Z+|Z13812}} * {{Z+|Z13813}} * {{Z+|Z13860}} * {{Z+|Z13928}} ==== Number conversions ==== {{Help:Type conversion table/Natural}} ===== By base ===== * {{Z+|Z12982}} * {{Z+|Z12987}} * {{Z+|Z13779}} * {{Z+|Z13780}} * {{Z+|Z13781}} * {{Z+|Z15671}} * {{Z+|Z13782}} * {{Z+|Z13783}} * {{Z+|Z13784}} * {{Z+|Z13797}} * {{Z+|Z13798}} * {{Z+|Z13799}} * {{Z+|Z13806}} * {{Z+|Z31177}} ===== By system ===== * {{Z+|Z17065}} * {{Z+|Z11022}} * {{Z+|Z11023}} * {{Z+|Z18515}} * {{Z+|Z18489}} * {{Z+|Z18504}} * {{Z+|Z14018}} * {{Z+|Z22294}} * {{Z+|Z22649}} * {{Z+|Z22285}} * {{Z+|Z22288}} * {{Z+|Z22291}} == Integer functions == {{Help:Type deconstruction table/Integer}} {{Help:Type conversion table/Integer}} * {{Z+|Z16688}} * {{Z+|Z17249}} * {{Z+|Z17254}} * {{Z+|Z17186}} * {{Z+|Z17153}} * {{Z+|Z17160}} * {{Z+|Z16693}} * {{Z+|Z17111}} * {{Z+|Z17120}} * {{Z+|Z15844}} * {{Z+|Z17105}} * {{Z+|Z17204}} * {{Z+|Z17239}} * {{Z+|Z12480}} * {{Z+|Z12429}} * {{Z+|Z17215}} * {{Z+|Z17229}} * {{Z+|Z17132}} * {{Z+|Z17173}} * {{Z+|Z17140}} * {{Z+|Z17363}} * {{Z+|Z16700}} ** {{Z+|Z25073}} * {{Z+|Z17151}} * {{Z+|Z17128}} * {{Z+|Z17101}} * {{Z+|Z17267}} * {{Z+|Z17144}} * {{Z+|Z17167}} ** {{Z+|Z25196}} ** {{Z+|Z26858}} * {{Z+|Z32261}} * {{Z+|Z17263}} * {{Z+|Z17376}} * {{Z+|Z17380}} {{Help:Comparison function table/Integer}} ===Integer functions using set-theoretic representation with pairs of natural numbers=== see [[w:Integer#Equivalence classes of ordered pairs]] * {{Z|Z17307}} * {{Z|Z17301}} * {{Z|Z17321}} * {{Z|Z17326}} * {{Z|Z17330}} * {{Z|Z17340}} * {{Z|Z17469}} * {{z|Z17345}} ===Integer sequence and unary integer functions=== See [[Wikifunctions:OEIS]] * {{Z|Z17386}} * {{z|Z17394}} * {{Z+|Z31619}} ** {{Z+|Z36018}} ** {{Z+|Z36033}} ===Search for=== [[Special:Search/: "Z8K2 Z16683" OR "Z8K2 Z1K1 Z7 Z7K1 Z881 Z881K1 Z16683" OR "Z17K1 Z16683" OR "Z17K1 Z1K1 Z7 Z7K1 Z881 Z881K1 Z16683"|Functions expecting or returning an explicit Integer object, singly or in a list]] * [[Special:Search/: "Z8K2 Z16683"|Functions returning an explicit Integer object]] ** [[Special:Search/: "Z8K2 Z1K1 Z7 Z7K1 Z881 Z881K1 Z16683"|or a list of them]] * [[Special:Search/: "Z17K1 Z16683"|Functions expecting an explicit Integer object]] ** [[Special:Search/: "Z17K1 Z1K1 Z7 Z7K1 Z881 Z881K1 Z16683"|or a list of them]] * [[Special:Search/: "Z8K2 Z16683" "Z17K1 Z16683"|Functions expecting and returning explicit Integer objects (but not in a list)]] * [[Special:Search/: "Z8K2 Z16683" !"Z17K1 Z16683"|Functions with no Integer object inputs (unless in a list) returning an explicit Integer object (not in a list)]] ==Rational number functions== {{Help:Type deconstruction table/Rational}} === Comparison === * {{Z+|Z19686}} * {{Z+|Z24506}} * {{Z+|Z19751}} * {{Z+|Z19752}} * {{Z+|Z19753}} * {{Z+|Z19754}} * {{Z+|Z24403}} * {{Z+|Z19806}} {{Help:Comparison function table/Rational}} ===Properties=== * {{Z+|Z20065}} * {{Z+|Z21702}} * {{Z+|Z19922}} * {{Z+|Z21714}} * {{Z+|Z21721}} * {{Z+|Z19583}} * {{Z+|Z25642}} ** {{Z+|Z25647}} === Transformation and conversion === {{Help:Type conversion table/Rational}} * {{Z+|Z19694}} * {{Z+|Z19711}} * {{Z+|Z19717}} * {{Z+|Z19722}} * {{Z+|Z19733}} * {{Z+|Z19724}} * {{Z+|Z19744}} * {{Z+|Z19848}} * {{Z+|Z20584}} * {{Z+|Z27232}} * {{Z+|Z24382}} * {{Z+|Z25445}} * {{Z+|Z25656}} ** {{Z+|Z25636}} ** {{Z+|Z25639}} ** {{Z+|Z29116}} * {{Z+|Z27737}} === Rounding === {{Help:Rounding_function_table/Rational}} === Operations === * {{Z+|Z19679}} * {{Z+|Z19699}} * {{Z+|Z19706}} * {{Z+|Z19708}} * {{Z+|Z21320}} * {{Z+|Z24487}} * {{Z+|Z19682}} ** {{Z+|Z25432}} * {{Z+|Z20032}} * {{Z+|Z20053}} * {{Z+|Z31523}} ** {{Z+|Z19736}} * {{Z+|Z31522}} ** {{Z+|Z19740}} * {{Z+|Z19800}} * {{Z+|Z27705}} ** {{Z+|Z27719}} ** {{Z+|Z19814}} ** {{Z+|Z19841}} ** {{Z+|Z12606}} * {{Z+|Z19826}} * {{Z+|Z19833}} ** {{Z+|Z33933}} * {{Z+|Z20856}} * {{Z+|Z20863}} * {{Z+|Z20870}} * {{Z+|Z20877}} * {{Z+|Z24081}} * {{Z+|Z20902}} * {{Z+|Z21692}} * {{Z+|Z23899}} * {{Z+|Z23882}} * {{Z+|Z24372}} * {{Z+|Z24374}} * {{Z+|Z24376}} ==== Operations with custom precision ==== * {{Z+|Z24505}} * {{Z+|Z24681}} * {{Z+|Z24698}} ===Probability Operations=== * {{Z+|Z19967}} * {{Z+|Z20000}} * {{Z+|Z20226}} ====Probability mass functions==== * {{Z+|Z21294}} * {{Z+|Z20094}} * {{Z+|Z21312}} ==Floating point functions== {{Help:Type deconstruction table/float64}} ===Properties=== *{{Z+|Z35303}} **{{Z+|Z21136}} *{{Z+|Z21139}} *{{Z+|Z21142}} *{{Z+|Z21145}} *{{Z+|Z22636}} *{{Z+|Z33615}} *{{Z+|Z34827}} ===Conversions=== *{{Z+|Z20854}} *{{Z+|Z21148}} *{{Z+|Z20915}} *{{Z+|Z21642}} *{{Z+|Z21925}} *{{Z+|Z21163}} *{{Z+|Z20844}} *{{Z+|Z21679}} *{{Z+|Z20936}} *{{Z+|Z20937}} *{{Z+|Z21071}} *{{Z+|Z21070}} ===Comparisons=== *{{Z+|Z20850}} *{{Z+|Z20924}} *{{Z+|Z20940}} *{{Z+|Z20941}} *{{Z+|Z20943}} *{{Z+|Z20944}} *{{Z+|Z20945}} ===Rounding=== {{Help:Rounding_function_table/float64}} ===Operations=== *{{Z+|Z20849}} *{{Z+|Z21031}} *{{Z+|Z21032}} *{{Z+|Z21033}} *{{Z+|Z16463}} *{{Z+|Z12473}} *{{Z+|Z16475}} *{{Z+|Z20954}} *{{Z+|Z20955}} *{{Z+|Z20956}} *{{Z+|Z12505}} *{{Z+|Z12497}} *{{Z+|Z20959}} *{{Z+|Z20960}} *{{Z+|Z20961}} *{{Z+|Z20962}} *{{Z+|Z20963}} *{{Z+|Z20964}} *{{Z+|Z20965}} *{{Z+|Z20966}} *{{Z+|Z20967}} *{{Z+|Z20968}} *{{Z+|Z12509}} *{{Z+|Z12500}} *{{Z+|Z20971}} *{{Z+|Z20972}} *{{Z+|Z20973}} *{{Z+|Z20974}} *{{Z+|Z21000}} *{{Z+|Z21001}} *{{Z+|Z21003}} *{{Z+|Z21004}} *{{Z+|Z21005}} *{{Z+|Z21005}} *{{Z+|Z21007}} *{{Z+|Z21008}} *{{Z+|Z21009}} *{{Z+|Z21010}} *{{Z+|Z21012}} *{{Z+|Z21013}} *{{Z+|Z29125}} *{{Z+|Z21028}} *{{Z+|Z21037}} *{{Z+|Z21041}} *{{Z+|Z34780}} *{{Z+|Z20841}} *{{Z+|Z21043}} *{{Z+|Z21047}} **{{Z+|Z26304}} ***{{Z+|Z26315}} *{{Z+|Z21775}} *{{Z+|Z23902}} * {{Z+|Z31079}} === Search for === [[Special:Search/ : "Z8K2 Z20838" OR "Z8K2 Z1K1 Z7 Z7K1 Z881 Z881K1 Z20838" OR "Z17K1 Z20838" OR "Z17K1 Z1K1 Z7 Z7K1 Z881 Z881K1 Z20838"| Functions expecting or returning an explicit Float64 object, singly or in a list]] * [[Special:Search/ : "Z8K2 Z20838"|Functions returning an explicit Float64 object]] ** [[Special:Search/ : "Z8K2 Z1K1 Z7 Z7K1 Z881 Z881K1 Z20838"|or a list of them]] * [[Special:Search/ : "Z17K1 Z20838"|Functions expecting an explicit Float64 object]] ** [[Special:Search/ : "Z17K1 Z1K1 Z7 Z7K1 Z881 Z881K1 Z20838"|or a list of them]] * [[Special:Search/ : "Z8K2 Z20838" "Z17K1 Z20838"| Functions expecting and returning an explicit Float64 object]] ** [[Special:Search/ : "Z8K2 Z1K1 Z7 Z7K1 Z881 Z881K1 Z20838" "Z17K1 Z20838"| or returning a list]] ** [[Special:Search/ : "Z8K2 Z20838" "Z17K1 Z1K1 Z7 Z7K1 Z881 Z881K1 Z20838"|or expecting a list]] ** [[Special:Search/ : "Z8K2 Z1K1 Z7 Z7K1 Z881 Z881K1 Z20838" "Z17K1 Z1K1 Z7 Z7K1 Z881 Z881K1 Z20838"|or expecting and returning a list]] == Complex numbers == Type: {{Z+|Z33198}} {{Help:Type deconstruction table/complex128}} === Constructor and deconstructors === * {{Z+|Z33227}} * {{Z+|Z33304}} * {{Z+|Z33214}} * {{Z+|Z33221}} * {{Z+|Z33499}} ** {{Z+|Z33713}} * {{Z+|Z33610}} === Comparison === * {{Z+|Z33202}} * {{Z+|Z33506}} === Arithmetics === * {{Z+|Z33201}} * {{Z+|Z33366}} * {{Z+|Z33700}} ** {{Z+|Z35072}} * {{Z+|Z33708}} ** {{Z+|Z35073}} * {{Z+|Z33372}} * {{Z+|Z33679}} * {{Z+|Z35314}} * {{Z+|Z35312}} ** {{Z+|Z35292}} == Number operations requiring type conversion == === Numeric Characteristics === * {{Z+|Z10603}} === Arithmetic Functions === * {{Z+|Z11235}} * {{Z+|Z12522}} * {{Z+|Z12476}} * {{Z+|Z10862}} * {{Z+|Z12720}} === Trigonometric Functions === * {{Z+|Z12497}} * {{Z+|Z12500}} * {{Z+|Z12505}} * {{Z+|Z12509}} * {{Z+|Z12473}} * {{Z+|Z14446}} === Health Functions === * {{Z+|Z12526}} * {{Z+|Z12572}} === Geometric Functions === * {{Z+|Z13341}} === Climate related functions === These would benefit from a float type. * {{Z+|Z18421}} * {{Z+|Z18391}} * {{Z+|Z18364}} * {{Z+|Z18406}} * {{Z+|Z18409}} * {{Z+|Z18412}} * {{Z+|Z18415}} * {{Z+|Z18418}} === Distance functions === * {{Z+|Z18428}} * {{Z+|Z18431}} * {{Z+|Z18362}} === Physics functions === * {{Z+|Z12910}} === Randomness === {{main|Wikifunctions:Determinism}} ''Reminder that Wikifunctions does not support randomness for now. We always expect all functions to return functional, deterministic results, only dependent on the input. This is in order to allow for aggressive caching.'' see [[Wikifunctions:Project_chat/Archive/2023/09#Help_please]]. * {{Z+|Z13148}} * {{Z+|Z19441}} * {{Z+|Z19460}} [[Category:Lists of functions]] 4ueoyv6wrchi8e4ul4v6y8qts10qjze Z26671 0 61837 290453 234359 2026-07-12T05:41:01Z WikiLambda system 3 Updated the implementation list (see [[Help:Wikifunctions/Implementation_ordering_and_choosing|About implementation selection]]) 290453 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z26671" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z26671K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "entity" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "entitet" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "entité" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z26671K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "class" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "klass" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "classe" } ] } } ], "Z8K2": "Z6", "Z8K3": [ "Z20", "Z26672", "Z26673", "Z26682" ], "Z8K4": [ "Z14", "Z30363", "Z26681" ], "Z8K5": "Z26671" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Swedish article-less instantiating sentence" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "création d'une phrase sans article en suédois" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "QID label is a QID label", "this is a that", "entity is a class" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "E.g. \"Berlin är en stad\" or \"Sverige är ett land.\"" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "Till exempel, \"Berlin är en stad.\" eller \"Sverige är ett land.\"" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "par exemple : \"Berlin är en stad\" ou \"Sverige är ett land.\"" } ] } } 36kv6mtkvtvuyqx5va63cxm9kzjafif Z26681 0 61847 290449 234348 2026-07-12T05:39:14Z Autom 448 290449 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z26681" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z26671", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z22511", "Z22511K1": { "Z1K1": "Z7", "Z7K1": "Z21394", "Z21394K1": [ "Z6", { "Z1K1": "Z7", "Z7K1": "Z23753", "Z23753K1": { "Z1K1": "Z18", "Z18K1": "Z26671K1" }, "Z23753K2": "Z1592" }, " är ", { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z889", "Z889K1": { "Z1K1": "Z7", "Z7K1": "Z811", "Z811K1": { "Z1K1": "Z7", "Z7K1": "Z873", "Z873K1": "Z20616", "Z873K2": [ "Z1", { "Z1K1": "Z7", "Z7K1": "Z22696", "Z22696K1": { "Z1K1": "Z18", "Z18K1": "Z26671K2" }, "Z22696K2": "Z1592" } ] } }, "Z889K2": [ "Z1", { "Z1K1": "Z6091", "Z6091K1": "Q1305037" } ], "Z889K3": "Z19316" }, "Z802K2": "en ", "Z802K3": "ett " }, { "Z1K1": "Z7", "Z7K1": "Z23753", "Z23753K1": { "Z1K1": "Z18", "Z18K1": "Z26671K2" }, "Z23753K2": "Z1592" } ] } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "simple composition for Z26671" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } op1s5w1ho72e3o09b5jipankqg8z01h Z26783 0 62170 290450 206336 2026-07-12T05:39:24Z Autom 448 290450 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z26783" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z26771", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z22511", "Z22511K1": { "Z1K1": "Z7", "Z7K1": "Z21394", "Z21394K1": [ "Z6", { "Z1K1": "Z7", "Z7K1": "Z23753", "Z23753K1": { "Z1K1": "Z18", "Z18K1": "Z26771K1" }, "Z23753K2": "Z1592" }, " är ", { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z889", "Z889K1": [ "Z1", { "Z1K1": { "Z1K1": "Z7", "Z7K1": "Z811", "Z811K1": { "Z1K1": "Z7", "Z7K1": "Z873", "Z873K1": "Z20616", "Z873K2": [ "Z1", { "Z1K1": "Z7", "Z7K1": "Z22696", "Z22696K1": { "Z1K1": "Z7", "Z7K1": "Z811", "Z811K1": { "Z1K1": "Z7", "Z7K1": "Z23543", "Z23543K1": { "Z1K1": "Z18", "Z18K1": "Z26771K1" } } }, "Z22696K2": "Z1592" } ] } } } ], "Z889K2": [ "Z6091", { "Z1K1": "Z6091", "Z6091K1": "Q1305037" } ], "Z889K3": "Z19316" }, "Z802K2": "en ", "Z802K3": "ett " } ] } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "simple composition for Z26771" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 520bxoedhpk5uemadc4m9jb997kj05x Z26794 0 62182 290452 206376 2026-07-12T05:40:14Z Autom 448 290452 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z26794" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z26791", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z21394", "Z21394K1": [ "Z6", { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z12696", "Z12696K1": { "Z1K1": "Z7", "Z7K1": "Z20616", "Z20616K1": { "Z1K1": "Z18", "Z18K1": "Z26791K1" } }, "Z12696K2": { "Z1K1": "Z6091", "Z6091K1": "Q1775461" } }, "Z802K2": "ett ", "Z802K3": "en " }, { "Z1K1": "Z7", "Z7K1": "Z19241", "Z19241K1": { "Z1K1": "Z18", "Z18K1": "Z26791K1" }, "Z19241K2": [ "Z6091", { "Z1K1": "Z6091", "Z6091K1": "Q110786" } ] } ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "simple composition for Z26791" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } tisaqca71frsxyi1jfozas3uybfvgar Talk:Z26095 1 63136 290356 282963 2026-07-11T14:14:15Z Warudo 6974 /* Wrong lexeme form is being used */ new section 290356 wikitext text/x-wiki == Fragment or sentence? == I think the sentence punctuation should be deferred. This would make the fragment “a lion is a cat” rather than “A lion is a cat.” This will support simple conjunction of fragments like “a lion is a cat and an antelope is a deer”, which would otherwise become “A lion is a cat. and An antelope is a deer.”, as well as more complex conjunctions like “although a lion is a cat (and<s> a lion is</s> a mammal)…”. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 12:53, 7 August 2025 (UTC) :This makes sense to me. [[User:99of9|99of9]] ([[User talk:99of9|talk]]) 08:56, 20 November 2025 (UTC) :Oh, so maybe you should have edited the function description accordingly?? It still says ''Makes a sentence […] "A frog is an amphibian."'' So now, it’s a random mix among the languages, it seems. [[User:Mormegil|Mormegil]] ([[User talk:Mormegil|talk]]) 09:11, 29 April 2026 (UTC) == Odd failure == <syntaxhighlight lang="wikitext" inline>{{#function:Z26095|Q11064354|Q35120|Z1002}}</syntaxhighlight> fails: {{#function:Z26095|Q11064354|Q35120|Z1002}} <br>But enter those in on the function page and it works fine... [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 15:09, 19 November 2025 (UTC) :Nevermind, guess it was a transient failure. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 04:47, 20 November 2025 (UTC) == Fallback may not be valid math == Per [[w:Special:GoToComment/c-Warudo-20260613103500-Fram-20260608093200]], should we make the fallback valider notation by dropping the brackets? If making clear where the statement ends is a concern (which it probably is) we can add a linebreak at the end. [[User:Aaron Liu|Aaron Liu]] ([[User talk:Aaron Liu|talk]]) 00:04, 14 June 2026 (UTC) :Boldly {{done}}, [[Special:Permalink/282954]]. Note that, frustratingly, caching will mean that any existing uses will be stuck for a while. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 01:26, 14 June 2026 (UTC) == Wrong lexeme form is being used == <syntaxhighlight lang="wikitext" inline>{{#function:Z26095|Q89|Q331483|Z1430}}</syntaxhighlight> results in {{#function:Z26095|Q89|Q331483|Z1430}} This was reported in [[w:Special:GotoComment/c-Fram-20260408131600-Abstract_Wikipedia_goes_somewhat_live_and_already_hosts_unattributed_enwiki_copi]]. Presumably the reason the plural is incorrectly used here is that it is the first form of the lexeme ([[d:Special:EntityPage/L819-F1]]). Instead of just fetching the first form, the grammatical category should be checked. In this case, the form with the correct grammatical category is [[d:Special:EntityPage/L819-F3]]. [[User:Warudo|Warudo]] ([[User talk:Warudo|talk]]) 14:14, 11 July 2026 (UTC) dei9reeztsr8alti4h9ul1jszcujmx3 290357 290356 2026-07-11T14:14:58Z Warudo 6974 /* Wrong lexeme form is being used */ fix 290357 wikitext text/x-wiki == Fragment or sentence? == I think the sentence punctuation should be deferred. This would make the fragment “a lion is a cat” rather than “A lion is a cat.” This will support simple conjunction of fragments like “a lion is a cat and an antelope is a deer”, which would otherwise become “A lion is a cat. and An antelope is a deer.”, as well as more complex conjunctions like “although a lion is a cat (and<s> a lion is</s> a mammal)…”. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 12:53, 7 August 2025 (UTC) :This makes sense to me. [[User:99of9|99of9]] ([[User talk:99of9|talk]]) 08:56, 20 November 2025 (UTC) :Oh, so maybe you should have edited the function description accordingly?? It still says ''Makes a sentence […] "A frog is an amphibian."'' So now, it’s a random mix among the languages, it seems. [[User:Mormegil|Mormegil]] ([[User talk:Mormegil|talk]]) 09:11, 29 April 2026 (UTC) == Odd failure == <syntaxhighlight lang="wikitext" inline>{{#function:Z26095|Q11064354|Q35120|Z1002}}</syntaxhighlight> fails: {{#function:Z26095|Q11064354|Q35120|Z1002}} <br>But enter those in on the function page and it works fine... [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 15:09, 19 November 2025 (UTC) :Nevermind, guess it was a transient failure. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 04:47, 20 November 2025 (UTC) == Fallback may not be valid math == Per [[w:Special:GoToComment/c-Warudo-20260613103500-Fram-20260608093200]], should we make the fallback valider notation by dropping the brackets? If making clear where the statement ends is a concern (which it probably is) we can add a linebreak at the end. [[User:Aaron Liu|Aaron Liu]] ([[User talk:Aaron Liu|talk]]) 00:04, 14 June 2026 (UTC) :Boldly {{done}}, [[Special:Permalink/282954]]. Note that, frustratingly, caching will mean that any existing uses will be stuck for a while. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 01:26, 14 June 2026 (UTC) == Wrong lexeme form is being used == <syntaxhighlight lang="wikitext" inline>{{#function:Z26095|Q89|Q3314483|Z1430}}</syntaxhighlight> results in {{#function:Z26095|Q89|Q3314483|Z1430}} This was reported in [[w:Special:GotoComment/c-Fram-20260408131600-Abstract_Wikipedia_goes_somewhat_live_and_already_hosts_unattributed_enwiki_copi]]. Presumably the reason the plural is incorrectly used here is that it is the first form of the lexeme ([[d:Special:EntityPage/L819-F1]]). Instead of just fetching the first form, the grammatical category should be checked. In this case, the form with the correct grammatical category is [[d:Special:EntityPage/L819-F3]]. [[User:Warudo|Warudo]] ([[User talk:Warudo|talk]]) 14:14, 11 July 2026 (UTC) j1ifyffmc2kcl5bvw63qjluyp3ntg0e 290358 290357 2026-07-11T14:16:02Z Warudo 6974 /* Wrong lexeme form is being used */ another fix 290358 wikitext text/x-wiki == Fragment or sentence? == I think the sentence punctuation should be deferred. This would make the fragment “a lion is a cat” rather than “A lion is a cat.” This will support simple conjunction of fragments like “a lion is a cat and an antelope is a deer”, which would otherwise become “A lion is a cat. and An antelope is a deer.”, as well as more complex conjunctions like “although a lion is a cat (and<s> a lion is</s> a mammal)…”. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 12:53, 7 August 2025 (UTC) :This makes sense to me. [[User:99of9|99of9]] ([[User talk:99of9|talk]]) 08:56, 20 November 2025 (UTC) :Oh, so maybe you should have edited the function description accordingly?? It still says ''Makes a sentence […] "A frog is an amphibian."'' So now, it’s a random mix among the languages, it seems. [[User:Mormegil|Mormegil]] ([[User talk:Mormegil|talk]]) 09:11, 29 April 2026 (UTC) == Odd failure == <syntaxhighlight lang="wikitext" inline>{{#function:Z26095|Q11064354|Q35120|Z1002}}</syntaxhighlight> fails: {{#function:Z26095|Q11064354|Q35120|Z1002}} <br>But enter those in on the function page and it works fine... [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 15:09, 19 November 2025 (UTC) :Nevermind, guess it was a transient failure. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 04:47, 20 November 2025 (UTC) == Fallback may not be valid math == Per [[w:Special:GoToComment/c-Warudo-20260613103500-Fram-20260608093200]], should we make the fallback valider notation by dropping the brackets? If making clear where the statement ends is a concern (which it probably is) we can add a linebreak at the end. [[User:Aaron Liu|Aaron Liu]] ([[User talk:Aaron Liu|talk]]) 00:04, 14 June 2026 (UTC) :Boldly {{done}}, [[Special:Permalink/282954]]. Note that, frustratingly, caching will mean that any existing uses will be stuck for a while. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 01:26, 14 June 2026 (UTC) == Wrong lexeme form is being used == <syntaxhighlight lang="wikitext" inline>{{#function:Z26095|Q89|Q3314483|Z1430}}</syntaxhighlight> results in {{#function:Z26095|Q89|Q3314483|Z1430}} This was reported in [[w:Special:GotoComment/c-Fram-20260408131600-Abstract_Wikipedia_goes_somewhat_live_and_already_hosts_unattributed_enwiki_copi]]. Presumably the reason the plural is incorrectly used here is that it is the first form of the lexeme ([[d:Special:EntityPage/L819-F1]]). Instead of just fetching the first form, the grammatical features should be checked. In this case, the form with the correct grammatical features is [[d:Special:EntityPage/L819-F3]]. [[User:Warudo|Warudo]] ([[User talk:Warudo|talk]]) 14:14, 11 July 2026 (UTC) k895wdfmonb0til9yn18u7p7unm2zbp 290359 290358 2026-07-11T14:20:26Z Warudo 6974 /* Wrong lexeme form is being used */ Reply 290359 wikitext text/x-wiki == Fragment or sentence? == I think the sentence punctuation should be deferred. This would make the fragment “a lion is a cat” rather than “A lion is a cat.” This will support simple conjunction of fragments like “a lion is a cat and an antelope is a deer”, which would otherwise become “A lion is a cat. and An antelope is a deer.”, as well as more complex conjunctions like “although a lion is a cat (and<s> a lion is</s> a mammal)…”. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 12:53, 7 August 2025 (UTC) :This makes sense to me. [[User:99of9|99of9]] ([[User talk:99of9|talk]]) 08:56, 20 November 2025 (UTC) :Oh, so maybe you should have edited the function description accordingly?? It still says ''Makes a sentence […] "A frog is an amphibian."'' So now, it’s a random mix among the languages, it seems. [[User:Mormegil|Mormegil]] ([[User talk:Mormegil|talk]]) 09:11, 29 April 2026 (UTC) == Odd failure == <syntaxhighlight lang="wikitext" inline>{{#function:Z26095|Q11064354|Q35120|Z1002}}</syntaxhighlight> fails: {{#function:Z26095|Q11064354|Q35120|Z1002}} <br>But enter those in on the function page and it works fine... [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 15:09, 19 November 2025 (UTC) :Nevermind, guess it was a transient failure. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 04:47, 20 November 2025 (UTC) == Fallback may not be valid math == Per [[w:Special:GoToComment/c-Warudo-20260613103500-Fram-20260608093200]], should we make the fallback valider notation by dropping the brackets? If making clear where the statement ends is a concern (which it probably is) we can add a linebreak at the end. [[User:Aaron Liu|Aaron Liu]] ([[User talk:Aaron Liu|talk]]) 00:04, 14 June 2026 (UTC) :Boldly {{done}}, [[Special:Permalink/282954]]. Note that, frustratingly, caching will mean that any existing uses will be stuck for a while. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 01:26, 14 June 2026 (UTC) == Wrong lexeme form is being used == <syntaxhighlight lang="wikitext" inline>{{#function:Z26095|Q89|Q3314483|Z1430}}</syntaxhighlight> results in {{#function:Z26095|Q89|Q3314483|Z1430}} This was reported in [[w:Special:GotoComment/c-Fram-20260408131600-Abstract_Wikipedia_goes_somewhat_live_and_already_hosts_unattributed_enwiki_copi]]. Presumably the reason the plural is incorrectly used here is that it is the first form of the lexeme ([[d:Special:EntityPage/L819-F1]]). Instead of just fetching the first form, the grammatical features should be checked. In this case, the form with the correct grammatical features is [[d:Special:EntityPage/L819-F3]]. [[User:Warudo|Warudo]] ([[User talk:Warudo|talk]]) 14:14, 11 July 2026 (UTC) :To make it explicit, the correct sentence here would be "Ein Apfel ist eine Frucht". "Äpfel" is plural, so the sentence currently returned by the function says: "An apples is a fruit". [[User:Warudo|Warudo]] ([[User talk:Warudo|talk]]) 14:20, 11 July 2026 (UTC) eltizfads8e0r1v70e5ykbh7b9plqin 290366 290359 2026-07-11T14:58:25Z Dv103 11127 /* Wrong lexeme form is being used */ Reply 290366 wikitext text/x-wiki == Fragment or sentence? == I think the sentence punctuation should be deferred. This would make the fragment “a lion is a cat” rather than “A lion is a cat.” This will support simple conjunction of fragments like “a lion is a cat and an antelope is a deer”, which would otherwise become “A lion is a cat. and An antelope is a deer.”, as well as more complex conjunctions like “although a lion is a cat (and<s> a lion is</s> a mammal)…”. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 12:53, 7 August 2025 (UTC) :This makes sense to me. [[User:99of9|99of9]] ([[User talk:99of9|talk]]) 08:56, 20 November 2025 (UTC) :Oh, so maybe you should have edited the function description accordingly?? It still says ''Makes a sentence […] "A frog is an amphibian."'' So now, it’s a random mix among the languages, it seems. [[User:Mormegil|Mormegil]] ([[User talk:Mormegil|talk]]) 09:11, 29 April 2026 (UTC) == Odd failure == <syntaxhighlight lang="wikitext" inline>{{#function:Z26095|Q11064354|Q35120|Z1002}}</syntaxhighlight> fails: {{#function:Z26095|Q11064354|Q35120|Z1002}} <br>But enter those in on the function page and it works fine... [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 15:09, 19 November 2025 (UTC) :Nevermind, guess it was a transient failure. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 04:47, 20 November 2025 (UTC) == Fallback may not be valid math == Per [[w:Special:GoToComment/c-Warudo-20260613103500-Fram-20260608093200]], should we make the fallback valider notation by dropping the brackets? If making clear where the statement ends is a concern (which it probably is) we can add a linebreak at the end. [[User:Aaron Liu|Aaron Liu]] ([[User talk:Aaron Liu|talk]]) 00:04, 14 June 2026 (UTC) :Boldly {{done}}, [[Special:Permalink/282954]]. Note that, frustratingly, caching will mean that any existing uses will be stuck for a while. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 01:26, 14 June 2026 (UTC) == Wrong lexeme form is being used == <syntaxhighlight lang="wikitext" inline>{{#function:Z26095|Q89|Q3314483|Z1430}}</syntaxhighlight> results in {{#function:Z26095|Q89|Q3314483|Z1430}} This was reported in [[w:Special:GotoComment/c-Fram-20260408131600-Abstract_Wikipedia_goes_somewhat_live_and_already_hosts_unattributed_enwiki_copi]]. Presumably the reason the plural is incorrectly used here is that it is the first form of the lexeme ([[d:Special:EntityPage/L819-F1]]). Instead of just fetching the first form, the grammatical features should be checked. In this case, the form with the correct grammatical features is [[d:Special:EntityPage/L819-F3]]. [[User:Warudo|Warudo]] ([[User talk:Warudo|talk]]) 14:14, 11 July 2026 (UTC) :To make it explicit, the correct sentence here would be "Ein Apfel ist eine Frucht". "Äpfel" is plural, so the sentence currently returned by the function says: "An apples is a fruit". [[User:Warudo|Warudo]] ([[User talk:Warudo|talk]]) 14:20, 11 July 2026 (UTC) ::{{d}} Now I should have solved this problem (the offending function was {{Z|Z27249}}). Thank you for signalling this issue. Unfortunately, due to caching issues, in many instances this specific function call may still be wrong. [https://www.wikifunctions.org/view/it/Z26095?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z26095%22%2C%22Z26095K1%22%3A%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q89%22%7D%2C%22Z26095K2%22%3A%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q1364%22%7D%2C%22Z26095K3%22%3A%22Z1430%22%7D Calling it directly from Wikifunctions] instead gives the correct result. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 14:58, 11 July 2026 (UTC) 8bybg9gojyye3v4z8lxh1czy7q5p10y 290375 290366 2026-07-11T15:25:38Z Warudo 6974 /* Wrong lexeme form is being used */ Reply 290375 wikitext text/x-wiki == Fragment or sentence? == I think the sentence punctuation should be deferred. This would make the fragment “a lion is a cat” rather than “A lion is a cat.” This will support simple conjunction of fragments like “a lion is a cat and an antelope is a deer”, which would otherwise become “A lion is a cat. and An antelope is a deer.”, as well as more complex conjunctions like “although a lion is a cat (and<s> a lion is</s> a mammal)…”. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 12:53, 7 August 2025 (UTC) :This makes sense to me. [[User:99of9|99of9]] ([[User talk:99of9|talk]]) 08:56, 20 November 2025 (UTC) :Oh, so maybe you should have edited the function description accordingly?? It still says ''Makes a sentence […] "A frog is an amphibian."'' So now, it’s a random mix among the languages, it seems. [[User:Mormegil|Mormegil]] ([[User talk:Mormegil|talk]]) 09:11, 29 April 2026 (UTC) == Odd failure == <syntaxhighlight lang="wikitext" inline>{{#function:Z26095|Q11064354|Q35120|Z1002}}</syntaxhighlight> fails: {{#function:Z26095|Q11064354|Q35120|Z1002}} <br>But enter those in on the function page and it works fine... [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 15:09, 19 November 2025 (UTC) :Nevermind, guess it was a transient failure. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 04:47, 20 November 2025 (UTC) == Fallback may not be valid math == Per [[w:Special:GoToComment/c-Warudo-20260613103500-Fram-20260608093200]], should we make the fallback valider notation by dropping the brackets? If making clear where the statement ends is a concern (which it probably is) we can add a linebreak at the end. [[User:Aaron Liu|Aaron Liu]] ([[User talk:Aaron Liu|talk]]) 00:04, 14 June 2026 (UTC) :Boldly {{done}}, [[Special:Permalink/282954]]. Note that, frustratingly, caching will mean that any existing uses will be stuck for a while. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 01:26, 14 June 2026 (UTC) == Wrong lexeme form is being used == <syntaxhighlight lang="wikitext" inline>{{#function:Z26095|Q89|Q3314483|Z1430}}</syntaxhighlight> results in {{#function:Z26095|Q89|Q3314483|Z1430}} This was reported in [[w:Special:GotoComment/c-Fram-20260408131600-Abstract_Wikipedia_goes_somewhat_live_and_already_hosts_unattributed_enwiki_copi]]. Presumably the reason the plural is incorrectly used here is that it is the first form of the lexeme ([[d:Special:EntityPage/L819-F1]]). Instead of just fetching the first form, the grammatical features should be checked. In this case, the form with the correct grammatical features is [[d:Special:EntityPage/L819-F3]]. [[User:Warudo|Warudo]] ([[User talk:Warudo|talk]]) 14:14, 11 July 2026 (UTC) :To make it explicit, the correct sentence here would be "Ein Apfel ist eine Frucht". "Äpfel" is plural, so the sentence currently returned by the function says: "An apples is a fruit". [[User:Warudo|Warudo]] ([[User talk:Warudo|talk]]) 14:20, 11 July 2026 (UTC) ::{{d}} Now I should have solved this problem (the offending function was {{Z|Z27249}}). Thank you for signalling this issue. Unfortunately, due to caching issues, in many instances this specific function call may still be wrong. [https://www.wikifunctions.org/view/it/Z26095?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z26095%22%2C%22Z26095K1%22%3A%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q89%22%7D%2C%22Z26095K2%22%3A%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q1364%22%7D%2C%22Z26095K3%22%3A%22Z1430%22%7D Calling it directly from Wikifunctions] instead gives the correct result. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 14:58, 11 July 2026 (UTC) :::Thanks for fixing it so fast. [[User:Warudo|Warudo]] ([[User talk:Warudo|talk]]) 15:25, 11 July 2026 (UTC) 412vfkp589zqldp7q60xzsvdy0ngsbr Z27249 0 63229 290361 229423 2026-07-11T14:45:22Z Dv103 11127 Added Z37627 to the approved list of test cases 290361 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z27249" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z27249K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Entität" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z27249K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Klasse" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z27257", "Z27260", "Z27269", "Z27270", "Z37627" ], "Z8K4": [ "Z14", "Z29551", "Z27264" ], "Z8K5": "Z27249" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Deutscher Instanziierungssatz mit Artikel" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "German instantiating sentence with article" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 2t4yw9pwevy1x72p67tahysqr84lswp 290362 290361 2026-07-11T14:45:32Z WikiLambda system 3 Updated the implementation list (see [[Help:Wikifunctions/Implementation_ordering_and_choosing|About implementation selection]]) 290362 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z27249" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z27249K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Entität" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z27249K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Klasse" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z27257", "Z27260", "Z27269", "Z27270", "Z37627" ], "Z8K4": [ "Z14", "Z27264", "Z29551" ], "Z8K5": "Z27249" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Deutscher Instanziierungssatz mit Artikel" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "German instantiating sentence with article" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } f7v72eky9wxynz164ljy7oyuyeulrlx 290364 290362 2026-07-11T14:49:45Z Dv103 11127 Added Z37628 to the approved list of implementations 290364 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z27249" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z27249K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Entität" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z27249K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Klasse" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z27257", "Z27260", "Z27269", "Z27270", "Z37627" ], "Z8K4": [ "Z14", "Z27264", "Z29551", "Z37628" ], "Z8K5": "Z27249" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Deutscher Instanziierungssatz mit Artikel" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "German instantiating sentence with article" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 1razaclc1bukdjjp4v6t0zwh6kt6fxi 290365 290364 2026-07-11T14:49:51Z Dv103 11127 Removed Z27264 e Z29551 from the approved list of implementations 290365 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z27249" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z27249K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Entität" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z27249K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Klasse" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z27257", "Z27260", "Z27269", "Z27270", "Z37627" ], "Z8K4": [ "Z14", "Z37628" ], "Z8K5": "Z27249" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Deutscher Instanziierungssatz mit Artikel" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "German instantiating sentence with article" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } bvq7vsnmx7zaino9x0gj0my3bnl4s1q 290373 290365 2026-07-11T15:20:15Z Dv103 11127 +it 290373 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z27249" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z27249K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Entität" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "entità" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z27249K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Klasse" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "classe" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z27257", "Z27260", "Z27269", "Z27270", "Z37627" ], "Z8K4": [ "Z14", "Z37628" ], "Z8K5": "Z27249" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Deutscher Instanziierungssatz mit Artikel" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "German instantiating sentence with article" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "soggetto è istanza di, tedesco" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 0eq6tuuebgsuka71g4ezd6gqiqf9smi 290374 290373 2026-07-11T15:20:36Z Dv103 11127 +en 290374 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z27249" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z27249K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Entität" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "entità" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "entity" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z27249K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Klasse" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "classe" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "class" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z27257", "Z27260", "Z27269", "Z27270", "Z37627" ], "Z8K4": [ "Z14", "Z37628" ], "Z8K5": "Z27249" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Deutscher Instanziierungssatz mit Artikel" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "German instantiating sentence with article" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "soggetto è istanza di, tedesco" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } p0rzm6kxcdq40oovohmldpjsr0hucvf Z27283 0 63378 290369 278920 2026-07-11T15:09:23Z Dv103 11127 Added Z37629 to the approved list of test cases 290369 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z27283" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z27283K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "entity" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "entité" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z27283K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "class" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "classe" } ] } } ], "Z8K2": "Z6", "Z8K3": [ "Z20", "Z37629" ], "Z8K4": [ "Z14", "Z27284" ], "Z8K5": "Z27283" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Korean article-less instantiating sentence" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "création d'une phrase sans article en coréen" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "E.g. \"부산은 도시다.\" or \"물은 물질이다.\"" } ] } } cxd9x6pndsdvhihh12lx3aikzr2hk2f Z27284 0 63394 290367 209859 2026-07-11T15:08:04Z Dv103 11127 removed redundant " 290367 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z27284" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z27283", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z21394", "Z21394K1": [ "Z6", { "Z1K1": "Z7", "Z7K1": "Z12787", "Z12787K1": { "Z1K1": "Z7", "Z7K1": "Z23753", "Z23753K1": { "Z1K1": "Z18", "Z18K1": "Z27283K1" }, "Z23753K2": "Z1643" } }, " ", { "Z1K1": "Z7", "Z7K1": "Z23753", "Z23753K1": { "Z1K1": "Z18", "Z18K1": "Z27283K2" }, "Z23753K2": "Z1643" }, "이다" ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Simple composition for Z27283" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } pbljmeioe5zjd7hfq1p6oghp5dv9pb3 Z29551 0 68742 290376 229421 2026-07-11T15:27:11Z Warudo 6974 Porting the fix from [[Z37628]] 290376 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z29551" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z27249", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z26107", "Z26107K1": "Z1430", "Z26107K2": { "Z1K1": "Z7", "Z7K1": "Z21394", "Z21394K1": [ "Z6", { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z20643", "Z20643K1": { "Z1K1": "Z7", "Z7K1": "Z22696", "Z22696K1": { "Z1K1": "Z18", "Z18K1": "Z27249K1" }, "Z22696K2": "Z1430" } }, "Z802K2": "Eine ", "Z802K3": "Ein " }, { "Z1K1": "Z7", "Z7K1": "Z19241", "Z19241K1": { "Z1K1": "Z7", "Z7K1": "Z22696", "Z22696K1": { "Z1K1": "Z18", "Z18K1": "Z27249K1" }, "Z22696K2": "Z1430" }, "Z19241K2": [ "Z6091", { "Z1K1": "Z6091", "Z6091K1": "Q131105" }, { "Z1K1": "Z6091", "Z6091K1": "Q110786" } ] }, " ist ", { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z20643", "Z20643K1": { "Z1K1": "Z7", "Z7K1": "Z22696", "Z22696K1": { "Z1K1": "Z18", "Z18K1": "Z27249K2" }, "Z22696K2": "Z1430" } }, "Z802K2": "eine ", "Z802K3": "ein " }, { "Z1K1": "Z7", "Z7K1": "Z19241", "Z19241K1": { "Z1K1": "Z7", "Z7K1": "Z22696", "Z22696K1": { "Z1K1": "Z18", "Z18K1": "Z27249K2" }, "Z22696K2": "Z1430" }, "Z19241K2": [ "Z6091", { "Z1K1": "Z6091", "Z6091K1": "Q131105" }, { "Z1K1": "Z6091", "Z6091K1": "Q110786" } ] }, "." ] } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Deutscher Instanziierungssatz mit Artikel, Lexem" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } rmkk5u33ber85fdvc04pd2p17l95ny1 Z32582 0 78832 290446 268675 2026-07-12T05:36:40Z Autom 448 290446 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32582" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32581", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z34039", "Z34039K1": { "Z1K1": "Z7", "Z7K1": "Z14310", "Z14310K1": "Z32534", "Z14310K2": { "Z1K1": "Z18", "Z18K1": "Z32581K4" } }, "Z34039K2": { "Z1K1": "Z18", "Z18K1": "Z32581K1" }, "Z34039K3": { "Z1K1": "Z18", "Z18K1": "Z32581K2" }, "Z34039K4": { "Z1K1": "Z18", "Z18K1": "Z32581K3" }, "Z34039K5": { "Z1K1": "Z18", "Z18K1": "Z32581K4" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Creative work: entity, class, creator, composition" }, { "Z1K1": "Z11", "Z11K1": "Z1004", "Z11K2": "Oeuvre de l'esprit: entité classe auteur, compo." }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "kreativt verk: entitet, typ, skapare, komposition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 5tpm6z1lxalkct6ym9flq0kiscqlzk3 Z32855 0 79289 290442 263359 2026-07-12T05:28:32Z Autom 448 290442 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32855" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32855K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "entity" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "entitet" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32855K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "class" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "typ" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32855K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "location" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "plats" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z32856", "Z32857", "Z32924" ], "Z8K4": [ "Z14", "Z32858" ], "Z8K5": "Z32855" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "ange plats med entitet och typ, svenska" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "State location using entity and class, Swedish" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } s0c6ox4dudhbj1l003tr99p3sfnm3kn 290444 290442 2026-07-12T05:34:12Z Autom 448 Added Z37651 to the approved list of test cases 290444 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32855" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32855K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "entity" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "entitet" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32855K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "class" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "typ" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32855K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "location" }, { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "plats" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z32856", "Z32857", "Z32924", "Z37651" ], "Z8K4": [ "Z14", "Z32858" ], "Z8K5": "Z32855" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "ange plats med entitet och typ, svenska" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "State location using entity and class, Swedish" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 915arta1vv2iovhmkt07ehyhfymgu2h Z32910 0 79422 290447 262031 2026-07-12T05:36:51Z Autom 448 290447 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32910" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32910K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "entitet" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "entity" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32910K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "typ" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "class" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z32910K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "skapare" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "creator" } ] } } ], "Z8K2": "Z11", "Z8K3": [ "Z20", "Z32911", "Z32912" ], "Z8K4": [ "Z14", "Z32913" ], "Z8K5": "Z32910" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "kreativt verk - entitet, typ, skapare, svenska" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Creative work - entity, class, creator, Swedish" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } pq3ccen9i7yxjh9b7h6gujwo0nijl91 Z32913 0 79425 290448 288892 2026-07-12T05:37:19Z Autom 448 290448 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z32913" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z32910", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z26107", "Z26107K1": "Z1592", "Z26107K2": { "Z1K1": "Z7", "Z7K1": "Z22511", "Z22511K1": { "Z1K1": "Z7", "Z7K1": "Z12899", "Z12899K1": [ "Z6", { "Z1K1": "Z7", "Z7K1": "Z23468", "Z23468K1": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z32910K1" }, "Z30120K2": [ "Z6030", "Z6033" ], "Z30120K3": [ "Z60", "Z1592" ], "Z30120K4": [ "Z6092" ] }, "Z23468K2": "Z1592" }, "är", { "Z1K1": "Z7", "Z7K1": "Z30349", "Z30349K1": { "Z1K1": "Z7", "Z7K1": "Z19285", "Z19285K1": { "Z1K1": "Z7", "Z7K1": "Z22696", "Z22696K1": { "Z1K1": "Z18", "Z18K1": "Z32910K2" }, "Z22696K2": "Z1592" } } }, { "Z1K1": "Z7", "Z7K1": "Z23468", "Z23468K1": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z32910K2" }, "Z30120K2": [ "Z6030", "Z6033" ], "Z30120K3": [ "Z60", "Z1592" ], "Z30120K4": [ "Z6092" ] }, "Z23468K2": "Z1592" }, "av", { "Z1K1": "Z7", "Z7K1": "Z23468", "Z23468K1": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z32910K3" }, "Z30120K2": [ "Z6030", "Z6033" ], "Z30120K3": [ "Z60", "Z1592" ], "Z30120K4": [ "Z6092" ] }, "Z23468K2": "Z1592" } ], "Z12899K2": " " } } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "kreativt verk: entitet, typ, skapare, sv, komp" }, { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Creative work: entity, class, creator, sv, compose" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } e9vjx9ysh2ko8srvm6pi024hyyjhud9 Z34510 0 81940 290391 270948 2026-07-11T16:35:12Z Denny 81 290391 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34510" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6001", "Z17K2": "Z34510K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "person" } ] } } ], "Z8K2": "Z40", "Z8K3": [ "Z20", "Z34513", "Z34514", "Z34515", "Z34516" ], "Z8K4": [ "Z14", "Z34511" ], "Z8K5": "Z34510" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Q5 is male?" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Returns whether the sex or gender of a human Wikidata item returns Q6581097 (male). If human but not male, returns false. If not human, returns false." } ] } } bmmcljmi69kv65yfud7oclccr28wtcq Z34541 0 81976 290384 271021 2026-07-11T16:31:44Z Denny 81 Added Z37630 to the approved list of test cases 290384 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34541" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6001", "Z17K2": "Z34541K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "item" } ] } } ], "Z8K2": "Z40", "Z8K3": [ "Z20", "Z37630" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34541" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Q5 is female?" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Returns whether the sex or gender of a human Wikidata item returns Q6581072 (female). If human but not female, returns false. If not human, returns false." } ] } } msxfcedij79529cvotz7cst071jtap2 290386 290384 2026-07-11T16:32:12Z Denny 81 Added Z37631 to the approved list of test cases 290386 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34541" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6001", "Z17K2": "Z34541K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "item" } ] } } ], "Z8K2": "Z40", "Z8K3": [ "Z20", "Z37630", "Z37631" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34541" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Q5 is female?" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Returns whether the sex or gender of a human Wikidata item returns Q6581072 (female). If human but not female, returns false. If not human, returns false." } ] } } 5twarsouo5icq1163evgx5vo6hh8g3s 290389 290386 2026-07-11T16:34:39Z Denny 81 290389 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34541" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6001", "Z17K2": "Z34541K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "person" } ] } } ], "Z8K2": "Z40", "Z8K3": [ "Z20", "Z37630", "Z37631" ], "Z8K4": [ "Z14" ], "Z8K5": "Z34541" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Q5 is female?" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Returns whether the sex or gender of a human Wikidata item returns Q6581072 (female). If human but not female, returns false. If not human, returns false." } ] } } h4t761th1a0zjd7uooal4bkhvxuj9iz 290390 290389 2026-07-11T16:34:46Z Denny 81 Added Z37632 to the approved list of implementations 290390 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z34541" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6001", "Z17K2": "Z34541K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "person" } ] } } ], "Z8K2": "Z40", "Z8K3": [ "Z20", "Z37630", "Z37631" ], "Z8K4": [ "Z14", "Z37632" ], "Z8K5": "Z34541" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Q5 is female?" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Returns whether the sex or gender of a human Wikidata item returns Q6581072 (female). If human but not female, returns false. If not human, returns false." } ] } } du4h49h5o06x7lbur309jsn0r0t12v0 Z35968 0 84844 290456 279949 2026-07-12T07:50:46Z HenkvD 1290 Added Z37652 to the approved list of test cases 290456 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z35968" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z35968K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "entity" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z35968K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "language" } ] } } ], "Z8K2": "Z89", "Z8K3": [ "Z20", "Z37652" ], "Z8K4": [ "Z14", "Z35969" ], "Z8K5": "Z35968" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox for film festival" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 8joononvkrewgdjmwke9qrk4xi4oqsa Z35969 0 84845 290457 288902 2026-07-12T07:52:37Z HenkvD 1290 layout without caption and headers, with infobox section section 290457 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z35969" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z35968", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z33328", "Z33328K1": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K2": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K3": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z37644", "Z37644K1": { "Z1K1": "Z18", "Z18K1": "Z35968K1" }, "Z37644K2": "default", "Z37644K3": { "Z1K1": "Z18", "Z18K1": "Z35968K2" } }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q6256" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z35968K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z6092", "Z6092K1": "P17" }, "Z21449K2": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z35968K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P17" }, { "Z1K1": "Z6092", "Z6092K1": "P571" } ] } }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z35968K2" } } } } ] }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q3406134" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z35968K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z28767", "Z28767K1": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z35968K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P17" }, { "Z1K1": "Z6092", "Z6092K1": "P571" } ] }, "Z28767K2": { "Z1K1": "Z6092", "Z6092K1": "P571" }, "Z28767K3": { "Z1K1": "Z18", "Z18K1": "Z35968K2" } } } ] } ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox for film festival, comp" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 3beq4i968hy0y040bhkcz0u1et3pizt Z35970 0 84848 290460 279966 2026-07-12T07:57:02Z HenkvD 1290 Added Z37653 to the approved list of test cases 290460 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z35970" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z35970K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "entity" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z35970K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "language" } ] } } ], "Z8K2": "Z89", "Z8K3": [ "Z20", "Z37653" ], "Z8K4": [ "Z14", "Z35971" ], "Z8K5": "Z35970" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox for pride parade" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 3p99p7dr7w8h84rxais98qjam0o3iwm Z35971 0 84849 290461 288903 2026-07-12T07:58:58Z HenkvD 1290 new layout without caption, headers with infobox section 290461 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z35971" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z35970", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z33328", "Z33328K1": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K2": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K3": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z37644", "Z37644K1": { "Z1K1": "Z18", "Z18K1": "Z35970K1" }, "Z37644K2": "default", "Z37644K3": { "Z1K1": "Z18", "Z18K1": "Z35970K2" } }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q6256" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z35970K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z6092", "Z6092K1": "P17" }, "Z21449K2": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z35970K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P17" }, { "Z1K1": "Z6092", "Z6092K1": "P571" } ] } }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z35970K2" } } } } ] }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q3406134" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z35970K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z28767", "Z28767K1": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z35970K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P17" }, { "Z1K1": "Z6092", "Z6092K1": "P571" } ] }, "Z28767K2": { "Z1K1": "Z6092", "Z6092K1": "P571" }, "Z28767K3": { "Z1K1": "Z18", "Z18K1": "Z35970K2" } } } ] } ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox for pride parade, comp" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 1ixjrvofa8kqdid15h49l7p3gwa7fez Z35973 0 84851 290463 288904 2026-07-12T08:03:27Z HenkvD 1290 new layout without caption, headers, with infobox section 290463 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z35973" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z35972", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z33328", "Z33328K1": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K2": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K3": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z37644", "Z37644K1": { "Z1K1": "Z18", "Z18K1": "Z35972K1" }, "Z37644K2": "default", "Z37644K3": { "Z1K1": "Z18", "Z18K1": "Z35972K2" } }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q188267" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z35972K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z6092", "Z6092K1": "P3966" }, "Z21449K2": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z35972K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P571" }, { "Z1K1": "Z6092", "Z6092K1": "P3966" } ] } }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z35972K2" } } } } ] }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q115668563" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z35972K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z28767", "Z28767K1": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z35972K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P571" }, { "Z1K1": "Z6092", "Z6092K1": "P3966" } ] }, "Z28767K2": { "Z1K1": "Z6092", "Z6092K1": "P571" }, "Z28767K3": { "Z1K1": "Z18", "Z18K1": "Z35972K2" } } } ] } ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox for programming language, comp" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } il55pqwa1896a53q7isxs0t08ud4irv Z35974 0 84852 290465 279973 2026-07-12T08:05:32Z HenkvD 1290 Added Z37621 to the approved list of test cases 290465 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z35974" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z35974K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "entity" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z35974K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "language" } ] } } ], "Z8K2": "Z89", "Z8K3": [ "Z20", "Z37621" ], "Z8K4": [ "Z14", "Z35975" ], "Z8K5": "Z35974" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox for operating system" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } equ2pc3xcvu21m91e5096xlhnba1hyf Z35975 0 84853 290466 288905 2026-07-12T08:07:50Z HenkvD 1290 new layout without cation, headers, with infobox section 290466 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z35975" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z35974", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z33328", "Z33328K1": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K2": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K3": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z37644", "Z37644K1": { "Z1K1": "Z18", "Z18K1": "Z35974K1" }, "Z37644K2": "default", "Z37644K3": { "Z1K1": "Z18", "Z18K1": "Z35974K2" } }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q9143" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z35974K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z6092", "Z6092K1": "P277" }, "Z21449K2": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z35974K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P277" }, { "Z1K1": "Z6092", "Z6092K1": "P571" } ] } }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z35974K2" } } } } ] }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q115668563" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z35974K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z28767", "Z28767K1": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z35974K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P277" }, { "Z1K1": "Z6092", "Z6092K1": "P571" } ] }, "Z28767K2": { "Z1K1": "Z6092", "Z6092K1": "P571" }, "Z28767K3": { "Z1K1": "Z18", "Z18K1": "Z35974K2" } } } ] } ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox for operating system, comp" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 3uutvmvvk3706qqd433armmxjznestc Z35976 0 84854 290470 279976 2026-07-12T08:14:39Z HenkvD 1290 Added Z37654 to the approved list of test cases 290470 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z35976" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z35976K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "entity" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z35976K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "language" } ] } } ], "Z8K2": "Z89", "Z8K3": [ "Z20", "Z37654" ], "Z8K4": [ "Z14", "Z35977" ], "Z8K5": "Z35976" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox for software" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } scl3oixzh7ec8olukpvzdlqd3lbvptu Z35977 0 84855 290468 288906 2026-07-12T08:12:42Z HenkvD 1290 new layout without caption, headers, with infobox section 290468 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z35977" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z35976", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z33328", "Z33328K1": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K2": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K3": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z37644", "Z37644K1": { "Z1K1": "Z18", "Z18K1": "Z35976K1" }, "Z37644K2": "default", "Z37644K3": { "Z1K1": "Z18", "Z18K1": "Z35976K2" } }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q9143" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z35976K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z6092", "Z6092K1": "P277" }, "Z21449K2": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z35976K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P277" }, { "Z1K1": "Z6092", "Z6092K1": "P577" } ] } }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z35976K2" } } } } ] }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q115668563" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z35976K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z28767", "Z28767K1": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z35976K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P277" }, { "Z1K1": "Z6092", "Z6092K1": "P577" } ] }, "Z28767K2": { "Z1K1": "Z6092", "Z6092K1": "P577" }, "Z28767K3": { "Z1K1": "Z18", "Z18K1": "Z35976K2" } } } ] } ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox for software, comp" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } ronh2usamkjqmzacfjfvgssfitht7el Z35994 0 84887 290471 288907 2026-07-12T08:21:39Z HenkvD 1290 new layout without caption, headers, with infobox section 290471 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z35994" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z35993", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z33328", "Z33328K1": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K2": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K3": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z37644", "Z37644K1": { "Z1K1": "Z18", "Z18K1": "Z35993K1" }, "Z37644K2": "default", "Z37644K3": { "Z1K1": "Z18", "Z18K1": "Z35993K2" } }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q2526255" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z35993K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z6092", "Z6092K1": "P57" }, "Z21449K2": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z35993K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P57" }, { "Z1K1": "Z6092", "Z6092K1": "P577" } ] } }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z35993K2" } } } } ] }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q1361758" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z35993K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z28767", "Z28767K1": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z35993K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P57" }, { "Z1K1": "Z6092", "Z6092K1": "P577" } ] }, "Z28767K2": { "Z1K1": "Z6092", "Z6092K1": "P577" }, "Z28767K3": { "Z1K1": "Z18", "Z18K1": "Z35993K2" } } } ] } ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox for film, comp" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } m8kw8eumfdrvwnulun1la8z7l9q3y0a Z36118 0 85147 290472 288908 2026-07-12T08:24:24Z HenkvD 1290 new layout without caption, headers, with infobox section 290472 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z36118" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z36117", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z33328", "Z33328K1": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K2": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K3": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z37644", "Z37644K1": { "Z1K1": "Z18", "Z18K1": "Z36117K1" }, "Z37644K2": "default", "Z37644K3": { "Z1K1": "Z18", "Z18K1": "Z36117K2" } }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q6256" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36117K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z6092", "Z6092K1": "P17" }, "Z21449K2": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z36117K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P17" }, { "Z1K1": "Z6092", "Z6092K1": "P571" } ] } }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36117K2" } } } } ] }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q3406134" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36117K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z28767", "Z28767K1": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z36117K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P17" }, { "Z1K1": "Z6092", "Z6092K1": "P571" } ] }, "Z28767K2": { "Z1K1": "Z6092", "Z6092K1": "P571" }, "Z28767K3": { "Z1K1": "Z18", "Z18K1": "Z36117K2" } } } ] } ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox for museum, comp" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } lkhm0l9kb927b1w4eodbbsmp5ac68q6 Z36138 0 85213 290473 288909 2026-07-12T08:27:48Z HenkvD 1290 new layout without caption, headers, with infobox section 290473 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z36138" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z36137", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z33328", "Z33328K1": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K2": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K3": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z37644", "Z37644K1": { "Z1K1": "Z18", "Z18K1": "Z36137K1" }, "Z37644K2": "default", "Z37644K3": { "Z1K1": "Z18", "Z18K1": "Z36137K2" } }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q6256" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36137K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z6092", "Z6092K1": "P495" }, "Z21449K2": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z36137K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P50" }, { "Z1K1": "Z6092", "Z6092K1": "P495" }, { "Z1K1": "Z6092", "Z6092K1": "P577" } ] } }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36137K2" } } } } ] }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q1361758" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36137K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z28767", "Z28767K1": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z36137K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P50" }, { "Z1K1": "Z6092", "Z6092K1": "P495" }, { "Z1K1": "Z6092", "Z6092K1": "P577" } ] }, "Z28767K2": { "Z1K1": "Z6092", "Z6092K1": "P577" }, "Z28767K3": { "Z1K1": "Z18", "Z18K1": "Z36137K2" } } } ] }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q482980" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36137K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z6092", "Z6092K1": "P50" }, "Z21449K2": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z36137K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P50" }, { "Z1K1": "Z6092", "Z6092K1": "P495" }, { "Z1K1": "Z6092", "Z6092K1": "P577" } ] } }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36137K2" } } } } ] } ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox for literary work, comp" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } hqxhmkltep6r5a7lugwyouv0103gkza Wikifunctions talk:Type proposals/Semantic unit 5 85515 290377 286701 2026-07-11T15:38:25Z Dv103 11127 /* Is it necessary to wait for these features? */ new section 290377 wikitext text/x-wiki == Other possible types and objects == The following are lists of other entities defined in Ninai for the handling of Constructors. They were first assembled with the outputs of various <code>git grep</code> commands on the [https://gitlab.com/mahir256/ninai/ Ninai repository], and notes are provided below each about the nature of that declaration. Equivalents of many of these will be necessary, but levels of requirement will be marked as the notes below are filled in. === Classes === * ninai/base/constructor.py: class Constructor(NamedTuple): ** The "semantic unit" type is intended to be equivalent to this class. * ninai/base/constructorzipper.py: class ArgumentLevel(NamedTuple): * ninai/base/constructorzipper.py: class ConstructorZipper(NamedTuple): ** [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructorzipper.py#L26 "Due to the Wikifunctions requirement that all functions be pure functions, (the ConstructorZipper) has been introduced in order to assist the manipulation of (semantic units)."] A similar class was introduced in Udiron for the manipulation of syntactic units. As a result, it should be possible ** ❓ to either return modified inputs cheaply, or [[:w:en:Zipper (data structure)|to create modified versions of persistent data structures cheaply]] and return those. <ref>Returning modified input is as cheap as every function call in Wikifunctions. If the modification is done through composition, using only builtin functions, it can become very cheap (in the order of some milliseconds). This is because in Wikifunctions, object are "immutable" in the sense that they are always copied when passed to functions, and the functions always return another copy. A function that returns a slightly modified version of the input is no different from a function that returns a completely different value. For the zipper, if necessary, a list could be used.</ref> * ninai/base/interfaces.py: class ArgumentFilter(Protocol): ** Functions satisfying this protocol should produce semantic units (representing different kinds of meaning) as output. * ninai/base/argumentfilters.py: class ArgumentFilterOptions(NamedTuple): ** Since performance considerations <small>e.g. "any argument after the fourth is kept on the stack instead of moved into a register"</small> and various coding style guides discourage having large numbers of arguments when defining a function, this class exists to hold those when defining a new semantic unit. [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/argumentfilters.py#L138 The members of that class are mostly assigned to other objects]. (See also the Wikifunctions requirement that all functions be pure functions.) As a result, it should be possible ** ✅ to cheaply handle large numbers of arguments provided to a function.<ref>Wikifunctions already has [[Z23619|functions with a high number of arguments]], and there are no particular issues with them.</ref> * ninai/base/rendererarguments.py: class RendererArguments(NamedTuple): ** The desideratum in the previous sub-bullet point also applies here, although this object is passed around and manipulated versions returned across ''lots'' of different rendering steps (both in the base system and in user-defined functions), so it's worth repeating that it should be possible ** ❓ to '''''cheaply''''' handle large numbers of arguments provided to a function.<ref>Again, in Wikifunctions there shouldn't be too much advantage to group many arguments in a single container. If the function is implemented as a composition, there are instead various optimizations that would make it more efficient to scorporate the arguments. Bad performances are still a huge problem for Wikifunctions, for other reasons.</ref> * ninai/base/interfaces.py: class ArgumentFilterBasis(Protocol): ** This represents one of the arguments of an ArgumentFilterOptions: the function that produces a given type of semantic unit may be wholly tailored to that unit or simply be some other base function (like the [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/argumentfilters.py#L23 "default"] and [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/argumentfilters.py#L153 "passthrough"] functions). It is actually a partial function application that is stored and called when a semantic unit is provided arguments. As a result, it should be possible ** ❓ to store partial function calls in a semantic unit type-function mapping and use those.<ref>[[Z8|Functions]] are objects like any other on Wikifunctions, and functions like {{Z|Z13036}} and {{Z|Z22074}} do exist. There is currently no standard way to store a partial function call, but with an appropriate convention it should be possible to do.</ref> * ninai/base/constructormainrenderer.py: class ConstructorMainRenderer(NamedTuple): * ninai/base/constructorrenderer.py: class ConstructorRenderer(NamedTuple): * ninai/base/coreargumentprocessor.py: class CoreArgumentProcessor(NamedTuple): * ninai/base/coreargumentsrenderer.py: class CoreArgumentsRenderer(NamedTuple): * ninai/base/scopeargumentsrenderer.py: class ScopeArgumentsRenderer(NamedTuple): ** These classes encapsulate each of the steps that are actually run by the base Ninai system during semantic unit rendering, as described in [https://journals.sagepub.com/doi/full/10.3233/SW-243564 §5.1 of my paper]). As a result, it should be possible ** ❌ (🛑?) to run the functions defined by the base system for the rendering process without (in the case where all functions involved are written in Python) having to deal with overhead of serializing/deserializing objects at function call boundaries.<ref>In Wikifunctions, functions are abstract concepts that only define the input and ouput parameters (and all the multilingual labels). Implementations are written in a specific language. One of the core principles of Wikifunctions is that, from the outside, the function should behave the same independently on which implementation is actually running. This means that a function can only pass parameters when calling another function with types than can be serialized and deserializes into Wikifunctions objects. This optimization is not impossible, but it should still be invisible to conform to the core Wikifunctions philosophy.</ref> * ninai/base/context.py: class ContextEntry(NamedTuple): * ninai/base/context.py: class Context(NamedTuple): ** [https://journals.sagepub.com/doi/full/10.3233/SW-243564 §4.1.2.: “Contexts” are lists representing where and how deep into a tree of Constructors a particular rendering step is occurring (effectively functioning like a stack trace).] As a result, it should be possible ** ✅ to expand and contract lists of tuples cheaply.<ref>{{Z|Z810}}, {{Z|Z811}}, {{Z|Z812}}, {{Z|Z12961}}, {{Z|Z12964}}, {{Z|Z12967}}</ref> * ninai/base/framing.py: class MethodKey(NamedTuple): * ninai/base/framing.py: class FramingKey(NamedTuple): ** These are used for indexing into Framings (see below), with the idea that the value returned from such an indexing is either a function or another Framing object entirely. * ninai/base/framing.py: class FramingDict(NamedTuple): * ninai/base/framing.py: class Framing(NamedTuple): ** [https://journals.sagepub.com/doi/full/10.3233/SW-243564 §4.1.2.: “Framings” hold information provided at the start of the Constructor rendering process to control the behavior of named individual Constructor types, named individual Constructors, individual languages, or some combination of all three.] ** The current implementation is largely inspired by the idea of [https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Selectors CSS selectors]; the same sorts of symbols that denote certain features to select for (e.g. ".", "#", ":") may be used in a Framing selector as well. ** To satisfy Python type checkers, and to mitigate the inability to distinguish between e.g. "dict[str]" and "dict[int]" using a Python isinstance() check, keys into Framings (such as MethodKey and FramingKey listed above, along with EntityKey and StrKey from Udiron) distinguish between the possible types of the objects returned. Indexing into a Framing with an EntityKey will yield one of [https://gitlab.com/mahir256/udiron/-/blob/main/udiron/base/functionconfig.py#L158 several possible types] that ''can'' be distinguished by an isinstance() check; likewise with a StrKey yielding a string. As a result, it should be possible ** ✅ to check the types of values returned from arbitrary mappings cheaply.<ref>{{Z|Z16829}} exists and is very efficient.</ref> * ninai/base/interfaces.py: class PreHook(Protocol): * ninai/base/interfaces.py: class Renderer(Protocol): * ninai/base/interfaces.py: class PostHook(Protocol): * ninai/base/interfaces.py: class ArgPreHook(Protocol): * ninai/base/interfaces.py: class ArgPostHook(Protocol): ** Functions satisfying these protocols perform each of the steps of the semantic unit rendering process (as described in [https://journals.sagepub.com/doi/full/10.3233/SW-243564 §5.1 of my paper]). As a result, it should be possible ** ✅ to verify that a function in a particular (language, semantic unit type)-to-function mapping has the appropriate function signature.<ref>It is possible to [[Z21177|retrieve the signature of a function]].</ref> * ninai/base/interfaces.py: class SyntacticRoleFunction(Protocol): * ninai/base/interfaces.py: class InitialCatenaProcessor(Protocol): * ninai/base/interfaces.py: class ThematicInflectionAddition(Protocol): * ninai/base/interfaces.py: class InflectionFunction(Protocol): * ninai/base/interfaces.py: class ScopeOutputProcessor(Protocol): * ninai/base/interfaces.py: class ThematicRelationlessProcessor(Protocol): ** The notes in the previous sub-bullet point apply here too; functions matching these protocols perform steps of the process of rendering arbitrary predicates. * ninai/constructors/contexts/refcontext.py: class RefContextRenderer(NamedTuple): ** The notes in the sub-bullet point two before this one apply here as well. Given that this is created by a specific semantic unit's main renderer, rather than it being part of the base system (it does not live in the 'ninai/base' directory, after all), it should be possible ** ❌ to allow renderers to instantiate encapsulations of the state needed for their execution. * ninai/base/interfaces.py: class NinaiError(Exception): ** While this is not currently used much yet, it is intended to be saveable/serializable in the event the rendering process needs to be suspended (see "PausedRendererSupply" below), so that the specific source and cause of an error may be introspected. As a result, it should be possible ** ✅ to define arbitrary types of errors/exceptions to be thrown by code implementations.<ref>[[Wikifunctions:How_to_create_implementations#Wikifunctions_error_handling|User-defined errors]] exist on Wikifunctions, and function calls can throw them.</ref> * ninai/base/interfaces.py: class RenderingPhase(IntEnum): * ninai/base/interfaces.py: class CoreArgumentProcessingPhase(IntEnum): ** These enumerations were created to keep track of the current state of a type of process (and to indicate from where a suspended version of that process should resume from; see "PausedRendererSupply" below). As a result, it should be possible ** ❌ to keep track of the particular level of a rendering process being executed and to save that tracking information. * ninai/graph/__init__.py: class FallbackRunner: ** This is instantiated whenever a direct sense link cannot be found and starts the process of running fallback steps specified per language (see "SenseFindingFallback" ff. below). * ninai/graph/server.py: class GraphServer: * ninai/graph/server.py: class ServerThread(threading.Thread): * ninai/graph/server.py: class GraphServerRepl(cmd.Cmd): ** These classes serve as scaffolding for threads that handle remote procedure calls for (NetworkX, but also graph-tool in the past) graph traversals from a starting item/lexeme/sense and return the results of those traversals (https://elemwala-backend.toolforge.org merely runs such threads). While the specific Python implementation need not exist in the same fashion as written, it should still be possible ** ❌ to traverse the full graph of connections between Wikidata entities having certain property links (for instance, to go from one sense to another three "synonym" statements away, or to go from one lexeme to another three "etymology" statements away); the current functions which simply run "haswbstatement:P5137" full-text searches are not sufficient.<ref>[[phab:T424328]]</ref> * ninai/base/interfaces.py: class CandidatePathNode(TypedDict): # due to XMLRPC serialization, must remain a TypedDict ** This holds two things: (1) a particular entity ID (item/lexeme/sense), and (2) a list of two-item tuples representing the links between the source entity of a traversal and that particular entity ID. If L789-S1 was three "translation" links away from L123-S1, and a traversal is run with L123-S1 as the starting point, then the CandidatePathNode for L789-S1 would have as its second element a list of three two-item tuples (for each of the three links). As a result, it should be possible ** ❌ to return not only entities linked to a given entity, but the (shortest) path between a source entity and that given entity, as part of a traversal. * ninai/base/interfaces.py: class SenseRefinement(Protocol): ** Functions satisfying this Protocol simply take a list of candidate senses (with paths from a source concept to those senses) and then return a version of that list according to some criterion (possibly based on configuration options provided). * ninai/graph/client.py: class CandidateProcessor: ** This class actually goes through a list of candidate senses for a given concept and iteratively yields lexemes based on those senses. (It is not used if there are no candidate senses for that concept and fallback functions must be run instead.) * ninai/base/pausedrenderersupply.py: class PausedRendererSupply(NamedTuple): ** This class was added to assist in something Maria Keet had asked for once: if a particular grammatical feature is not known at a point in the rendering process, and there isn't a clear way to proceed without knowing it, this should cause the rendering process to be ''paused'' and the user should be allowed to ''supply'' the missing information to the ''renderer'' and resume that process. As a result, it should be possible ** 🛑 to return some state representation, in the event of an error within rendering, that can be resumed with appropriate information provided.<ref>Not possible, since Wikifunctions does not support standard input/output or any user interaction after the function call. In these cases, the function should instead raise an error that describes the issue and prompts the user to integrate the information on Wikidata, if no fallback is possible</ref> * ninai/base/interfaces.py: class PreHookOperator(NamedTuple): * ninai/base/interfaces.py: class MainRendererOperator(NamedTuple): * ninai/base/interfaces.py: class PostHookOperator(NamedTuple): ** These exist merely to define a [[:w:en:Tagged union]] of possible types of functions usable by Ninai during certain rendering steps (see the note for PreHook, Renderer, PostHook above). Following from the previous bullet point, if a particular step is not defined for a language-semantic unit type combination, this should cause the rendering process to be ''paused'' and the user should be allowed to ''supply'' the missing function to the ''renderer'' and resume that process. * ninai/base/interfaces.py: class CatenaYieldingIterator(Protocol): ** Iterator classes matching this protocol, which otherwise could be reduced to individual functions, exist for a couple of reasons: **# Because Wikifunctions is based on principles exemplified by Haskell (which is not an implementation language, which has proper tail call optimization, but which does not have 'for' loops), and because Ninai/Udiron is written in Python (which is an implementation language, which does not optimize tail calls<ref>https://neopythonic.blogspot.com/2009/04/tail-recursion-elimination.html</ref>, but which has 'for' loops), such iterators return, in addition to the object they generate, a new iterator starting from the point at which that object was generated. **# Generators (and thus iterators) are not automatically serializable (indeed, even more comprehensive Python libraries than pickle cannot do so<ref>https://pypi.org/project/dill/</ref>), so these objects manually implement Python's iterator protocol. ** As a result of both of these things, it should be possible ** ❌ to serialize and deserialize the current state of a given sense finding process. * ninai/graph/client.py: class SenseFindingIterator: ** This represents the main starting point of the sense finding process, and is serializable for the reasons above. * ninai/base/interfaces.py: class SenseFindingFallback(CatenaYieldingIterator, Protocol): * ninai/graph/calque.py: class CalqueIterator: # finding equivalents for parts of a complex lexeme in a source language, and reassembling the equivalents in a target language * ninai/graph/calque.py: class VerboNominalSyntagmaCalque: # in the situation where a verb consists of e.g. (a noun) + "to do" * ninai/graph/calque.py: class EndocentricCompoundCalque: # in the situation where a noun consists of two other nouns, or an adjective attached to a noun * ninai/graph/calque.py: class DerivationCalque: # in the situation where a lexeme consists of another lexeme with a derivational affix * ninai/graph/fallbacks.py: class CatenaZipperListIterator: # returning choices from only a specific list of lexemes * ninai/graph/cognate.py: class CognateIterator: # returning lexemes in a target language that, via "derived from lexeme" statements, are etymologically related to a lexeme in a source language * ninai/graph/transcribe.py: class TranscribeIterator: # returning pseudo-lexemes that consist of another lexeme in a source language with its (phonetic/orthographic) representation converted to a target language * ninai/graph/__init__.py: class CatenaFromItemIdIterator: # simply produces a pseudo-lexeme whose lemma is the item label ** In addition to the notes about "CatenaYieldingIterator" above, these iterators perform fallback steps of different kinds, mainly involving finding parts/equivalents of other lexemes outside the target language. * ninai/base/interfaces.py: class Constructorify(Protocol): # not used yet, but will be reintroduced soon * ninai/base/interfaces.py: class Transcribe(Protocol): # actually performs the conversion of a (phonetic/orthographic) representation into a target language * ninai/base/interfaces.py: class BinominalCompoundCalque(Protocol): # actually reassembles the equivalents of two nouns (or an adjective and a noun) * ninai/base/interfaces.py: class DerivationalCalqueFunction(Protocol): # actually reassembles the equivalents of a lexeme and an attached affix ** Functions satisfying these protocols perform the steps in the target language of assembling a candidate word or phrase from any found equivalents. * ninai/renderers/mul.py: class FinalPunctuationFunction(Protocol): ** This simply represents a function that adds some punctuation to a phrase/clause. === Type aliases === (May be initially incomplete, since not all type aliases may have been marked with the "TypeAlias" type annotation. * ninai/base/constructorrenderer.py:RenderingPhaseEncapsulator: "TypeAlias" = Union[ConstructorMainRenderer, CoreArgumentsRenderer, ScopeArgumentsRenderer] ** This is the type of the member of a ConstructorRenderer class instance that holds a paused execution state of a rendering phase (see 'PausedRendererSupply' above). * ninai/base/interfaces.py:ChildIdentifiersMapping: "TypeAlias" = Dict[str, Tuple[Tuple[str, ...], str]] ** This is the type of the 'child identifiers' mapping listed in the box entitled "Excluded from structure above per comments below" on the proposal page. * ninai/base/interfaces.py:CoreArguments: "TypeAlias" = Dict[str, "Constructor"] ** This is the type of the '''[c]ore arguments''' mapping on the proposal page. * ninai/base/interfaces.py:ScopeArguments: "TypeAlias" = List["Constructor"] ** This is the type of the '''[s]cope arguments''' mapping on the proposal page. * ninai/base/interfaces.py:ThematicRelationSpec: "TypeAlias" = Dict[str, Statement] ** Essentially this holds the {{P|9971}} statements on a verb sense as values, with the item IDs of the semantic arguments themselves as keys. * ninai/base/interfaces.py:NonConstructorTypeArguments: "TypeAlias" = Union[ ** The members of this union type are [[Z6001]], [[Z6005]], [[Z6004]], [[Z6006]], FunctionConfig and "ItemList" (see [[Wikifunctions talk:Type proposals/Syntactic unit]] for more on those), and "Framing", "NinaiError", and "PausedRendererSupply" (see above). * ninai/base/interfaces.py:ConstructorArgument: "TypeAlias" = Union["Constructor", NonConstructorTypeArguments] ** A distinction is made in semantic unit processing between arguments that are themselves semantic units and those which are not (as noted by the existence of mappings for scope arguments and "other" arguments). * ninai/base/interfaces.py:ConstructorArguments: "TypeAlias" = Sequence[ConstructorArgument] ** This is a list of objects each of which is one of the types listed in the above bullet point. * ninai/graph/server.py:EntityGraph: TypeAlias = "nx.MultiDiGraph[str]" ** This is the type of the actual sense graph that is built up as more concepts are requested during the rendering process. Individual nodes of the graph do not get refreshed on each request; usually a connected component is deleted only after a certain configurable amount of time has passed. === Other objects === Some rough equivalents for the types named in the annotations below: * Dict = [[Z883]] * Set = (no equivalent, maybe [[Z883]] with [[Z1]] keys and [[Z41]] as the only value?) * List = [[Z881]] * Language = [[Z60]] (May be initially incomplete, since this is basically a list of entities not falling into any of the above types.) * ninai/base/constructorinterfaces.py:__constructor_argument_filters__: Dict[str, "ArgumentFilter"] = {} ** This is the "[m]apping from '''Constructor types''' to '''argument filter functions'''" listed on the proposal page. * ninai/base/constructorinterfaces.py:__constructor_core_arguments__: Dict[str, List[str]] = {} ** This is the "[m]apping from '''Constructor types''' to '''lists of names''' for core arguments" listed on the proposal page. * ninai/base/constructorinterfaces.py:__constructor_type_hierarchy__: Dict[str, List[str]] = {} ** This is the "[m]apping from '''Constructor types''' to any parent '''Constructor types'''" listed on the proposal page. * ninai/base/constructorinterfaces.py:__constructor_docstrings__: Dict[str, str] = {} ** (Ideally this mapping will not be necessary, since there should be ways of adding extended structured documentation to functions.) * ninai/base/constructorinterfaces.py:__config_insulators__: Set[str] = set() * ninai/base/constructorinterfaces.py:__config_setters__: Set[str] = set() * ninai/base/constructorinterfaces.py:__unfiltered_framing_constructors__: Set[str] = set() ** These are lists of semantic unit types that have particular behaviors during the execution of certain rendering functions. Ideally anyone should be able to define and fill in more of these mappings and refer to them during various rendering function steps. * ninai/graph/__init__.py:__fallback_chains__: DefaultDict[Language, DefaultDict[str, List[str]]] = defaultdict(lambda: defaultdict(list)) ** This maps a language and a sense type (currently "substantive", "predicate", or "demonym" depending on the properties used when traversing the sense network) to the sorts of fallback functions that should be tried if a lexeme with that sense type is not available for a concept. For instance, French may be fine transcribing other languages' lexemes when finding a substantive (so that 'transcribe' is in French's "substantive" fallback chain), but it may not be fine doing so for predicates (so that 'transcribe' wouldn't be in French's "predicate" fallback chain). * ninai/graph/__init__.py:__fallback_chain_types__: Dict[str, Type[i.SenseFindingFallback]] = {...} ** This is a mapping from string names of fallback functions to the fallback functions themselves. (It is these string names that are stored in __fallback_chains__.) * ninai/graph/client.py:__language_range__: Dict[Language, Tuple[tfsli.Qid, ...]] = {} ** This is a list of languages whose lexemes, prior to any fallback steps, should be considered when selecting a sense to use from a list of candidate senses. By default the value for any arbitrary language is its fallback chain used in other circumstances (like choosing rendering functions: see [[Wikifunctions talk:Type proposals/Syntactic unit]] for more on __language_fallbacks__), but of course a language may decide that it can use lexemes from another language without also using functions defined for that language. * ninai/renderers/__mappings__.py:__renderers__: DefaultDict[str, Dict["Language", "Renderer"]] = defaultdict(dict) ** This is the "[m]apping from '''Constructor type-language pairs''' to '''rendering functions'''" listed on the proposal page. * ninai/renderers/__mappings__.py:__arg_pre_hooks__: DefaultDict[str, DefaultDict[str, Dict["Language", "ArgPreHook"]]] = defaultdict(lambda: defaultdict(dict)) * ninai/renderers/__mappings__.py:__arg_post_hooks__: DefaultDict[str, DefaultDict[str, Dict["Language", "ArgPostHook"]]] = defaultdict(lambda: defaultdict(dict)) * ninai/renderers/__mappings__.py:__pre_hooks__: DefaultDict[str, Dict["Language", "PreHook"]] = defaultdict(dict) * ninai/renderers/__mappings__.py:__post_hooks__: DefaultDict[str, Dict["Language", "PostHook"]] = defaultdict(dict) ** These are the "few more global mappings that could be listed here" noted on the proposal page. (See above sections for what ArgPreHook, ArgPostHook, PreHook, and PostHook do.) * ninai/renderers/__mappings__.py:__sense_refines__: Dict["Language", "SenseRefinement"] = {} ** This maps languages to functions that take lists of candidate senses and filter them. * ninai/renderers/__mappings__.py:__syntactic_role_functions__: DefaultDict[str, Dict["Language", "SyntacticRoleFunction"]] = defaultdict(dict) * ninai/renderers/__mappings__.py:__initial_catena_processors__: Dict["Language", "InitialCatenaProcessor"] = {} * ninai/renderers/__mappings__.py:__thematic_inflection_additions__: Dict["Language", "ThematicInflectionAddition"] = {} * ninai/renderers/__mappings__.py:__inflection_functions__: Dict["Language", "InflectionFunction"] = {} * ninai/renderers/__mappings__.py:__scope_output_processors__: Dict["Language", "ScopeOutputProcessor"] = {} * ninai/renderers/__mappings__.py:__thematic_relationless_processors__: Dict["Language", "ThematicRelationlessProcessor"] = {} ** These mappings are used by the renderer of the {{Q|179080}} semantic unit type for various steps. * ninai/renderers/__mappings__.py:__constructorifies__: Dict["Language", "Constructorify"] = {} * ninai/renderers/__mappings__.py:__transcribes__: Dict["Language", "Transcribe"] = {} * ninai/renderers/__mappings__.py:__binominal_calques__: Dict["Language", "BinominalCompoundCalque"] = {} * ninai/renderers/__mappings__.py:__derivation_calques__: Dict["Language", "DerivationalCalqueFunction"] = {} ** These hold mappings from languages to individual fallback functions. * ninai/renderers/mul.py:__full_stop_overrides__: Dict[Language, FinalPunctuationFunction] = {} ** This holds mappings from languages to functions that add punctuation in them. <references/> == Missing Wikifunctions features for this type == @[[User:Mahir256|Mahir256]] What are the currently missing features of Wikifunctions that are necessary to actually implement this type? Which of these are fundamental, and which are just useful to port the code directly from Ninai? It could be useful to have them all listed in one place. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 17:36, 16 June 2026 (UTC) *{{re|Dv103|Denny|DVrandecic (WMF)}} I have started assembling those above, where explanations are given for different classes' existence, and particular desiderata for implementation are given with a ❌ (any of which you're welcome to change to a ✅ if there is evidence that the thing described is possible). I leave it to you to decide which are 'fundamental' versus 'just useful'. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 22:58, 22 June 2026 (UTC) *:A thing about sets: what is the issue in using {{Z|Z881}} to encode them? Wikifunctions already contains lists that are treated as sets. We already have functions to treat typed list as if they were sets (i.e., ignoring the order). Also consider that, under the hood, {{Z|Z883}} is just a wrapper for a {{Z|Z881}} of {{Z|Z882}}. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 07:54, 23 June 2026 (UTC) *::{{re|Dv103}} That definition of Z883 sounds like lots of operations involving maps would be inefficient; maps are not generally ordered except as an implementation detail, and if the typed lists in question ''are'' ordered then operations like lookup, insertion, and comparison take longer on average. Recasting a list so that operations independent of order may be performed should not be the responsibility of an ''individual function'' if the ''type'' itself can be kept inherently unordered in the first place. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 22:18, 26 June 2026 (UTC) *:::We should at first separate two concepts: inside a code implementation, the implementation is free to use whatever type is available in the given programming language for internal calculations (and in the case of Python, all the standard library is also available), so in this case the problem doesn't present. For communication between Wikifunctions functions, object are instead passed around through [[Wikifunctions:Function model|JSON Zobject representations]]. This means that it is not possible to actually pass around actual "maps" or "sets" in your sense, since the JSON object representation does not support them; the best we can do with maps is to encode them as a list of pairs, since lists are instead supported in JSON. Functions like {{Z|Z12696}}, {{Z|Z810}}, {{Z|Z12856}}, that allow to handle lists as if they were sets, already exist. *:::Wikifunctions is very inefficient. Here a functions that requires less that 50 ms are very efficient (and only builtin implementations can achieve this), and typical functions require hundreds of milliseconds to execute. Much of this execution time is structural, due to how function execution works. What you are asking is nanoseconds optimizations, which are completely irrelevant in the context of Wikifunctions. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 07:28, 27 June 2026 (UTC) == Some questions about the desiderata == @[[User:Mahir256|Mahir256]] I am trying to categorize all the desiderata (I also added two symbols: ❓ means that the possibility is doubt, and 🛑 means that the features is not necessary/should not be implemented). I have a copule of questions: # What does "expand and contract lists of tuples" mean? What is an expansion/contraction? # In the expression "to allow renderers to instantiate encapsulations of the state needed for their execution", what sort of encapsulation? For what purpose? # For the "CatenaYieldingIterator" class: is it actually necessary to use yields/iterators? These constructions are very idiomatic to Python, and do not fit well with the logic that usually Wikifunctions implementation follow. Is it possible to rewrite the code using a more straightforward if-else tree? [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 15:29, 23 June 2026 (UTC) :{{re|Dv103}} :# Push/pop, append/pop, push_back/pop_back, you name it: simply adding to and removing from the end of the list of tuples. :# In a class like [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructormainrenderer.py#L23 ConstructorMainRenderer], there are pieces of information that are retained across [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructorrenderer.py#L252 calls to its methods] (these pieces of information being, according to that link, the actual semantic unit being rendered, the arguments to the main rendering function, the choice of rendering function, the output from that rendering function, and--if execution should stop for some reason--the particular reason that caused execution to stop). Passing these around as arguments everywhere can cause code to become unwieldy, no matter how many tools you have in place to check that they're all provided in the right place. :# If-else is meant as a [[:w:en:Conditional (computer programming)|conditional statement]]; for loops (and indeed tail recursion) are meant for [[:w:en:Loop_(statement)|iteration]]. How should looking through a list of senses for an equivalent be done if the system cannot always determine what the initial list is or what processing steps are to be performed on it? The first of the reasons given for CatenaYieldingIterator's existence is the more important of the two. To my knowledge, iteration constructs akin to for loops or even Common Lisp's loop macro don't exist in composition implementations, and since code implementations can't yet call other functions with code implementations, simply moving any iterative construct into code won't work either. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 22:11, 26 June 2026 (UTC) ::# Ok thanks. ::# What would it be used for? If I understand correctly, in Ninai, the specific example you pointed me is to allow to resume the execution of the rederer after pausing. In Wikifunctions, functions cannot be paused and then resumed. ::# Wikifunctions compositions support recursion, meaning that they are Turing-complete, and thus it can technically execute whatever operation is currently handled in Python through iterators. My actual question is: are iterators so fundamental that rewriting the code without their use would be so inelegant and convoluted, or is it possible to rewrite the code in another fashon in a reasonable manner? No matter what, the implementation of the iterator logic in Wikifunctions, albeit technically possible (due to the Turing-completeness and the presence of types like {{Z|Z881}} and {{Z|Z883}} that could in theory be used to encode arbitrary data) would always be conterintuitive and very inelegant. ::[[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 12:00, 27 June 2026 (UTC) == Is it necessary to wait for these features? == @[[User:Mahir256|Mahir256]] @[[User:DVrandecic (WMF)|DVrandecic (WMF)]] @[[User:Denny|Denny]] Is it necessary to wait for the implementation of these features before creating the Semantic unit and Syntactic unit types? I see that these are not intrinsically fundamental for the implementation and the use of these types, but they are only necessary to import all the Ninai (and Udiron) code directly in Wikifunctions. I am skeptical that the direct import of a project written in Python, using Python idiomatic features like iterators, is desirable in the first place, favoring instead a translation of the code in order to adhere to the logical structures more idiomatic to Wikifunctions. My main concern is that some of these features are very substantial (and currently not prioritized), and it would likely take years to implement all of them (assuming that they are all implemented; again, the iterator logic does not fit well with the Wikifunctions functional paradigm). [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 15:38, 11 July 2026 (UTC) 2xvi6xgwf40uql3hw2elaxcpexb9plw 290378 290377 2026-07-11T15:48:11Z Denny 81 /* Is it necessary to wait for these features? */ Reply 290378 wikitext text/x-wiki == Other possible types and objects == The following are lists of other entities defined in Ninai for the handling of Constructors. They were first assembled with the outputs of various <code>git grep</code> commands on the [https://gitlab.com/mahir256/ninai/ Ninai repository], and notes are provided below each about the nature of that declaration. Equivalents of many of these will be necessary, but levels of requirement will be marked as the notes below are filled in. === Classes === * ninai/base/constructor.py: class Constructor(NamedTuple): ** The "semantic unit" type is intended to be equivalent to this class. * ninai/base/constructorzipper.py: class ArgumentLevel(NamedTuple): * ninai/base/constructorzipper.py: class ConstructorZipper(NamedTuple): ** [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructorzipper.py#L26 "Due to the Wikifunctions requirement that all functions be pure functions, (the ConstructorZipper) has been introduced in order to assist the manipulation of (semantic units)."] A similar class was introduced in Udiron for the manipulation of syntactic units. As a result, it should be possible ** ❓ to either return modified inputs cheaply, or [[:w:en:Zipper (data structure)|to create modified versions of persistent data structures cheaply]] and return those. <ref>Returning modified input is as cheap as every function call in Wikifunctions. If the modification is done through composition, using only builtin functions, it can become very cheap (in the order of some milliseconds). This is because in Wikifunctions, object are "immutable" in the sense that they are always copied when passed to functions, and the functions always return another copy. A function that returns a slightly modified version of the input is no different from a function that returns a completely different value. For the zipper, if necessary, a list could be used.</ref> * ninai/base/interfaces.py: class ArgumentFilter(Protocol): ** Functions satisfying this protocol should produce semantic units (representing different kinds of meaning) as output. * ninai/base/argumentfilters.py: class ArgumentFilterOptions(NamedTuple): ** Since performance considerations <small>e.g. "any argument after the fourth is kept on the stack instead of moved into a register"</small> and various coding style guides discourage having large numbers of arguments when defining a function, this class exists to hold those when defining a new semantic unit. [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/argumentfilters.py#L138 The members of that class are mostly assigned to other objects]. (See also the Wikifunctions requirement that all functions be pure functions.) As a result, it should be possible ** ✅ to cheaply handle large numbers of arguments provided to a function.<ref>Wikifunctions already has [[Z23619|functions with a high number of arguments]], and there are no particular issues with them.</ref> * ninai/base/rendererarguments.py: class RendererArguments(NamedTuple): ** The desideratum in the previous sub-bullet point also applies here, although this object is passed around and manipulated versions returned across ''lots'' of different rendering steps (both in the base system and in user-defined functions), so it's worth repeating that it should be possible ** ❓ to '''''cheaply''''' handle large numbers of arguments provided to a function.<ref>Again, in Wikifunctions there shouldn't be too much advantage to group many arguments in a single container. If the function is implemented as a composition, there are instead various optimizations that would make it more efficient to scorporate the arguments. Bad performances are still a huge problem for Wikifunctions, for other reasons.</ref> * ninai/base/interfaces.py: class ArgumentFilterBasis(Protocol): ** This represents one of the arguments of an ArgumentFilterOptions: the function that produces a given type of semantic unit may be wholly tailored to that unit or simply be some other base function (like the [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/argumentfilters.py#L23 "default"] and [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/argumentfilters.py#L153 "passthrough"] functions). It is actually a partial function application that is stored and called when a semantic unit is provided arguments. As a result, it should be possible ** ❓ to store partial function calls in a semantic unit type-function mapping and use those.<ref>[[Z8|Functions]] are objects like any other on Wikifunctions, and functions like {{Z|Z13036}} and {{Z|Z22074}} do exist. There is currently no standard way to store a partial function call, but with an appropriate convention it should be possible to do.</ref> * ninai/base/constructormainrenderer.py: class ConstructorMainRenderer(NamedTuple): * ninai/base/constructorrenderer.py: class ConstructorRenderer(NamedTuple): * ninai/base/coreargumentprocessor.py: class CoreArgumentProcessor(NamedTuple): * ninai/base/coreargumentsrenderer.py: class CoreArgumentsRenderer(NamedTuple): * ninai/base/scopeargumentsrenderer.py: class ScopeArgumentsRenderer(NamedTuple): ** These classes encapsulate each of the steps that are actually run by the base Ninai system during semantic unit rendering, as described in [https://journals.sagepub.com/doi/full/10.3233/SW-243564 §5.1 of my paper]). As a result, it should be possible ** ❌ (🛑?) to run the functions defined by the base system for the rendering process without (in the case where all functions involved are written in Python) having to deal with overhead of serializing/deserializing objects at function call boundaries.<ref>In Wikifunctions, functions are abstract concepts that only define the input and ouput parameters (and all the multilingual labels). Implementations are written in a specific language. One of the core principles of Wikifunctions is that, from the outside, the function should behave the same independently on which implementation is actually running. This means that a function can only pass parameters when calling another function with types than can be serialized and deserializes into Wikifunctions objects. This optimization is not impossible, but it should still be invisible to conform to the core Wikifunctions philosophy.</ref> * ninai/base/context.py: class ContextEntry(NamedTuple): * ninai/base/context.py: class Context(NamedTuple): ** [https://journals.sagepub.com/doi/full/10.3233/SW-243564 §4.1.2.: “Contexts” are lists representing where and how deep into a tree of Constructors a particular rendering step is occurring (effectively functioning like a stack trace).] As a result, it should be possible ** ✅ to expand and contract lists of tuples cheaply.<ref>{{Z|Z810}}, {{Z|Z811}}, {{Z|Z812}}, {{Z|Z12961}}, {{Z|Z12964}}, {{Z|Z12967}}</ref> * ninai/base/framing.py: class MethodKey(NamedTuple): * ninai/base/framing.py: class FramingKey(NamedTuple): ** These are used for indexing into Framings (see below), with the idea that the value returned from such an indexing is either a function or another Framing object entirely. * ninai/base/framing.py: class FramingDict(NamedTuple): * ninai/base/framing.py: class Framing(NamedTuple): ** [https://journals.sagepub.com/doi/full/10.3233/SW-243564 §4.1.2.: “Framings” hold information provided at the start of the Constructor rendering process to control the behavior of named individual Constructor types, named individual Constructors, individual languages, or some combination of all three.] ** The current implementation is largely inspired by the idea of [https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Selectors CSS selectors]; the same sorts of symbols that denote certain features to select for (e.g. ".", "#", ":") may be used in a Framing selector as well. ** To satisfy Python type checkers, and to mitigate the inability to distinguish between e.g. "dict[str]" and "dict[int]" using a Python isinstance() check, keys into Framings (such as MethodKey and FramingKey listed above, along with EntityKey and StrKey from Udiron) distinguish between the possible types of the objects returned. Indexing into a Framing with an EntityKey will yield one of [https://gitlab.com/mahir256/udiron/-/blob/main/udiron/base/functionconfig.py#L158 several possible types] that ''can'' be distinguished by an isinstance() check; likewise with a StrKey yielding a string. As a result, it should be possible ** ✅ to check the types of values returned from arbitrary mappings cheaply.<ref>{{Z|Z16829}} exists and is very efficient.</ref> * ninai/base/interfaces.py: class PreHook(Protocol): * ninai/base/interfaces.py: class Renderer(Protocol): * ninai/base/interfaces.py: class PostHook(Protocol): * ninai/base/interfaces.py: class ArgPreHook(Protocol): * ninai/base/interfaces.py: class ArgPostHook(Protocol): ** Functions satisfying these protocols perform each of the steps of the semantic unit rendering process (as described in [https://journals.sagepub.com/doi/full/10.3233/SW-243564 §5.1 of my paper]). As a result, it should be possible ** ✅ to verify that a function in a particular (language, semantic unit type)-to-function mapping has the appropriate function signature.<ref>It is possible to [[Z21177|retrieve the signature of a function]].</ref> * ninai/base/interfaces.py: class SyntacticRoleFunction(Protocol): * ninai/base/interfaces.py: class InitialCatenaProcessor(Protocol): * ninai/base/interfaces.py: class ThematicInflectionAddition(Protocol): * ninai/base/interfaces.py: class InflectionFunction(Protocol): * ninai/base/interfaces.py: class ScopeOutputProcessor(Protocol): * ninai/base/interfaces.py: class ThematicRelationlessProcessor(Protocol): ** The notes in the previous sub-bullet point apply here too; functions matching these protocols perform steps of the process of rendering arbitrary predicates. * ninai/constructors/contexts/refcontext.py: class RefContextRenderer(NamedTuple): ** The notes in the sub-bullet point two before this one apply here as well. Given that this is created by a specific semantic unit's main renderer, rather than it being part of the base system (it does not live in the 'ninai/base' directory, after all), it should be possible ** ❌ to allow renderers to instantiate encapsulations of the state needed for their execution. * ninai/base/interfaces.py: class NinaiError(Exception): ** While this is not currently used much yet, it is intended to be saveable/serializable in the event the rendering process needs to be suspended (see "PausedRendererSupply" below), so that the specific source and cause of an error may be introspected. As a result, it should be possible ** ✅ to define arbitrary types of errors/exceptions to be thrown by code implementations.<ref>[[Wikifunctions:How_to_create_implementations#Wikifunctions_error_handling|User-defined errors]] exist on Wikifunctions, and function calls can throw them.</ref> * ninai/base/interfaces.py: class RenderingPhase(IntEnum): * ninai/base/interfaces.py: class CoreArgumentProcessingPhase(IntEnum): ** These enumerations were created to keep track of the current state of a type of process (and to indicate from where a suspended version of that process should resume from; see "PausedRendererSupply" below). As a result, it should be possible ** ❌ to keep track of the particular level of a rendering process being executed and to save that tracking information. * ninai/graph/__init__.py: class FallbackRunner: ** This is instantiated whenever a direct sense link cannot be found and starts the process of running fallback steps specified per language (see "SenseFindingFallback" ff. below). * ninai/graph/server.py: class GraphServer: * ninai/graph/server.py: class ServerThread(threading.Thread): * ninai/graph/server.py: class GraphServerRepl(cmd.Cmd): ** These classes serve as scaffolding for threads that handle remote procedure calls for (NetworkX, but also graph-tool in the past) graph traversals from a starting item/lexeme/sense and return the results of those traversals (https://elemwala-backend.toolforge.org merely runs such threads). While the specific Python implementation need not exist in the same fashion as written, it should still be possible ** ❌ to traverse the full graph of connections between Wikidata entities having certain property links (for instance, to go from one sense to another three "synonym" statements away, or to go from one lexeme to another three "etymology" statements away); the current functions which simply run "haswbstatement:P5137" full-text searches are not sufficient.<ref>[[phab:T424328]]</ref> * ninai/base/interfaces.py: class CandidatePathNode(TypedDict): # due to XMLRPC serialization, must remain a TypedDict ** This holds two things: (1) a particular entity ID (item/lexeme/sense), and (2) a list of two-item tuples representing the links between the source entity of a traversal and that particular entity ID. If L789-S1 was three "translation" links away from L123-S1, and a traversal is run with L123-S1 as the starting point, then the CandidatePathNode for L789-S1 would have as its second element a list of three two-item tuples (for each of the three links). As a result, it should be possible ** ❌ to return not only entities linked to a given entity, but the (shortest) path between a source entity and that given entity, as part of a traversal. * ninai/base/interfaces.py: class SenseRefinement(Protocol): ** Functions satisfying this Protocol simply take a list of candidate senses (with paths from a source concept to those senses) and then return a version of that list according to some criterion (possibly based on configuration options provided). * ninai/graph/client.py: class CandidateProcessor: ** This class actually goes through a list of candidate senses for a given concept and iteratively yields lexemes based on those senses. (It is not used if there are no candidate senses for that concept and fallback functions must be run instead.) * ninai/base/pausedrenderersupply.py: class PausedRendererSupply(NamedTuple): ** This class was added to assist in something Maria Keet had asked for once: if a particular grammatical feature is not known at a point in the rendering process, and there isn't a clear way to proceed without knowing it, this should cause the rendering process to be ''paused'' and the user should be allowed to ''supply'' the missing information to the ''renderer'' and resume that process. As a result, it should be possible ** 🛑 to return some state representation, in the event of an error within rendering, that can be resumed with appropriate information provided.<ref>Not possible, since Wikifunctions does not support standard input/output or any user interaction after the function call. In these cases, the function should instead raise an error that describes the issue and prompts the user to integrate the information on Wikidata, if no fallback is possible</ref> * ninai/base/interfaces.py: class PreHookOperator(NamedTuple): * ninai/base/interfaces.py: class MainRendererOperator(NamedTuple): * ninai/base/interfaces.py: class PostHookOperator(NamedTuple): ** These exist merely to define a [[:w:en:Tagged union]] of possible types of functions usable by Ninai during certain rendering steps (see the note for PreHook, Renderer, PostHook above). Following from the previous bullet point, if a particular step is not defined for a language-semantic unit type combination, this should cause the rendering process to be ''paused'' and the user should be allowed to ''supply'' the missing function to the ''renderer'' and resume that process. * ninai/base/interfaces.py: class CatenaYieldingIterator(Protocol): ** Iterator classes matching this protocol, which otherwise could be reduced to individual functions, exist for a couple of reasons: **# Because Wikifunctions is based on principles exemplified by Haskell (which is not an implementation language, which has proper tail call optimization, but which does not have 'for' loops), and because Ninai/Udiron is written in Python (which is an implementation language, which does not optimize tail calls<ref>https://neopythonic.blogspot.com/2009/04/tail-recursion-elimination.html</ref>, but which has 'for' loops), such iterators return, in addition to the object they generate, a new iterator starting from the point at which that object was generated. **# Generators (and thus iterators) are not automatically serializable (indeed, even more comprehensive Python libraries than pickle cannot do so<ref>https://pypi.org/project/dill/</ref>), so these objects manually implement Python's iterator protocol. ** As a result of both of these things, it should be possible ** ❌ to serialize and deserialize the current state of a given sense finding process. * ninai/graph/client.py: class SenseFindingIterator: ** This represents the main starting point of the sense finding process, and is serializable for the reasons above. * ninai/base/interfaces.py: class SenseFindingFallback(CatenaYieldingIterator, Protocol): * ninai/graph/calque.py: class CalqueIterator: # finding equivalents for parts of a complex lexeme in a source language, and reassembling the equivalents in a target language * ninai/graph/calque.py: class VerboNominalSyntagmaCalque: # in the situation where a verb consists of e.g. (a noun) + "to do" * ninai/graph/calque.py: class EndocentricCompoundCalque: # in the situation where a noun consists of two other nouns, or an adjective attached to a noun * ninai/graph/calque.py: class DerivationCalque: # in the situation where a lexeme consists of another lexeme with a derivational affix * ninai/graph/fallbacks.py: class CatenaZipperListIterator: # returning choices from only a specific list of lexemes * ninai/graph/cognate.py: class CognateIterator: # returning lexemes in a target language that, via "derived from lexeme" statements, are etymologically related to a lexeme in a source language * ninai/graph/transcribe.py: class TranscribeIterator: # returning pseudo-lexemes that consist of another lexeme in a source language with its (phonetic/orthographic) representation converted to a target language * ninai/graph/__init__.py: class CatenaFromItemIdIterator: # simply produces a pseudo-lexeme whose lemma is the item label ** In addition to the notes about "CatenaYieldingIterator" above, these iterators perform fallback steps of different kinds, mainly involving finding parts/equivalents of other lexemes outside the target language. * ninai/base/interfaces.py: class Constructorify(Protocol): # not used yet, but will be reintroduced soon * ninai/base/interfaces.py: class Transcribe(Protocol): # actually performs the conversion of a (phonetic/orthographic) representation into a target language * ninai/base/interfaces.py: class BinominalCompoundCalque(Protocol): # actually reassembles the equivalents of two nouns (or an adjective and a noun) * ninai/base/interfaces.py: class DerivationalCalqueFunction(Protocol): # actually reassembles the equivalents of a lexeme and an attached affix ** Functions satisfying these protocols perform the steps in the target language of assembling a candidate word or phrase from any found equivalents. * ninai/renderers/mul.py: class FinalPunctuationFunction(Protocol): ** This simply represents a function that adds some punctuation to a phrase/clause. === Type aliases === (May be initially incomplete, since not all type aliases may have been marked with the "TypeAlias" type annotation. * ninai/base/constructorrenderer.py:RenderingPhaseEncapsulator: "TypeAlias" = Union[ConstructorMainRenderer, CoreArgumentsRenderer, ScopeArgumentsRenderer] ** This is the type of the member of a ConstructorRenderer class instance that holds a paused execution state of a rendering phase (see 'PausedRendererSupply' above). * ninai/base/interfaces.py:ChildIdentifiersMapping: "TypeAlias" = Dict[str, Tuple[Tuple[str, ...], str]] ** This is the type of the 'child identifiers' mapping listed in the box entitled "Excluded from structure above per comments below" on the proposal page. * ninai/base/interfaces.py:CoreArguments: "TypeAlias" = Dict[str, "Constructor"] ** This is the type of the '''[c]ore arguments''' mapping on the proposal page. * ninai/base/interfaces.py:ScopeArguments: "TypeAlias" = List["Constructor"] ** This is the type of the '''[s]cope arguments''' mapping on the proposal page. * ninai/base/interfaces.py:ThematicRelationSpec: "TypeAlias" = Dict[str, Statement] ** Essentially this holds the {{P|9971}} statements on a verb sense as values, with the item IDs of the semantic arguments themselves as keys. * ninai/base/interfaces.py:NonConstructorTypeArguments: "TypeAlias" = Union[ ** The members of this union type are [[Z6001]], [[Z6005]], [[Z6004]], [[Z6006]], FunctionConfig and "ItemList" (see [[Wikifunctions talk:Type proposals/Syntactic unit]] for more on those), and "Framing", "NinaiError", and "PausedRendererSupply" (see above). * ninai/base/interfaces.py:ConstructorArgument: "TypeAlias" = Union["Constructor", NonConstructorTypeArguments] ** A distinction is made in semantic unit processing between arguments that are themselves semantic units and those which are not (as noted by the existence of mappings for scope arguments and "other" arguments). * ninai/base/interfaces.py:ConstructorArguments: "TypeAlias" = Sequence[ConstructorArgument] ** This is a list of objects each of which is one of the types listed in the above bullet point. * ninai/graph/server.py:EntityGraph: TypeAlias = "nx.MultiDiGraph[str]" ** This is the type of the actual sense graph that is built up as more concepts are requested during the rendering process. Individual nodes of the graph do not get refreshed on each request; usually a connected component is deleted only after a certain configurable amount of time has passed. === Other objects === Some rough equivalents for the types named in the annotations below: * Dict = [[Z883]] * Set = (no equivalent, maybe [[Z883]] with [[Z1]] keys and [[Z41]] as the only value?) * List = [[Z881]] * Language = [[Z60]] (May be initially incomplete, since this is basically a list of entities not falling into any of the above types.) * ninai/base/constructorinterfaces.py:__constructor_argument_filters__: Dict[str, "ArgumentFilter"] = {} ** This is the "[m]apping from '''Constructor types''' to '''argument filter functions'''" listed on the proposal page. * ninai/base/constructorinterfaces.py:__constructor_core_arguments__: Dict[str, List[str]] = {} ** This is the "[m]apping from '''Constructor types''' to '''lists of names''' for core arguments" listed on the proposal page. * ninai/base/constructorinterfaces.py:__constructor_type_hierarchy__: Dict[str, List[str]] = {} ** This is the "[m]apping from '''Constructor types''' to any parent '''Constructor types'''" listed on the proposal page. * ninai/base/constructorinterfaces.py:__constructor_docstrings__: Dict[str, str] = {} ** (Ideally this mapping will not be necessary, since there should be ways of adding extended structured documentation to functions.) * ninai/base/constructorinterfaces.py:__config_insulators__: Set[str] = set() * ninai/base/constructorinterfaces.py:__config_setters__: Set[str] = set() * ninai/base/constructorinterfaces.py:__unfiltered_framing_constructors__: Set[str] = set() ** These are lists of semantic unit types that have particular behaviors during the execution of certain rendering functions. Ideally anyone should be able to define and fill in more of these mappings and refer to them during various rendering function steps. * ninai/graph/__init__.py:__fallback_chains__: DefaultDict[Language, DefaultDict[str, List[str]]] = defaultdict(lambda: defaultdict(list)) ** This maps a language and a sense type (currently "substantive", "predicate", or "demonym" depending on the properties used when traversing the sense network) to the sorts of fallback functions that should be tried if a lexeme with that sense type is not available for a concept. For instance, French may be fine transcribing other languages' lexemes when finding a substantive (so that 'transcribe' is in French's "substantive" fallback chain), but it may not be fine doing so for predicates (so that 'transcribe' wouldn't be in French's "predicate" fallback chain). * ninai/graph/__init__.py:__fallback_chain_types__: Dict[str, Type[i.SenseFindingFallback]] = {...} ** This is a mapping from string names of fallback functions to the fallback functions themselves. (It is these string names that are stored in __fallback_chains__.) * ninai/graph/client.py:__language_range__: Dict[Language, Tuple[tfsli.Qid, ...]] = {} ** This is a list of languages whose lexemes, prior to any fallback steps, should be considered when selecting a sense to use from a list of candidate senses. By default the value for any arbitrary language is its fallback chain used in other circumstances (like choosing rendering functions: see [[Wikifunctions talk:Type proposals/Syntactic unit]] for more on __language_fallbacks__), but of course a language may decide that it can use lexemes from another language without also using functions defined for that language. * ninai/renderers/__mappings__.py:__renderers__: DefaultDict[str, Dict["Language", "Renderer"]] = defaultdict(dict) ** This is the "[m]apping from '''Constructor type-language pairs''' to '''rendering functions'''" listed on the proposal page. * ninai/renderers/__mappings__.py:__arg_pre_hooks__: DefaultDict[str, DefaultDict[str, Dict["Language", "ArgPreHook"]]] = defaultdict(lambda: defaultdict(dict)) * ninai/renderers/__mappings__.py:__arg_post_hooks__: DefaultDict[str, DefaultDict[str, Dict["Language", "ArgPostHook"]]] = defaultdict(lambda: defaultdict(dict)) * ninai/renderers/__mappings__.py:__pre_hooks__: DefaultDict[str, Dict["Language", "PreHook"]] = defaultdict(dict) * ninai/renderers/__mappings__.py:__post_hooks__: DefaultDict[str, Dict["Language", "PostHook"]] = defaultdict(dict) ** These are the "few more global mappings that could be listed here" noted on the proposal page. (See above sections for what ArgPreHook, ArgPostHook, PreHook, and PostHook do.) * ninai/renderers/__mappings__.py:__sense_refines__: Dict["Language", "SenseRefinement"] = {} ** This maps languages to functions that take lists of candidate senses and filter them. * ninai/renderers/__mappings__.py:__syntactic_role_functions__: DefaultDict[str, Dict["Language", "SyntacticRoleFunction"]] = defaultdict(dict) * ninai/renderers/__mappings__.py:__initial_catena_processors__: Dict["Language", "InitialCatenaProcessor"] = {} * ninai/renderers/__mappings__.py:__thematic_inflection_additions__: Dict["Language", "ThematicInflectionAddition"] = {} * ninai/renderers/__mappings__.py:__inflection_functions__: Dict["Language", "InflectionFunction"] = {} * ninai/renderers/__mappings__.py:__scope_output_processors__: Dict["Language", "ScopeOutputProcessor"] = {} * ninai/renderers/__mappings__.py:__thematic_relationless_processors__: Dict["Language", "ThematicRelationlessProcessor"] = {} ** These mappings are used by the renderer of the {{Q|179080}} semantic unit type for various steps. * ninai/renderers/__mappings__.py:__constructorifies__: Dict["Language", "Constructorify"] = {} * ninai/renderers/__mappings__.py:__transcribes__: Dict["Language", "Transcribe"] = {} * ninai/renderers/__mappings__.py:__binominal_calques__: Dict["Language", "BinominalCompoundCalque"] = {} * ninai/renderers/__mappings__.py:__derivation_calques__: Dict["Language", "DerivationalCalqueFunction"] = {} ** These hold mappings from languages to individual fallback functions. * ninai/renderers/mul.py:__full_stop_overrides__: Dict[Language, FinalPunctuationFunction] = {} ** This holds mappings from languages to functions that add punctuation in them. <references/> == Missing Wikifunctions features for this type == @[[User:Mahir256|Mahir256]] What are the currently missing features of Wikifunctions that are necessary to actually implement this type? Which of these are fundamental, and which are just useful to port the code directly from Ninai? It could be useful to have them all listed in one place. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 17:36, 16 June 2026 (UTC) *{{re|Dv103|Denny|DVrandecic (WMF)}} I have started assembling those above, where explanations are given for different classes' existence, and particular desiderata for implementation are given with a ❌ (any of which you're welcome to change to a ✅ if there is evidence that the thing described is possible). I leave it to you to decide which are 'fundamental' versus 'just useful'. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 22:58, 22 June 2026 (UTC) *:A thing about sets: what is the issue in using {{Z|Z881}} to encode them? Wikifunctions already contains lists that are treated as sets. We already have functions to treat typed list as if they were sets (i.e., ignoring the order). Also consider that, under the hood, {{Z|Z883}} is just a wrapper for a {{Z|Z881}} of {{Z|Z882}}. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 07:54, 23 June 2026 (UTC) *::{{re|Dv103}} That definition of Z883 sounds like lots of operations involving maps would be inefficient; maps are not generally ordered except as an implementation detail, and if the typed lists in question ''are'' ordered then operations like lookup, insertion, and comparison take longer on average. Recasting a list so that operations independent of order may be performed should not be the responsibility of an ''individual function'' if the ''type'' itself can be kept inherently unordered in the first place. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 22:18, 26 June 2026 (UTC) *:::We should at first separate two concepts: inside a code implementation, the implementation is free to use whatever type is available in the given programming language for internal calculations (and in the case of Python, all the standard library is also available), so in this case the problem doesn't present. For communication between Wikifunctions functions, object are instead passed around through [[Wikifunctions:Function model|JSON Zobject representations]]. This means that it is not possible to actually pass around actual "maps" or "sets" in your sense, since the JSON object representation does not support them; the best we can do with maps is to encode them as a list of pairs, since lists are instead supported in JSON. Functions like {{Z|Z12696}}, {{Z|Z810}}, {{Z|Z12856}}, that allow to handle lists as if they were sets, already exist. *:::Wikifunctions is very inefficient. Here a functions that requires less that 50 ms are very efficient (and only builtin implementations can achieve this), and typical functions require hundreds of milliseconds to execute. Much of this execution time is structural, due to how function execution works. What you are asking is nanoseconds optimizations, which are completely irrelevant in the context of Wikifunctions. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 07:28, 27 June 2026 (UTC) == Some questions about the desiderata == @[[User:Mahir256|Mahir256]] I am trying to categorize all the desiderata (I also added two symbols: ❓ means that the possibility is doubt, and 🛑 means that the features is not necessary/should not be implemented). I have a copule of questions: # What does "expand and contract lists of tuples" mean? What is an expansion/contraction? # In the expression "to allow renderers to instantiate encapsulations of the state needed for their execution", what sort of encapsulation? For what purpose? # For the "CatenaYieldingIterator" class: is it actually necessary to use yields/iterators? These constructions are very idiomatic to Python, and do not fit well with the logic that usually Wikifunctions implementation follow. Is it possible to rewrite the code using a more straightforward if-else tree? [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 15:29, 23 June 2026 (UTC) :{{re|Dv103}} :# Push/pop, append/pop, push_back/pop_back, you name it: simply adding to and removing from the end of the list of tuples. :# In a class like [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructormainrenderer.py#L23 ConstructorMainRenderer], there are pieces of information that are retained across [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructorrenderer.py#L252 calls to its methods] (these pieces of information being, according to that link, the actual semantic unit being rendered, the arguments to the main rendering function, the choice of rendering function, the output from that rendering function, and--if execution should stop for some reason--the particular reason that caused execution to stop). Passing these around as arguments everywhere can cause code to become unwieldy, no matter how many tools you have in place to check that they're all provided in the right place. :# If-else is meant as a [[:w:en:Conditional (computer programming)|conditional statement]]; for loops (and indeed tail recursion) are meant for [[:w:en:Loop_(statement)|iteration]]. How should looking through a list of senses for an equivalent be done if the system cannot always determine what the initial list is or what processing steps are to be performed on it? The first of the reasons given for CatenaYieldingIterator's existence is the more important of the two. To my knowledge, iteration constructs akin to for loops or even Common Lisp's loop macro don't exist in composition implementations, and since code implementations can't yet call other functions with code implementations, simply moving any iterative construct into code won't work either. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 22:11, 26 June 2026 (UTC) ::# Ok thanks. ::# What would it be used for? If I understand correctly, in Ninai, the specific example you pointed me is to allow to resume the execution of the rederer after pausing. In Wikifunctions, functions cannot be paused and then resumed. ::# Wikifunctions compositions support recursion, meaning that they are Turing-complete, and thus it can technically execute whatever operation is currently handled in Python through iterators. My actual question is: are iterators so fundamental that rewriting the code without their use would be so inelegant and convoluted, or is it possible to rewrite the code in another fashon in a reasonable manner? No matter what, the implementation of the iterator logic in Wikifunctions, albeit technically possible (due to the Turing-completeness and the presence of types like {{Z|Z881}} and {{Z|Z883}} that could in theory be used to encode arbitrary data) would always be conterintuitive and very inelegant. ::[[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 12:00, 27 June 2026 (UTC) == Is it necessary to wait for these features? == @[[User:Mahir256|Mahir256]] @[[User:DVrandecic (WMF)|DVrandecic (WMF)]] @[[User:Denny|Denny]] Is it necessary to wait for the implementation of these features before creating the Semantic unit and Syntactic unit types? I see that these are not intrinsically fundamental for the implementation and the use of these types, but they are only necessary to import all the Ninai (and Udiron) code directly in Wikifunctions. I am skeptical that the direct import of a project written in Python, using Python idiomatic features like iterators, is desirable in the first place, favoring instead a translation of the code in order to adhere to the logical structures more idiomatic to Wikifunctions. My main concern is that some of these features are very substantial (and currently not prioritized), and it would likely take years to implement all of them (assuming that they are all implemented; again, the iterator logic does not fit well with the Wikifunctions functional paradigm). [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 15:38, 11 July 2026 (UTC) :@[[User:Dv103|Dv103]] I am happy to go forward and create the types. It's really up to Mahir -- he said it wouldn't be useful. --[[User:Denny|Denny]] ([[User talk:Denny|talk]]) 15:48, 11 July 2026 (UTC) f4lrgr1fzcwb4nqoj36xudnsh0frvsb 290440 290378 2026-07-12T02:34:42Z Mahir256 38 /* Is it necessary to wait for these features? */ 290440 wikitext text/x-wiki == Other possible types and objects == The following are lists of other entities defined in Ninai for the handling of Constructors. They were first assembled with the outputs of various <code>git grep</code> commands on the [https://gitlab.com/mahir256/ninai/ Ninai repository], and notes are provided below each about the nature of that declaration. Equivalents of many of these will be necessary, but levels of requirement will be marked as the notes below are filled in. === Classes === * ninai/base/constructor.py: class Constructor(NamedTuple): ** The "semantic unit" type is intended to be equivalent to this class. * ninai/base/constructorzipper.py: class ArgumentLevel(NamedTuple): * ninai/base/constructorzipper.py: class ConstructorZipper(NamedTuple): ** [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructorzipper.py#L26 "Due to the Wikifunctions requirement that all functions be pure functions, (the ConstructorZipper) has been introduced in order to assist the manipulation of (semantic units)."] A similar class was introduced in Udiron for the manipulation of syntactic units. As a result, it should be possible ** ❓ to either return modified inputs cheaply, or [[:w:en:Zipper (data structure)|to create modified versions of persistent data structures cheaply]] and return those. <ref>Returning modified input is as cheap as every function call in Wikifunctions. If the modification is done through composition, using only builtin functions, it can become very cheap (in the order of some milliseconds). This is because in Wikifunctions, object are "immutable" in the sense that they are always copied when passed to functions, and the functions always return another copy. A function that returns a slightly modified version of the input is no different from a function that returns a completely different value. For the zipper, if necessary, a list could be used.</ref> * ninai/base/interfaces.py: class ArgumentFilter(Protocol): ** Functions satisfying this protocol should produce semantic units (representing different kinds of meaning) as output. * ninai/base/argumentfilters.py: class ArgumentFilterOptions(NamedTuple): ** Since performance considerations <small>e.g. "any argument after the fourth is kept on the stack instead of moved into a register"</small> and various coding style guides discourage having large numbers of arguments when defining a function, this class exists to hold those when defining a new semantic unit. [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/argumentfilters.py#L138 The members of that class are mostly assigned to other objects]. (See also the Wikifunctions requirement that all functions be pure functions.) As a result, it should be possible ** ✅ to cheaply handle large numbers of arguments provided to a function.<ref>Wikifunctions already has [[Z23619|functions with a high number of arguments]], and there are no particular issues with them.</ref> * ninai/base/rendererarguments.py: class RendererArguments(NamedTuple): ** The desideratum in the previous sub-bullet point also applies here, although this object is passed around and manipulated versions returned across ''lots'' of different rendering steps (both in the base system and in user-defined functions), so it's worth repeating that it should be possible ** ❓ to '''''cheaply''''' handle large numbers of arguments provided to a function.<ref>Again, in Wikifunctions there shouldn't be too much advantage to group many arguments in a single container. If the function is implemented as a composition, there are instead various optimizations that would make it more efficient to scorporate the arguments. Bad performances are still a huge problem for Wikifunctions, for other reasons.</ref> * ninai/base/interfaces.py: class ArgumentFilterBasis(Protocol): ** This represents one of the arguments of an ArgumentFilterOptions: the function that produces a given type of semantic unit may be wholly tailored to that unit or simply be some other base function (like the [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/argumentfilters.py#L23 "default"] and [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/argumentfilters.py#L153 "passthrough"] functions). It is actually a partial function application that is stored and called when a semantic unit is provided arguments. As a result, it should be possible ** ❓ to store partial function calls in a semantic unit type-function mapping and use those.<ref>[[Z8|Functions]] are objects like any other on Wikifunctions, and functions like {{Z|Z13036}} and {{Z|Z22074}} do exist. There is currently no standard way to store a partial function call, but with an appropriate convention it should be possible to do.</ref> * ninai/base/constructormainrenderer.py: class ConstructorMainRenderer(NamedTuple): * ninai/base/constructorrenderer.py: class ConstructorRenderer(NamedTuple): * ninai/base/coreargumentprocessor.py: class CoreArgumentProcessor(NamedTuple): * ninai/base/coreargumentsrenderer.py: class CoreArgumentsRenderer(NamedTuple): * ninai/base/scopeargumentsrenderer.py: class ScopeArgumentsRenderer(NamedTuple): ** These classes encapsulate each of the steps that are actually run by the base Ninai system during semantic unit rendering, as described in [https://journals.sagepub.com/doi/full/10.3233/SW-243564 §5.1 of my paper]). As a result, it should be possible ** ❌ (🛑?) to run the functions defined by the base system for the rendering process without (in the case where all functions involved are written in Python) having to deal with overhead of serializing/deserializing objects at function call boundaries.<ref>In Wikifunctions, functions are abstract concepts that only define the input and ouput parameters (and all the multilingual labels). Implementations are written in a specific language. One of the core principles of Wikifunctions is that, from the outside, the function should behave the same independently on which implementation is actually running. This means that a function can only pass parameters when calling another function with types than can be serialized and deserializes into Wikifunctions objects. This optimization is not impossible, but it should still be invisible to conform to the core Wikifunctions philosophy.</ref> * ninai/base/context.py: class ContextEntry(NamedTuple): * ninai/base/context.py: class Context(NamedTuple): ** [https://journals.sagepub.com/doi/full/10.3233/SW-243564 §4.1.2.: “Contexts” are lists representing where and how deep into a tree of Constructors a particular rendering step is occurring (effectively functioning like a stack trace).] As a result, it should be possible ** ✅ to expand and contract lists of tuples cheaply.<ref>{{Z|Z810}}, {{Z|Z811}}, {{Z|Z812}}, {{Z|Z12961}}, {{Z|Z12964}}, {{Z|Z12967}}</ref> * ninai/base/framing.py: class MethodKey(NamedTuple): * ninai/base/framing.py: class FramingKey(NamedTuple): ** These are used for indexing into Framings (see below), with the idea that the value returned from such an indexing is either a function or another Framing object entirely. * ninai/base/framing.py: class FramingDict(NamedTuple): * ninai/base/framing.py: class Framing(NamedTuple): ** [https://journals.sagepub.com/doi/full/10.3233/SW-243564 §4.1.2.: “Framings” hold information provided at the start of the Constructor rendering process to control the behavior of named individual Constructor types, named individual Constructors, individual languages, or some combination of all three.] ** The current implementation is largely inspired by the idea of [https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Selectors CSS selectors]; the same sorts of symbols that denote certain features to select for (e.g. ".", "#", ":") may be used in a Framing selector as well. ** To satisfy Python type checkers, and to mitigate the inability to distinguish between e.g. "dict[str]" and "dict[int]" using a Python isinstance() check, keys into Framings (such as MethodKey and FramingKey listed above, along with EntityKey and StrKey from Udiron) distinguish between the possible types of the objects returned. Indexing into a Framing with an EntityKey will yield one of [https://gitlab.com/mahir256/udiron/-/blob/main/udiron/base/functionconfig.py#L158 several possible types] that ''can'' be distinguished by an isinstance() check; likewise with a StrKey yielding a string. As a result, it should be possible ** ✅ to check the types of values returned from arbitrary mappings cheaply.<ref>{{Z|Z16829}} exists and is very efficient.</ref> * ninai/base/interfaces.py: class PreHook(Protocol): * ninai/base/interfaces.py: class Renderer(Protocol): * ninai/base/interfaces.py: class PostHook(Protocol): * ninai/base/interfaces.py: class ArgPreHook(Protocol): * ninai/base/interfaces.py: class ArgPostHook(Protocol): ** Functions satisfying these protocols perform each of the steps of the semantic unit rendering process (as described in [https://journals.sagepub.com/doi/full/10.3233/SW-243564 §5.1 of my paper]). As a result, it should be possible ** ✅ to verify that a function in a particular (language, semantic unit type)-to-function mapping has the appropriate function signature.<ref>It is possible to [[Z21177|retrieve the signature of a function]].</ref> * ninai/base/interfaces.py: class SyntacticRoleFunction(Protocol): * ninai/base/interfaces.py: class InitialCatenaProcessor(Protocol): * ninai/base/interfaces.py: class ThematicInflectionAddition(Protocol): * ninai/base/interfaces.py: class InflectionFunction(Protocol): * ninai/base/interfaces.py: class ScopeOutputProcessor(Protocol): * ninai/base/interfaces.py: class ThematicRelationlessProcessor(Protocol): ** The notes in the previous sub-bullet point apply here too; functions matching these protocols perform steps of the process of rendering arbitrary predicates. * ninai/constructors/contexts/refcontext.py: class RefContextRenderer(NamedTuple): ** The notes in the sub-bullet point two before this one apply here as well. Given that this is created by a specific semantic unit's main renderer, rather than it being part of the base system (it does not live in the 'ninai/base' directory, after all), it should be possible ** ❌ to allow renderers to instantiate encapsulations of the state needed for their execution. * ninai/base/interfaces.py: class NinaiError(Exception): ** While this is not currently used much yet, it is intended to be saveable/serializable in the event the rendering process needs to be suspended (see "PausedRendererSupply" below), so that the specific source and cause of an error may be introspected. As a result, it should be possible ** ✅ to define arbitrary types of errors/exceptions to be thrown by code implementations.<ref>[[Wikifunctions:How_to_create_implementations#Wikifunctions_error_handling|User-defined errors]] exist on Wikifunctions, and function calls can throw them.</ref> * ninai/base/interfaces.py: class RenderingPhase(IntEnum): * ninai/base/interfaces.py: class CoreArgumentProcessingPhase(IntEnum): ** These enumerations were created to keep track of the current state of a type of process (and to indicate from where a suspended version of that process should resume from; see "PausedRendererSupply" below). As a result, it should be possible ** ❌ to keep track of the particular level of a rendering process being executed and to save that tracking information. * ninai/graph/__init__.py: class FallbackRunner: ** This is instantiated whenever a direct sense link cannot be found and starts the process of running fallback steps specified per language (see "SenseFindingFallback" ff. below). * ninai/graph/server.py: class GraphServer: * ninai/graph/server.py: class ServerThread(threading.Thread): * ninai/graph/server.py: class GraphServerRepl(cmd.Cmd): ** These classes serve as scaffolding for threads that handle remote procedure calls for (NetworkX, but also graph-tool in the past) graph traversals from a starting item/lexeme/sense and return the results of those traversals (https://elemwala-backend.toolforge.org merely runs such threads). While the specific Python implementation need not exist in the same fashion as written, it should still be possible ** ❌ to traverse the full graph of connections between Wikidata entities having certain property links (for instance, to go from one sense to another three "synonym" statements away, or to go from one lexeme to another three "etymology" statements away); the current functions which simply run "haswbstatement:P5137" full-text searches are not sufficient.<ref>[[phab:T424328]]</ref> * ninai/base/interfaces.py: class CandidatePathNode(TypedDict): # due to XMLRPC serialization, must remain a TypedDict ** This holds two things: (1) a particular entity ID (item/lexeme/sense), and (2) a list of two-item tuples representing the links between the source entity of a traversal and that particular entity ID. If L789-S1 was three "translation" links away from L123-S1, and a traversal is run with L123-S1 as the starting point, then the CandidatePathNode for L789-S1 would have as its second element a list of three two-item tuples (for each of the three links). As a result, it should be possible ** ❌ to return not only entities linked to a given entity, but the (shortest) path between a source entity and that given entity, as part of a traversal. * ninai/base/interfaces.py: class SenseRefinement(Protocol): ** Functions satisfying this Protocol simply take a list of candidate senses (with paths from a source concept to those senses) and then return a version of that list according to some criterion (possibly based on configuration options provided). * ninai/graph/client.py: class CandidateProcessor: ** This class actually goes through a list of candidate senses for a given concept and iteratively yields lexemes based on those senses. (It is not used if there are no candidate senses for that concept and fallback functions must be run instead.) * ninai/base/pausedrenderersupply.py: class PausedRendererSupply(NamedTuple): ** This class was added to assist in something Maria Keet had asked for once: if a particular grammatical feature is not known at a point in the rendering process, and there isn't a clear way to proceed without knowing it, this should cause the rendering process to be ''paused'' and the user should be allowed to ''supply'' the missing information to the ''renderer'' and resume that process. As a result, it should be possible ** 🛑 to return some state representation, in the event of an error within rendering, that can be resumed with appropriate information provided.<ref>Not possible, since Wikifunctions does not support standard input/output or any user interaction after the function call. In these cases, the function should instead raise an error that describes the issue and prompts the user to integrate the information on Wikidata, if no fallback is possible</ref> * ninai/base/interfaces.py: class PreHookOperator(NamedTuple): * ninai/base/interfaces.py: class MainRendererOperator(NamedTuple): * ninai/base/interfaces.py: class PostHookOperator(NamedTuple): ** These exist merely to define a [[:w:en:Tagged union]] of possible types of functions usable by Ninai during certain rendering steps (see the note for PreHook, Renderer, PostHook above). Following from the previous bullet point, if a particular step is not defined for a language-semantic unit type combination, this should cause the rendering process to be ''paused'' and the user should be allowed to ''supply'' the missing function to the ''renderer'' and resume that process. * ninai/base/interfaces.py: class CatenaYieldingIterator(Protocol): ** Iterator classes matching this protocol, which otherwise could be reduced to individual functions, exist for a couple of reasons: **# Because Wikifunctions is based on principles exemplified by Haskell (which is not an implementation language, which has proper tail call optimization, but which does not have 'for' loops), and because Ninai/Udiron is written in Python (which is an implementation language, which does not optimize tail calls<ref>https://neopythonic.blogspot.com/2009/04/tail-recursion-elimination.html</ref>, but which has 'for' loops), such iterators return, in addition to the object they generate, a new iterator starting from the point at which that object was generated. **# Generators (and thus iterators) are not automatically serializable (indeed, even more comprehensive Python libraries than pickle cannot do so<ref>https://pypi.org/project/dill/</ref>), so these objects manually implement Python's iterator protocol. ** As a result of both of these things, it should be possible ** ❌ to serialize and deserialize the current state of a given sense finding process. * ninai/graph/client.py: class SenseFindingIterator: ** This represents the main starting point of the sense finding process, and is serializable for the reasons above. * ninai/base/interfaces.py: class SenseFindingFallback(CatenaYieldingIterator, Protocol): * ninai/graph/calque.py: class CalqueIterator: # finding equivalents for parts of a complex lexeme in a source language, and reassembling the equivalents in a target language * ninai/graph/calque.py: class VerboNominalSyntagmaCalque: # in the situation where a verb consists of e.g. (a noun) + "to do" * ninai/graph/calque.py: class EndocentricCompoundCalque: # in the situation where a noun consists of two other nouns, or an adjective attached to a noun * ninai/graph/calque.py: class DerivationCalque: # in the situation where a lexeme consists of another lexeme with a derivational affix * ninai/graph/fallbacks.py: class CatenaZipperListIterator: # returning choices from only a specific list of lexemes * ninai/graph/cognate.py: class CognateIterator: # returning lexemes in a target language that, via "derived from lexeme" statements, are etymologically related to a lexeme in a source language * ninai/graph/transcribe.py: class TranscribeIterator: # returning pseudo-lexemes that consist of another lexeme in a source language with its (phonetic/orthographic) representation converted to a target language * ninai/graph/__init__.py: class CatenaFromItemIdIterator: # simply produces a pseudo-lexeme whose lemma is the item label ** In addition to the notes about "CatenaYieldingIterator" above, these iterators perform fallback steps of different kinds, mainly involving finding parts/equivalents of other lexemes outside the target language. * ninai/base/interfaces.py: class Constructorify(Protocol): # not used yet, but will be reintroduced soon * ninai/base/interfaces.py: class Transcribe(Protocol): # actually performs the conversion of a (phonetic/orthographic) representation into a target language * ninai/base/interfaces.py: class BinominalCompoundCalque(Protocol): # actually reassembles the equivalents of two nouns (or an adjective and a noun) * ninai/base/interfaces.py: class DerivationalCalqueFunction(Protocol): # actually reassembles the equivalents of a lexeme and an attached affix ** Functions satisfying these protocols perform the steps in the target language of assembling a candidate word or phrase from any found equivalents. * ninai/renderers/mul.py: class FinalPunctuationFunction(Protocol): ** This simply represents a function that adds some punctuation to a phrase/clause. === Type aliases === (May be initially incomplete, since not all type aliases may have been marked with the "TypeAlias" type annotation. * ninai/base/constructorrenderer.py:RenderingPhaseEncapsulator: "TypeAlias" = Union[ConstructorMainRenderer, CoreArgumentsRenderer, ScopeArgumentsRenderer] ** This is the type of the member of a ConstructorRenderer class instance that holds a paused execution state of a rendering phase (see 'PausedRendererSupply' above). * ninai/base/interfaces.py:ChildIdentifiersMapping: "TypeAlias" = Dict[str, Tuple[Tuple[str, ...], str]] ** This is the type of the 'child identifiers' mapping listed in the box entitled "Excluded from structure above per comments below" on the proposal page. * ninai/base/interfaces.py:CoreArguments: "TypeAlias" = Dict[str, "Constructor"] ** This is the type of the '''[c]ore arguments''' mapping on the proposal page. * ninai/base/interfaces.py:ScopeArguments: "TypeAlias" = List["Constructor"] ** This is the type of the '''[s]cope arguments''' mapping on the proposal page. * ninai/base/interfaces.py:ThematicRelationSpec: "TypeAlias" = Dict[str, Statement] ** Essentially this holds the {{P|9971}} statements on a verb sense as values, with the item IDs of the semantic arguments themselves as keys. * ninai/base/interfaces.py:NonConstructorTypeArguments: "TypeAlias" = Union[ ** The members of this union type are [[Z6001]], [[Z6005]], [[Z6004]], [[Z6006]], FunctionConfig and "ItemList" (see [[Wikifunctions talk:Type proposals/Syntactic unit]] for more on those), and "Framing", "NinaiError", and "PausedRendererSupply" (see above). * ninai/base/interfaces.py:ConstructorArgument: "TypeAlias" = Union["Constructor", NonConstructorTypeArguments] ** A distinction is made in semantic unit processing between arguments that are themselves semantic units and those which are not (as noted by the existence of mappings for scope arguments and "other" arguments). * ninai/base/interfaces.py:ConstructorArguments: "TypeAlias" = Sequence[ConstructorArgument] ** This is a list of objects each of which is one of the types listed in the above bullet point. * ninai/graph/server.py:EntityGraph: TypeAlias = "nx.MultiDiGraph[str]" ** This is the type of the actual sense graph that is built up as more concepts are requested during the rendering process. Individual nodes of the graph do not get refreshed on each request; usually a connected component is deleted only after a certain configurable amount of time has passed. === Other objects === Some rough equivalents for the types named in the annotations below: * Dict = [[Z883]] * Set = (no equivalent, maybe [[Z883]] with [[Z1]] keys and [[Z41]] as the only value?) * List = [[Z881]] * Language = [[Z60]] (May be initially incomplete, since this is basically a list of entities not falling into any of the above types.) * ninai/base/constructorinterfaces.py:__constructor_argument_filters__: Dict[str, "ArgumentFilter"] = {} ** This is the "[m]apping from '''Constructor types''' to '''argument filter functions'''" listed on the proposal page. * ninai/base/constructorinterfaces.py:__constructor_core_arguments__: Dict[str, List[str]] = {} ** This is the "[m]apping from '''Constructor types''' to '''lists of names''' for core arguments" listed on the proposal page. * ninai/base/constructorinterfaces.py:__constructor_type_hierarchy__: Dict[str, List[str]] = {} ** This is the "[m]apping from '''Constructor types''' to any parent '''Constructor types'''" listed on the proposal page. * ninai/base/constructorinterfaces.py:__constructor_docstrings__: Dict[str, str] = {} ** (Ideally this mapping will not be necessary, since there should be ways of adding extended structured documentation to functions.) * ninai/base/constructorinterfaces.py:__config_insulators__: Set[str] = set() * ninai/base/constructorinterfaces.py:__config_setters__: Set[str] = set() * ninai/base/constructorinterfaces.py:__unfiltered_framing_constructors__: Set[str] = set() ** These are lists of semantic unit types that have particular behaviors during the execution of certain rendering functions. Ideally anyone should be able to define and fill in more of these mappings and refer to them during various rendering function steps. * ninai/graph/__init__.py:__fallback_chains__: DefaultDict[Language, DefaultDict[str, List[str]]] = defaultdict(lambda: defaultdict(list)) ** This maps a language and a sense type (currently "substantive", "predicate", or "demonym" depending on the properties used when traversing the sense network) to the sorts of fallback functions that should be tried if a lexeme with that sense type is not available for a concept. For instance, French may be fine transcribing other languages' lexemes when finding a substantive (so that 'transcribe' is in French's "substantive" fallback chain), but it may not be fine doing so for predicates (so that 'transcribe' wouldn't be in French's "predicate" fallback chain). * ninai/graph/__init__.py:__fallback_chain_types__: Dict[str, Type[i.SenseFindingFallback]] = {...} ** This is a mapping from string names of fallback functions to the fallback functions themselves. (It is these string names that are stored in __fallback_chains__.) * ninai/graph/client.py:__language_range__: Dict[Language, Tuple[tfsli.Qid, ...]] = {} ** This is a list of languages whose lexemes, prior to any fallback steps, should be considered when selecting a sense to use from a list of candidate senses. By default the value for any arbitrary language is its fallback chain used in other circumstances (like choosing rendering functions: see [[Wikifunctions talk:Type proposals/Syntactic unit]] for more on __language_fallbacks__), but of course a language may decide that it can use lexemes from another language without also using functions defined for that language. * ninai/renderers/__mappings__.py:__renderers__: DefaultDict[str, Dict["Language", "Renderer"]] = defaultdict(dict) ** This is the "[m]apping from '''Constructor type-language pairs''' to '''rendering functions'''" listed on the proposal page. * ninai/renderers/__mappings__.py:__arg_pre_hooks__: DefaultDict[str, DefaultDict[str, Dict["Language", "ArgPreHook"]]] = defaultdict(lambda: defaultdict(dict)) * ninai/renderers/__mappings__.py:__arg_post_hooks__: DefaultDict[str, DefaultDict[str, Dict["Language", "ArgPostHook"]]] = defaultdict(lambda: defaultdict(dict)) * ninai/renderers/__mappings__.py:__pre_hooks__: DefaultDict[str, Dict["Language", "PreHook"]] = defaultdict(dict) * ninai/renderers/__mappings__.py:__post_hooks__: DefaultDict[str, Dict["Language", "PostHook"]] = defaultdict(dict) ** These are the "few more global mappings that could be listed here" noted on the proposal page. (See above sections for what ArgPreHook, ArgPostHook, PreHook, and PostHook do.) * ninai/renderers/__mappings__.py:__sense_refines__: Dict["Language", "SenseRefinement"] = {} ** This maps languages to functions that take lists of candidate senses and filter them. * ninai/renderers/__mappings__.py:__syntactic_role_functions__: DefaultDict[str, Dict["Language", "SyntacticRoleFunction"]] = defaultdict(dict) * ninai/renderers/__mappings__.py:__initial_catena_processors__: Dict["Language", "InitialCatenaProcessor"] = {} * ninai/renderers/__mappings__.py:__thematic_inflection_additions__: Dict["Language", "ThematicInflectionAddition"] = {} * ninai/renderers/__mappings__.py:__inflection_functions__: Dict["Language", "InflectionFunction"] = {} * ninai/renderers/__mappings__.py:__scope_output_processors__: Dict["Language", "ScopeOutputProcessor"] = {} * ninai/renderers/__mappings__.py:__thematic_relationless_processors__: Dict["Language", "ThematicRelationlessProcessor"] = {} ** These mappings are used by the renderer of the {{Q|179080}} semantic unit type for various steps. * ninai/renderers/__mappings__.py:__constructorifies__: Dict["Language", "Constructorify"] = {} * ninai/renderers/__mappings__.py:__transcribes__: Dict["Language", "Transcribe"] = {} * ninai/renderers/__mappings__.py:__binominal_calques__: Dict["Language", "BinominalCompoundCalque"] = {} * ninai/renderers/__mappings__.py:__derivation_calques__: Dict["Language", "DerivationalCalqueFunction"] = {} ** These hold mappings from languages to individual fallback functions. * ninai/renderers/mul.py:__full_stop_overrides__: Dict[Language, FinalPunctuationFunction] = {} ** This holds mappings from languages to functions that add punctuation in them. <references/> == Missing Wikifunctions features for this type == @[[User:Mahir256|Mahir256]] What are the currently missing features of Wikifunctions that are necessary to actually implement this type? Which of these are fundamental, and which are just useful to port the code directly from Ninai? It could be useful to have them all listed in one place. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 17:36, 16 June 2026 (UTC) *{{re|Dv103|Denny|DVrandecic (WMF)}} I have started assembling those above, where explanations are given for different classes' existence, and particular desiderata for implementation are given with a ❌ (any of which you're welcome to change to a ✅ if there is evidence that the thing described is possible). I leave it to you to decide which are 'fundamental' versus 'just useful'. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 22:58, 22 June 2026 (UTC) *:A thing about sets: what is the issue in using {{Z|Z881}} to encode them? Wikifunctions already contains lists that are treated as sets. We already have functions to treat typed list as if they were sets (i.e., ignoring the order). Also consider that, under the hood, {{Z|Z883}} is just a wrapper for a {{Z|Z881}} of {{Z|Z882}}. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 07:54, 23 June 2026 (UTC) *::{{re|Dv103}} That definition of Z883 sounds like lots of operations involving maps would be inefficient; maps are not generally ordered except as an implementation detail, and if the typed lists in question ''are'' ordered then operations like lookup, insertion, and comparison take longer on average. Recasting a list so that operations independent of order may be performed should not be the responsibility of an ''individual function'' if the ''type'' itself can be kept inherently unordered in the first place. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 22:18, 26 June 2026 (UTC) *:::We should at first separate two concepts: inside a code implementation, the implementation is free to use whatever type is available in the given programming language for internal calculations (and in the case of Python, all the standard library is also available), so in this case the problem doesn't present. For communication between Wikifunctions functions, object are instead passed around through [[Wikifunctions:Function model|JSON Zobject representations]]. This means that it is not possible to actually pass around actual "maps" or "sets" in your sense, since the JSON object representation does not support them; the best we can do with maps is to encode them as a list of pairs, since lists are instead supported in JSON. Functions like {{Z|Z12696}}, {{Z|Z810}}, {{Z|Z12856}}, that allow to handle lists as if they were sets, already exist. *:::Wikifunctions is very inefficient. Here a functions that requires less that 50 ms are very efficient (and only builtin implementations can achieve this), and typical functions require hundreds of milliseconds to execute. Much of this execution time is structural, due to how function execution works. What you are asking is nanoseconds optimizations, which are completely irrelevant in the context of Wikifunctions. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 07:28, 27 June 2026 (UTC) == Some questions about the desiderata == @[[User:Mahir256|Mahir256]] I am trying to categorize all the desiderata (I also added two symbols: ❓ means that the possibility is doubt, and 🛑 means that the features is not necessary/should not be implemented). I have a copule of questions: # What does "expand and contract lists of tuples" mean? What is an expansion/contraction? # In the expression "to allow renderers to instantiate encapsulations of the state needed for their execution", what sort of encapsulation? For what purpose? # For the "CatenaYieldingIterator" class: is it actually necessary to use yields/iterators? These constructions are very idiomatic to Python, and do not fit well with the logic that usually Wikifunctions implementation follow. Is it possible to rewrite the code using a more straightforward if-else tree? [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 15:29, 23 June 2026 (UTC) :{{re|Dv103}} :# Push/pop, append/pop, push_back/pop_back, you name it: simply adding to and removing from the end of the list of tuples. :# In a class like [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructormainrenderer.py#L23 ConstructorMainRenderer], there are pieces of information that are retained across [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructorrenderer.py#L252 calls to its methods] (these pieces of information being, according to that link, the actual semantic unit being rendered, the arguments to the main rendering function, the choice of rendering function, the output from that rendering function, and--if execution should stop for some reason--the particular reason that caused execution to stop). Passing these around as arguments everywhere can cause code to become unwieldy, no matter how many tools you have in place to check that they're all provided in the right place. :# If-else is meant as a [[:w:en:Conditional (computer programming)|conditional statement]]; for loops (and indeed tail recursion) are meant for [[:w:en:Loop_(statement)|iteration]]. How should looking through a list of senses for an equivalent be done if the system cannot always determine what the initial list is or what processing steps are to be performed on it? The first of the reasons given for CatenaYieldingIterator's existence is the more important of the two. To my knowledge, iteration constructs akin to for loops or even Common Lisp's loop macro don't exist in composition implementations, and since code implementations can't yet call other functions with code implementations, simply moving any iterative construct into code won't work either. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 22:11, 26 June 2026 (UTC) ::# Ok thanks. ::# What would it be used for? If I understand correctly, in Ninai, the specific example you pointed me is to allow to resume the execution of the rederer after pausing. In Wikifunctions, functions cannot be paused and then resumed. ::# Wikifunctions compositions support recursion, meaning that they are Turing-complete, and thus it can technically execute whatever operation is currently handled in Python through iterators. My actual question is: are iterators so fundamental that rewriting the code without their use would be so inelegant and convoluted, or is it possible to rewrite the code in another fashon in a reasonable manner? No matter what, the implementation of the iterator logic in Wikifunctions, albeit technically possible (due to the Turing-completeness and the presence of types like {{Z|Z881}} and {{Z|Z883}} that could in theory be used to encode arbitrary data) would always be conterintuitive and very inelegant. ::[[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 12:00, 27 June 2026 (UTC) == Is it necessary to wait for these features? == @[[User:Mahir256|Mahir256]] @[[User:DVrandecic (WMF)|DVrandecic (WMF)]] @[[User:Denny|Denny]] Is it necessary to wait for the implementation of these features before creating the Semantic unit and Syntactic unit types? I see that these are not intrinsically fundamental for the implementation and the use of these types, but they are only necessary to import all the Ninai (and Udiron) code directly in Wikifunctions. I am skeptical that the direct import of a project written in Python, using Python idiomatic features like iterators, is desirable in the first place, favoring instead a translation of the code in order to adhere to the logical structures more idiomatic to Wikifunctions. My main concern is that some of these features are very substantial (and currently not prioritized), and it would likely take years to implement all of them (assuming that they are all implemented; again, the iterator logic does not fit well with the Wikifunctions functional paradigm). [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 15:38, 11 July 2026 (UTC) :@[[User:Dv103|Dv103]] I am happy to go forward and create the types. It's really up to Mahir -- he said it wouldn't be useful. --[[User:Denny|Denny]] ([[User talk:Denny|talk]]) 15:48, 11 July 2026 (UTC) :{{re|Dv103}} Simply allowing the "intrinsically fundamental", ''without'' the machinery that makes it friendly to create and use, would add to the [[:abstract:Abstract_Wikipedia_talk:Response_to_English_Wikipedia_criticism|current unfriendliness of the existing interface (comment from 17:15, 8 July 2026) and its performance (15:47, 8 July 2026) and community communication (23:02, 8 July 2026)]]. Most, if not all, of the desiderata I named on this page and [[Wikifunctions talk:Type proposals/Syntactic unit|the other one]] are intended to improve the lives of the abstract content's author, the rendering function's programmer, and the generated outputs' assessor, and I have good reasons to believe that the absence of most would be an unnecessary limitation (if not a Procrustean kneecapping) of the site's natural language generation potential. You can continue to take issue with my being influenced by the Python codebase that I wrote, but as long as you cannot demonstrate that the types can support producing equally interesting content on their own (e.g. by providing translations of crucial code samples in the Python codebase into "logical structures more idiomatic to Wikifunctions"), I am inclined to stand by the points that I have brought up regarding that codebase. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 02:34, 12 July 2026 (UTC) mtb1gd6i4huy7epy2anc0ogm43fj8ps Z36283 0 85518 290474 288915 2026-07-12T08:31:49Z HenkvD 1290 new layout without caption, headers, with infobox section 290474 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z36283" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z36282", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z33328", "Z33328K1": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K2": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K3": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z37644", "Z37644K1": { "Z1K1": "Z18", "Z18K1": "Z36282K1" }, "Z37644K2": "default", "Z37644K3": { "Z1K1": "Z18", "Z18K1": "Z36282K2" } }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q6256" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36282K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z6092", "Z6092K1": "P17" }, "Z21449K2": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z36282K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P17" }, { "Z1K1": "Z6092", "Z6092K1": "P131" } ] } }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36282K2" } } } } ] }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q515" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36282K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z6092", "Z6092K1": "P131" }, "Z21449K2": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z36282K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P17" }, { "Z1K1": "Z6092", "Z6092K1": "P131" } ] } }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36282K2" } } } ] } ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox for sports event, comp" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } l9ozxzt5emhkz32dj1bygjcf7nwaqbp Z36286 0 85521 290475 288916 2026-07-12T08:34:33Z HenkvD 1290 new layout without caption, headers, with infobox section 290475 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z36286" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z36285", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z33328", "Z33328K1": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K2": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K3": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z37644", "Z37644K1": { "Z1K1": "Z18", "Z18K1": "Z36285K1" }, "Z37644K2": "default", "Z37644K3": { "Z1K1": "Z18", "Z18K1": "Z36285K2" } }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q6256" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36285K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z6092", "Z6092K1": "P17" }, "Z21449K2": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z36285K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P17" }, { "Z1K1": "Z6092", "Z6092K1": "P571" } ] } }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36285K2" } } } } ] }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q3406134" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36285K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z28767", "Z28767K1": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z36285K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P17" }, { "Z1K1": "Z6092", "Z6092K1": "P571" } ] }, "Z28767K2": { "Z1K1": "Z6092", "Z6092K1": "P571" }, "Z28767K3": { "Z1K1": "Z18", "Z18K1": "Z36285K2" } } } ] } ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox for choir, comp" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 7hdqmrpdfyvzshd41q2opisuk3bgjo0 Z36289 0 85524 290476 288917 2026-07-12T08:36:49Z HenkvD 1290 new layout without caption, headers, with infobox section 290476 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z36289" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z36288", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z33328", "Z33328K1": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K2": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K3": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z37644", "Z37644K1": { "Z1K1": "Z18", "Z18K1": "Z36288K1" }, "Z37644K2": "default", "Z37644K3": { "Z1K1": "Z18", "Z18K1": "Z36288K2" } }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q6256" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36288K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z6092", "Z6092K1": "P17" }, "Z21449K2": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z36288K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P17" }, { "Z1K1": "Z6092", "Z6092K1": "P571" } ] } }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36288K2" } } } } ] }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q3406134" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36288K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z28767", "Z28767K1": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z36288K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P17" }, { "Z1K1": "Z6092", "Z6092K1": "P571" } ] }, "Z28767K2": { "Z1K1": "Z6092", "Z6092K1": "P571" }, "Z28767K3": { "Z1K1": "Z18", "Z18K1": "Z36288K2" } } } ] } ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox for community center, comp" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } ai6tcybdz2kyvli5zt6tdn6pj1iki4m Z36291 0 85526 290477 288918 2026-07-12T08:39:15Z HenkvD 1290 new layout without caption, headers, with infobox section 290477 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z36291" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z36290", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z33328", "Z33328K1": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K2": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K3": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z37644", "Z37644K1": { "Z1K1": "Z18", "Z18K1": "Z36290K1" }, "Z37644K2": "default", "Z37644K3": { "Z1K1": "Z18", "Z18K1": "Z36290K2" } }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q6256" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36290K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z6092", "Z6092K1": "P17" }, "Z21449K2": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z36290K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P17" }, { "Z1K1": "Z6092", "Z6092K1": "P571" } ] } }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36290K2" } } } } ] }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q3406134" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36290K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z28767", "Z28767K1": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z36290K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P17" }, { "Z1K1": "Z6092", "Z6092K1": "P571" } ] }, "Z28767K2": { "Z1K1": "Z6092", "Z6092K1": "P571" }, "Z28767K3": { "Z1K1": "Z18", "Z18K1": "Z36290K2" } } } ] } ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox for film award, comp" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } l08q65mfpvznklouyoe1ggksrgtuh2j Z36297 0 85532 290478 288919 2026-07-12T08:43:26Z HenkvD 1290 new layout without caption, headers with infobox section 290478 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z36297" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z36296", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z33328", "Z33328K1": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K2": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K3": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z37644", "Z37644K1": { "Z1K1": "Z18", "Z18K1": "Z36296K1" }, "Z37644K2": "default", "Z37644K3": { "Z1K1": "Z18", "Z18K1": "Z36296K2" } }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q6256" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36296K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z6092", "Z6092K1": "P17" }, "Z21449K2": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z36296K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P17" }, { "Z1K1": "Z6092", "Z6092K1": "P571" } ] } }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36296K2" } } } } ] }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q3406134" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36296K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z28767", "Z28767K1": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z36296K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P17" }, { "Z1K1": "Z6092", "Z6092K1": "P571" } ] }, "Z28767K2": { "Z1K1": "Z6092", "Z6092K1": "P571" }, "Z28767K3": { "Z1K1": "Z18", "Z18K1": "Z36296K2" } } } ] } ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox for church building, comp" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } f38uj8pe3l5x85i3koekjy0nykd5hhy Z36324 0 85628 290479 288920 2026-07-12T08:47:01Z HenkvD 1290 new layout without caption, headers with infobox section 290479 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z36324" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z36323", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z33328", "Z33328K1": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K2": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K3": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z37644", "Z37644K1": { "Z1K1": "Z18", "Z18K1": "Z36323K1" }, "Z37644K2": "default", "Z37644K3": { "Z1K1": "Z18", "Z18K1": "Z36323K2" } }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q6256" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36323K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z6092", "Z6092K1": "P17" }, "Z21449K2": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z36323K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P17" }, { "Z1K1": "Z6092", "Z6092K1": "P571" } ] } }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36323K2" } } } } ] }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q3406134" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36323K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z28767", "Z28767K1": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z36323K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P17" }, { "Z1K1": "Z6092", "Z6092K1": "P571" } ] }, "Z28767K2": { "Z1K1": "Z6092", "Z6092K1": "P571" }, "Z28767K3": { "Z1K1": "Z18", "Z18K1": "Z36323K2" } } } ] } ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox for library, comp" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 61haxswp5poslfxlopftdyin27xph1n Z36326 0 85630 290480 288921 2026-07-12T08:49:27Z HenkvD 1290 new layout without caption, headers with infobox section 290480 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z36326" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z36325", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z33328", "Z33328K1": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K2": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K3": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z37644", "Z37644K1": { "Z1K1": "Z18", "Z18K1": "Z36325K1" }, "Z37644K2": "default", "Z37644K3": { "Z1K1": "Z18", "Z18K1": "Z36325K2" } }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q6256" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36325K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z6092", "Z6092K1": "P17" }, "Z21449K2": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z36325K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P17" }, { "Z1K1": "Z6092", "Z6092K1": "P1619" } ] } }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36325K2" } } } } ] }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q3406134" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36325K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z28767", "Z28767K1": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z36325K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P17" }, { "Z1K1": "Z6092", "Z6092K1": "P1619" } ] }, "Z28767K2": { "Z1K1": "Z6092", "Z6092K1": "P1619" }, "Z28767K3": { "Z1K1": "Z18", "Z18K1": "Z36325K2" } } } ] } ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox for historical place, comp" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } crhupv1w4nnlz2e780w67tmpetehdkb Z36328 0 85632 290481 288922 2026-07-12T08:51:29Z HenkvD 1290 new layout without caption, headers with infobox section 290481 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z36328" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z36327", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z33328", "Z33328K1": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K2": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K3": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z37644", "Z37644K1": { "Z1K1": "Z18", "Z18K1": "Z36327K1" }, "Z37644K2": "default", "Z37644K3": { "Z1K1": "Z18", "Z18K1": "Z36327K2" } }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q6256" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36327K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z6092", "Z6092K1": "P17" }, "Z21449K2": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z36327K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P17" }, { "Z1K1": "Z6092", "Z6092K1": "P571" } ] } }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36327K2" } } } } ] }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q3406134" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36327K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z28767", "Z28767K1": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z36327K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P17" }, { "Z1K1": "Z6092", "Z6092K1": "P571" } ] }, "Z28767K2": { "Z1K1": "Z6092", "Z6092K1": "P571" }, "Z28767K3": { "Z1K1": "Z18", "Z18K1": "Z36327K2" } } } ] } ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox for archives, comp" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 0t0i1fhqnmhnkpapb2b063r4jgmiazh Z36334 0 85641 290482 288923 2026-07-12T08:53:20Z HenkvD 1290 new layout without caption, headers with infobox section 290482 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z36334" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z36333", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z33328", "Z33328K1": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K2": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K3": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z37644", "Z37644K1": { "Z1K1": "Z18", "Z18K1": "Z36333K1" }, "Z37644K2": "default", "Z37644K3": { "Z1K1": "Z18", "Z18K1": "Z36333K2" } }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q6256" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36333K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z6092", "Z6092K1": "P17" }, "Z21449K2": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z36333K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P17" }, { "Z1K1": "Z6092", "Z6092K1": "P571" } ] } }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36333K2" } } } } ] }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q3406134" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36333K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z28767", "Z28767K1": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z36333K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P17" }, { "Z1K1": "Z6092", "Z6092K1": "P571" } ] }, "Z28767K2": { "Z1K1": "Z6092", "Z6092K1": "P571" }, "Z28767K3": { "Z1K1": "Z18", "Z18K1": "Z36333K2" } } } ] } ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox for magazine, comp" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 9xgzm8tl8642t8155hek22c2ctih1xr Z36679 0 86220 290425 290350 2026-07-11T21:30:27Z HenkvD 1290 No caption, no headers 290425 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z36679" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z36678", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z33328", "Z33328K1": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K2": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K3": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z37623", "Z37623K1": { "Z1K1": "Z18", "Z18K1": "Z36678K1" }, "Z37623K2": { "Z1K1": "Z6092", "Z6092K1": "P17" }, "Z37623K3": { "Z1K1": "Z18", "Z18K1": "Z36678K2" } }, { "Z1K1": "Z7", "Z7K1": "Z37623", "Z37623K1": { "Z1K1": "Z18", "Z18K1": "Z36678K1" }, "Z37623K2": { "Z1K1": "Z6092", "Z6092K1": "P421" }, "Z37623K3": { "Z1K1": "Z18", "Z18K1": "Z36678K2" } } ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox for city, comp" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } j8cw675ofh28mr603vug1j3rs0z79wp 290426 290425 2026-07-11T21:32:53Z HenkvD 1290 Entity in a section box 290426 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z36679" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z36678", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z33328", "Z33328K1": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K2": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K3": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z37644", "Z37644K1": { "Z1K1": "Z18", "Z18K1": "Z36678K1" }, "Z37644K2": "city", "Z37644K3": { "Z1K1": "Z18", "Z18K1": "Z36678K2" } }, { "Z1K1": "Z7", "Z7K1": "Z37623", "Z37623K1": { "Z1K1": "Z18", "Z18K1": "Z36678K1" }, "Z37623K2": { "Z1K1": "Z6092", "Z6092K1": "P17" }, "Z37623K3": { "Z1K1": "Z18", "Z18K1": "Z36678K2" } }, { "Z1K1": "Z7", "Z7K1": "Z37623", "Z37623K1": { "Z1K1": "Z18", "Z18K1": "Z36678K1" }, "Z37623K2": { "Z1K1": "Z6092", "Z6092K1": "P421" }, "Z37623K3": { "Z1K1": "Z18", "Z18K1": "Z36678K2" } } ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox for city, comp" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } tphy9yaajezga2s4kn6modnvnbltoo8 Z36882 0 86477 290489 288926 2026-07-12T11:23:10Z HenkvD 1290 new layout without caption, headers with infobox section 290489 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z36882" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z36881", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z33328", "Z33328K1": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K2": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K3": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z37644", "Z37644K1": { "Z1K1": "Z18", "Z18K1": "Z36881K1" }, "Z37644K2": "default", "Z37644K3": { "Z1K1": "Z18", "Z18K1": "Z36881K2" } }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q6256" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36881K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z6092", "Z6092K1": "P17" }, "Z21449K2": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z36881K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P17" }, { "Z1K1": "Z6092", "Z6092K1": "P580" } ] } }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36881K2" } } } } ] }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q24575110" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36881K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z28767", "Z28767K1": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z36881K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P17" }, { "Z1K1": "Z6092", "Z6092K1": "P580" } ] }, "Z28767K2": { "Z1K1": "Z6092", "Z6092K1": "P580" }, "Z28767K3": { "Z1K1": "Z18", "Z18K1": "Z36881K2" } } } ] } ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox for same-sex marriage, comp" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 5go7on63mgy6yrbwpbzbbieud2kawgf Z36898 0 86495 290488 288927 2026-07-12T11:21:03Z HenkvD 1290 new layout without caption, headers with infobox section 290488 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z36898" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z36897", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z33328", "Z33328K1": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K2": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K3": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z37644", "Z37644K1": { "Z1K1": "Z18", "Z18K1": "Z36897K1" }, "Z37644K2": "default", "Z37644K3": { "Z1K1": "Z18", "Z18K1": "Z36897K2" } }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q104777120" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36897K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z6092", "Z6092K1": "P547" }, "Z21449K2": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z36897K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P547" }, { "Z1K1": "Z6092", "Z6092K1": "P837" } ] } }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36897K2" } } } } ] }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q205892" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36897K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z6092", "Z6092K1": "P837" }, "Z21449K2": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z36897K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P547" }, { "Z1K1": "Z6092", "Z6092K1": "P837" } ] } }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36897K2" } } } } ] } ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox for awareness day, comp" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } sy84iyiqw72m64whia12ihsh4ldz3sw Z36917 0 86546 290483 288928 2026-07-12T08:55:39Z HenkvD 1290 new layout without caption, headers with infobox section 290483 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z36917" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z36916", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z33328", "Z33328K1": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K2": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K3": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z37644", "Z37644K1": { "Z1K1": "Z18", "Z18K1": "Z36916K1" }, "Z37644K2": "default", "Z37644K3": { "Z1K1": "Z18", "Z18K1": "Z36916K2" } }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q104777120" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36916K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z6092", "Z6092K1": "P547" }, "Z21449K2": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z36916K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P547" }, { "Z1K1": "Z6092", "Z6092K1": "P837" } ] } }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36916K2" } } } } ] }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q205892" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36916K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z6092", "Z6092K1": "P837" }, "Z21449K2": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z36916K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P547" }, { "Z1K1": "Z6092", "Z6092K1": "P837" } ] } }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36916K2" } } } } ] } ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox for holiday, comp" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 6hli0h3a5lgqlur78d60rzerjpw6coq Z36991 0 86663 290484 288929 2026-07-12T08:57:21Z HenkvD 1290 new layout without caption, headers with infobox section 290484 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z36991" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z36990", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z33328", "Z33328K1": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K2": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K3": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z37644", "Z37644K1": { "Z1K1": "Z18", "Z18K1": "Z36990K1" }, "Z37644K2": "default", "Z37644K3": { "Z1K1": "Z18", "Z18K1": "Z36990K2" } }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q2500638" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36990K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z6092", "Z6092K1": "P170" }, "Z21449K2": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z36990K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P170" }, { "Z1K1": "Z6092", "Z6092K1": "P276" } ] } }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36990K2" } } } } ] }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q17334923" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36990K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z6092", "Z6092K1": "P276" }, "Z21449K2": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z36990K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P170" }, { "Z1K1": "Z6092", "Z6092K1": "P276" } ] } }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z36990K2" } } } } ] } ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox for painting, comp" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } c6f1x4e7oobq6cdyqc8q6lueyurphui Z37404 0 87391 290485 289334 2026-07-12T11:13:23Z HenkvD 1290 new layout without caption, headers with infobox section 290485 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37404" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z37403", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z33328", "Z33328K1": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K2": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K3": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z37644", "Z37644K1": { "Z1K1": "Z18", "Z18K1": "Z37403K1" }, "Z37644K2": "default", "Z37644K3": { "Z1K1": "Z18", "Z18K1": "Z37403K2" } }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q6256" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z37403K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z6092", "Z6092K1": "P495" }, "Z21449K2": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z37403K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P178" }, { "Z1K1": "Z6092", "Z6092K1": "P495" }, { "Z1K1": "Z6092", "Z6092K1": "P577" } ] } }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z37403K2" } } } } ] }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q1361758" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z37403K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z28767", "Z28767K1": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z37403K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P178" }, { "Z1K1": "Z6092", "Z6092K1": "P495" }, { "Z1K1": "Z6092", "Z6092K1": "P577" } ] }, "Z28767K2": { "Z1K1": "Z6092", "Z6092K1": "P577" }, "Z28767K3": { "Z1K1": "Z18", "Z18K1": "Z37403K2" } } } ] }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q183888" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z37403K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z6092", "Z6092K1": "P178" }, "Z21449K2": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z37403K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P178" }, { "Z1K1": "Z6092", "Z6092K1": "P495" }, { "Z1K1": "Z6092", "Z6092K1": "P577" } ] } }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z37403K2" } } } } ] } ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox for video game, impl" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } tdv6lsig3hujiqax0f152oez2nv50vb Z37423 0 87411 290486 289394 2026-07-12T11:16:04Z HenkvD 1290 new layout without caption, headers with infobox section 290486 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37423" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z37422", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z33328", "Z33328K1": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K2": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K3": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z37644", "Z37644K1": { "Z1K1": "Z18", "Z18K1": "Z37422K1" }, "Z37644K2": "default", "Z37644K3": { "Z1K1": "Z18", "Z18K1": "Z37422K2" } }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q2221906" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z37422K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z6092", "Z6092K1": "P131" }, "Z21449K2": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z37422K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P131" }, { "Z1K1": "Z6092", "Z6092K1": "P17" }, { "Z1K1": "Z6092", "Z6092K1": "P571" } ] } }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z37422K2" } } } } ] }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q6256" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z37422K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z6092", "Z6092K1": "P17" }, "Z21449K2": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z37422K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P131" }, { "Z1K1": "Z6092", "Z6092K1": "P17" }, { "Z1K1": "Z6092", "Z6092K1": "P571" } ] } }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z37422K2" } } } } ] }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q3406134" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z37422K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z28767", "Z28767K1": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z37422K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P17" }, { "Z1K1": "Z6092", "Z6092K1": "P571" } ] }, "Z28767K2": { "Z1K1": "Z6092", "Z6092K1": "P571" }, "Z28767K3": { "Z1K1": "Z18", "Z18K1": "Z37422K2" } } } ] } ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox for bookshop, comp" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 5659mqw23cq04gbk254hon781j2p4sa Z37425 0 87413 290487 289431 2026-07-12T11:18:05Z HenkvD 1290 new layout without caption, headers with infobox section 290487 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37425" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z37424", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z33328", "Z33328K1": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K2": { "Z1K1": "Z89", "Z89K1": "" }, "Z33328K3": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z37644", "Z37644K1": { "Z1K1": "Z18", "Z18K1": "Z37424K1" }, "Z37644K2": "default", "Z37644K3": { "Z1K1": "Z18", "Z18K1": "Z37424K2" } }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q7540126" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z37424K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z6092", "Z6092K1": "P159" }, "Z21449K2": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z37424K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P159" }, { "Z1K1": "Z6092", "Z6092K1": "P17" }, { "Z1K1": "Z6092", "Z6092K1": "P571" } ] } }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z37424K2" } } } } ] }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q6256" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z37424K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z6092", "Z6092K1": "P17" }, "Z21449K2": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z37424K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P159" }, { "Z1K1": "Z6092", "Z6092K1": "P17" }, { "Z1K1": "Z6092", "Z6092K1": "P571" } ] } }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z37424K2" } } } } ] }, { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z6091", "Z6091K1": "Q3406134" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z37424K2" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z28767", "Z28767K1": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z37424K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P159" }, { "Z1K1": "Z6092", "Z6092K1": "P17" }, { "Z1K1": "Z6092", "Z6092K1": "P571" } ] }, "Z28767K2": { "Z1K1": "Z6092", "Z6092K1": "P571" }, "Z28767K3": { "Z1K1": "Z18", "Z18K1": "Z37424K2" } } } ] } ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox for organization, comp" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } ibfb19q5l6m3j3q4oqh8c1iwssyl0qo Z37550 0 87599 290427 290352 2026-07-11T21:34:03Z HenkvD 1290 New infobox layout 290427 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37550" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z36678", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z36678", "Z36678K1": { "Z1K1": "Z6091", "Z6091K1": "Q90" }, "Z36678K2": "Z1002" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z877", "Z877K2": { "Z1K1": "Z89", "Z89K1": "\u003Ctable style=\"background-color:#F8F9FA;border:1px solid #A2A9B1;border-spacing:3px;clear:right;float:right;margin:0.5em 0 0.5em 1em;padding:0.2em;width:250px;\"\u003E\u003Ctr\u003E\u003Ctd colspan=\"2\" align=\"center\" style=\"background-color:#cddeff;\"\u003EParis\u003C/td\u003E\u003C/tr\u003E\u003Ctr\u003E\u003Ctd\u003ECountry\u003C/td\u003E\u003Ctd\u003EFrance\u003C/td\u003E\u003C/tr\u003E\u003Ctr\u003E\u003Ctd\u003ETime zone\u003C/td\u003E\u003Ctd\u003EUTC+01:00\u003C/td\u003E\u003C/tr\u003E\u003C/table\u003E" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Infobox for Paris" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 87bzc0vqouy6hhc4i2cgg27n8p5qjm2 User:Arlo Barnes 2 87670 290441 290293 2026-07-12T03:51:59Z Arlo Barnes 1231 start indoeur 290441 wikitext text/x-wiki <div style="column-count: 7;"> * [[WF:aeb]] * [[WF:ar]] * [[WF:ary]] * [[WF:ase]] * [[WF:az]] * [[WF:bew]] * [[WF:bg]] * [[WF:bn]] * [[WF:brh]] * [[WF:by]] * [[WF:bzs]] * [[WF:cs]] * [[WF:dag]] * [[WF:de]] * [[WF:dz]] * [[WF:en]] * [[WF:eo]] * [[WF:es]] * [[WF:eu]] * [[WF:fi]] * [[WF:ha]] * [[WF:he]] * [[WF:hu]] * [[WF:hy]] * [[WF:id]] * [[WF:ig]] * [[WF:it]] * [[WF:ja]] * [[WF:ja-hkrt]] * [[WF:ja-latn]] * [[WF:kcg]] * [[WF:kea]] * [[WF:ko]] * [[WF:ldn]] * [[WF:lv]] * [[WF:ml]] * [[WF:ms]] * [[WF:ms-arab]] * [[WF:mul]] * [[WF:nv]] * [[WF:pl]] * [[WF:qu]] * [[WF:ru]] * [[WF:se]] * [[WF:sk]] * [[WF:su]] * [[WF:te]] * [[WF:th]] * [[WF:tlh]] * [[WF:tok]] * [[WF:tr]] * [[WF:uk]] * [[WF:und]] * [[WF:unr]] * [[WF:uz]] * [[WF:vgt]] * [[WF:vi]] * [[WF:ya]] * [[WF:yue-hans]] * [[WF:yue-hant]] * [[WF:zgh]] * [[WF:zh]] * [[WF:zh-CN]] * [[WF:zh-hans]] * [[WF:zh-hant]] * [[WF:zh-HK]] * [[WF:zh-yue]] * [[WF:zxx]] </div> n1yxuhym8aqhiu6oxhu5w8ko8mm77na Z37620 0 87674 290464 290313 2026-07-12T08:04:51Z HenkvD 1290 new layout 290464 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37620" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z35972", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z35972", "Z35972K1": { "Z1K1": "Z6091", "Z6091K1": "Q2407" }, "Z35972K2": "Z1002" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z877", "Z877K2": { "Z1K1": "Z89", "Z89K1": "\u003Ctable style=\"background-color:#F8F9FA;border:1px solid #A2A9B1;border-spacing:3px;clear:right;float:right;margin:0.5em 0 0.5em 1em;padding:0.2em;width:250px;\"\u003E\u003Ctr\u003E\u003Ctd colspan=\"2\" align=\"center\" style=\"background-color:#cddeff;\"\u003EC++\u003C/td\u003E\u003C/tr\u003E\u003Ctr\u003E\u003Ctd\u003EProgramming paradigm\u003C/td\u003E\u003Ctd\u003EObject-oriented programming\u003C/td\u003E\u003C/tr\u003E\u003Ctr\u003E\u003Ctd\u003ERelease date\u003C/td\u003E\u003Ctd\u003E1983\u003C/td\u003E\u003C/tr\u003E\u003C/table\u003E" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox c++" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } io1pcl0nd4hzobwnwdo6izi2cpdjqyz Z37621 0 87675 290467 290315 2026-07-12T08:08:31Z HenkvD 1290 new layout 290467 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37621" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z35974", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z35974", "Z35974K1": { "Z1K1": "Z6091", "Z6091K1": "Q388" }, "Z35974K2": "Z1002" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z877", "Z877K2": { "Z1K1": "Z89", "Z89K1": "\u003Ctable style=\"background-color:#F8F9FA;border:1px solid #A2A9B1;border-spacing:3px;clear:right;float:right;margin:0.5em 0 0.5em 1em;padding:0.2em;width:250px;\"\u003E\u003Ctr\u003E\u003Ctd colspan=\"2\" align=\"center\" style=\"background-color:#cddeff;\"\u003ELinux\u003C/td\u003E\u003C/tr\u003E\u003Ctr\u003E\u003Ctd\u003EProgramming language\u003C/td\u003E\u003Ctd\u003EC\u003C/td\u003E\u003C/tr\u003E\u003Ctr\u003E\u003Ctd\u003ERelease date\u003C/td\u003E\u003Ctd\u003E1991\u003C/td\u003E\u003C/tr\u003E\u003C/table\u003E" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox for Linux" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } k7lyj1ajsuv6ztbc5u8h9ztbbxsjc60 Z37625 0 87681 290416 290349 2026-07-11T17:51:47Z HenkvD 1290 Attempt to use if (HTML output) 290416 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37625" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z37623", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z37640", "Z37640K1": { "Z1K1": "Z40", "Z40K1": "Z41" }, "Z37640K2": { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z7", "Z7K1": "Z35364", "Z35364K1": { "Z1K1": "Z7", "Z7K1": "Z35036", "Z35036K1": { "Z1K1": "Z18", "Z18K1": "Z37623K2" }, "Z35036K2": [ "Z6030", "Z6036" ], "Z35036K3": [ "Z60" ], "Z35036K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P1629" } ] } }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z37623K3" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z18", "Z18K1": "Z37623K2" }, "Z21449K2": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z37623K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z18", "Z18K1": "Z37623K2" } ] } }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z37623K3" } } } } ] }, "Z37640K3": { "Z1K1": "Z89", "Z89K1": "" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox row Composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } hjhv0drgatvo7ao0ns32jr4i4egqnq5 290490 290416 2026-07-12T11:48:17Z HenkvD 1290 Wikidata item has claim? now with literal input, as argument reference gives error. How to fix? 290490 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37625" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z37623", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z37640", "Z37640K1": { "Z1K1": "Z7", "Z7K1": "Z27299", "Z27299K1": { "Z1K1": "Z7", "Z7K1": "Z6821", "Z6821K1": { "Z1K1": "Z6091", "Z6091K1": "Q90" } }, "Z27299K2": { "Z1K1": "Z6092", "Z6092K1": "P17" } }, "Z37640K2": { "Z1K1": "Z7", "Z7K1": "Z33319", "Z33319K1": [ "Z89", { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z7", "Z7K1": "Z35364", "Z35364K1": { "Z1K1": "Z7", "Z7K1": "Z35036", "Z35036K1": { "Z1K1": "Z18", "Z18K1": "Z37623K2" }, "Z35036K2": [ "Z6030", "Z6036" ], "Z35036K3": [ "Z60" ], "Z35036K4": [ "Z6092", { "Z1K1": "Z6092", "Z6092K1": "P1629" } ] } }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z37623K3" } } } }, { "Z1K1": "Z7", "Z7K1": "Z33315", "Z33315K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z7", "Z7K1": "Z21449", "Z21449K1": { "Z1K1": "Z18", "Z18K1": "Z37623K2" }, "Z21449K2": { "Z1K1": "Z7", "Z7K1": "Z30120", "Z30120K1": { "Z1K1": "Z18", "Z18K1": "Z37623K1" }, "Z30120K2": [ "Z6030", "Z6036" ], "Z30120K3": [ "Z60", "Z1360" ], "Z30120K4": [ "Z6092", { "Z1K1": "Z18", "Z18K1": "Z37623K2" } ] } }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z37623K3" } } } } ] }, "Z37640K3": { "Z1K1": "Z89", "Z89K1": "" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox row Composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 99dosadd2xppgsmp8r4rxw3cpys2fby Z37627 0 87684 290360 2026-07-11T14:44:08Z Dv103 11127 290360 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37627" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z27249", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z27249", "Z27249K1": { "Z1K1": "Z6091", "Z6091K1": "Q89" }, "Z27249K2": { "Z1K1": "Z6091", "Z6091K1": "Q1364" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1430", "Z11K2": "Ein Apfel ist eine Frucht." } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "Ein Apfel ist eine Frucht." } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } aqlb4k7ea7gvtndq9wbxkbva71s2j40 Z37628 0 87685 290363 2026-07-11T14:49:23Z Dv103 11127 290363 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37628" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z27249", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z26107", "Z26107K1": "Z1430", "Z26107K2": { "Z1K1": "Z7", "Z7K1": "Z21394", "Z21394K1": [ "Z6", { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z20643", "Z20643K1": { "Z1K1": "Z7", "Z7K1": "Z27327", "Z27327K1": { "Z1K1": "Z18", "Z18K1": "Z27249K1" }, "Z27327K2": { "Z1K1": "Z6092", "Z6092K1": "P5137" }, "Z27327K3": "Z1430" } }, "Z802K2": "Eine ", "Z802K3": "Ein " }, { "Z1K1": "Z7", "Z7K1": "Z27410", "Z27410K1": { "Z1K1": "Z7", "Z7K1": "Z27327", "Z27327K1": { "Z1K1": "Z18", "Z18K1": "Z27249K1" }, "Z27327K2": { "Z1K1": "Z6092", "Z6092K1": "P5137" }, "Z27327K3": "Z1430" }, "Z27410K2": [ "Z6091", { "Z1K1": "Z6091", "Z6091K1": "Q110786" }, { "Z1K1": "Z6091", "Z6091K1": "Q131105" } ] }, " ist ", { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z20643", "Z20643K1": { "Z1K1": "Z7", "Z7K1": "Z27327", "Z27327K1": { "Z1K1": "Z18", "Z18K1": "Z27249K2" }, "Z27327K2": { "Z1K1": "Z6092", "Z6092K1": "P5137" }, "Z27327K3": "Z1430" } }, "Z802K2": "eine ", "Z802K3": "ein " }, { "Z1K1": "Z7", "Z7K1": "Z27410", "Z27410K1": { "Z1K1": "Z7", "Z7K1": "Z27327", "Z27327K1": { "Z1K1": "Z18", "Z18K1": "Z27249K2" }, "Z27327K2": { "Z1K1": "Z6092", "Z6092K1": "P5137" }, "Z27327K3": "Z1430" }, "Z27410K2": [ "Z6091", { "Z1K1": "Z6091", "Z6091K1": "Q110786" }, { "Z1K1": "Z6091", "Z6091K1": "Q131105" } ] }, "." ] } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "German instantiating sentence, with best info" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } o4hks84cbvpnl3zz2dntzfcqcb6km65 Z37629 0 87686 290368 2026-07-11T15:09:13Z Dv103 11127 290368 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37629" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z27283", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z27283", "Z27283K1": { "Z1K1": "Z6091", "Z6091K1": "Q107635" }, "Z27283K2": { "Z1K1": "Z6091", "Z6091K1": "Q8502" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z866", "Z866K2": "백두산은 산이다" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "Baitou, montagna -\u003E \"백두산은 산이다\"" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } hfpa7x0ckonyo2zx0lrpvwh0gj9nozk Talk:Z13660 1 87687 290379 2026-07-11T15:48:39Z OMGShay 92 79812 /* Non-negative integers */ new section 290379 wikitext text/x-wiki == Non-negative integers == How comes non-negative integers won't be supported? [[User:OMGShay 92|OMGShay 92]] ([[User talk:OMGShay 92|talk]]) 15:48, 11 July 2026 (UTC) kffm9b4c5hnfw2pbw6qf0mjz3kuwtgt 290405 290379 2026-07-11T17:20:27Z Dv103 11127 /* Non-negative integers */ Reply 290405 wikitext text/x-wiki == Non-negative integers == How comes non-negative integers won't be supported? [[User:OMGShay 92|OMGShay 92]] ([[User talk:OMGShay 92|talk]]) 15:48, 11 July 2026 (UTC) :{{Z|Z13518}} can represent all non-negative integers (0 included). [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 17:20, 11 July 2026 (UTC) nmbvloh7a80ecpm3fer96e704ctoao7 Help:Arithmetic function table/Additive/preface 12 87688 290382 2026-07-11T16:30:35Z YoshiRulz 10156 Create template 290382 wikitext text/x-wiki <onlyinclude>{| class="wikitable" |+ [[d:Q4681347|Additive]] arithmetic functions for {{Z|{{{1|<noinclude>4</noinclude>}}}}} <span style="float: inline-end;">{{mini navbar|Help:Arithmetic_function_table/Additive/{{{2|<noinclude>preface</noinclude>}}}}}</span> |-</onlyinclude> ! &lt;operation&gt; | &lt;function&gt; ! ! &lt;operation&gt; | &lt;function&gt; |} 1cqa07ham9nwu9cvon7z631tjajl39k Z37630 0 87689 290383 2026-07-11T16:31:34Z Denny 81 290383 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37630" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34541", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34541", "Z34541K1": { "Z1K1": "Z7", "Z7K1": "Z6821", "Z6821K1": { "Z1K1": "Z6091", "Z6091K1": "Q170574" } } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z844", "Z844K2": { "Z1K1": "Z40", "Z40K1": "Z41" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Helen Hunt is female" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } b5egyl92klqg3e8sn58uc0juhuj8kn7 Z37631 0 87690 290385 2026-07-11T16:32:01Z Denny 81 290385 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37631" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34541", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34541", "Z34541K1": { "Z1K1": "Z7", "Z7K1": "Z6821", "Z6821K1": { "Z1K1": "Z6091", "Z6091K1": "Q430922" } } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z844", "Z844K2": { "Z1K1": "Z40", "Z40K1": "Z42" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Paul Reise is not female" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } rymfav69cbavjp3j6ufouyu1hbopubs 290387 290385 2026-07-11T16:32:21Z Denny 81 290387 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37631" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z34541", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z34541", "Z34541K1": { "Z1K1": "Z7", "Z7K1": "Z6821", "Z6821K1": { "Z1K1": "Z6091", "Z6091K1": "Q430922" } } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z844", "Z844K2": { "Z1K1": "Z40", "Z40K1": "Z42" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Paul Reiser is not female" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } nvvpe6hpj17coswjmp5izm1646ag3uh Z37632 0 87691 290388 2026-07-11T16:34:25Z Denny 81 290388 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37632" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z34541", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z32663", "Z32663K1": { "Z1K1": "Z18", "Z18K1": "Z34541K1" } }, "Z802K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z7", "Z7K1": "Z34542", "Z34542K1": { "Z1K1": "Z7", "Z7K1": "Z23756", "Z23756K1": { "Z1K1": "Z18", "Z18K1": "Z34541K1" } }, "Z34542K2": { "Z1K1": "Z6092", "Z6092K1": "P21" }, "Z34542K3": { "Z1K1": "Z6091", "Z6091K1": "Q6581072" } }, "Z802K2": { "Z1K1": "Z40", "Z40K1": "Z41" }, "Z802K3": { "Z1K1": "Z40", "Z40K1": "Z42" } }, "Z802K3": { "Z1K1": "Z40", "Z40K1": "Z42" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "if person \u0026 undeprecated gender statement = male" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } rqxi82xg7p6ihxr0m3ifieu1aoc1ak8 Z37633 0 87692 290392 2026-07-11T16:36:09Z Denny 81 290392 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37633" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6001", "Z17K2": "Z37633K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "person" } ] } } ], "Z8K2": "Z6095", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z37633" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "English pronoun Lexeme for person" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "returns the personal pronoun Lexeme to use for a given person according to Wikidata. Returns preferred or else first." } ] } } c5mj8ryioz0ogy8v4ble4t9xuw7rvcy 290394 290392 2026-07-11T16:44:11Z Denny 81 Added Z37634 to the approved list of test cases 290394 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37633" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6001", "Z17K2": "Z37633K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "person" } ] } } ], "Z8K2": "Z6095", "Z8K3": [ "Z20", "Z37634" ], "Z8K4": [ "Z14" ], "Z8K5": "Z37633" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "English pronoun Lexeme for person" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "returns the personal pronoun Lexeme to use for a given person according to Wikidata. Returns preferred or else first." } ] } } 27ucvnw63m7p090ufpv4xuy4r3yupgv 290396 290394 2026-07-11T16:45:01Z Denny 81 Added Z37635 to the approved list of test cases 290396 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37633" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6001", "Z17K2": "Z37633K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "person" } ] } } ], "Z8K2": "Z6095", "Z8K3": [ "Z20", "Z37634", "Z37635" ], "Z8K4": [ "Z14" ], "Z8K5": "Z37633" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "English pronoun Lexeme for person" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "returns the personal pronoun Lexeme to use for a given person according to Wikidata. Returns preferred or else first." } ] } } 3zpr3segqwj3y2hj2zbc890bogntlif 290399 290396 2026-07-11T16:47:08Z Denny 81 Added Z37636 to the approved list of test cases 290399 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37633" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6001", "Z17K2": "Z37633K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "person" } ] } } ], "Z8K2": "Z6095", "Z8K3": [ "Z20", "Z37634", "Z37635", "Z37636" ], "Z8K4": [ "Z14" ], "Z8K5": "Z37633" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "English pronoun Lexeme for person" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "returns the personal pronoun Lexeme to use for a given person according to Wikidata. Returns preferred or else first." } ] } } 1u5gv02mjcj4d4kklnipuwh4ewhtlk6 290401 290399 2026-07-11T16:47:46Z Denny 81 Added Z37637 to the approved list of test cases 290401 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37633" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6001", "Z17K2": "Z37633K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "person" } ] } } ], "Z8K2": "Z6095", "Z8K3": [ "Z20", "Z37634", "Z37635", "Z37636", "Z37637" ], "Z8K4": [ "Z14" ], "Z8K5": "Z37633" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "English pronoun Lexeme for person" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "returns the personal pronoun Lexeme to use for a given person according to Wikidata. Returns preferred or else first." } ] } } qty9txgy1tlq3th5gbtlaa79rk65b76 290404 290401 2026-07-11T17:11:20Z Denny 81 Added Z37638 to the approved list of test cases 290404 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37633" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6001", "Z17K2": "Z37633K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "person" } ] } } ], "Z8K2": "Z6095", "Z8K3": [ "Z20", "Z37634", "Z37635", "Z37636", "Z37637", "Z37638" ], "Z8K4": [ "Z14" ], "Z8K5": "Z37633" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "English pronoun Lexeme for person" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "returns the personal pronoun Lexeme to use for a given person according to Wikidata. Returns preferred or else first." } ] } } mgko6ubhmjbid9gpxr5ycsf9n7cab7s Z37634 0 87693 290393 2026-07-11T16:44:02Z Denny 81 290393 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37634" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z37633", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z37633", "Z37633K1": { "Z1K1": "Z7", "Z7K1": "Z6821", "Z6821K1": { "Z1K1": "Z6091", "Z6091K1": "Q100967912" } } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z19287", "Z19287K2": { "Z1K1": "Z6095", "Z6095K1": "L371" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Lola Petticrew: they from pronoun" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } g70i8kpj7ufw05el8p1p2mzcte8tz5n Z37635 0 87694 290395 2026-07-11T16:44:53Z Denny 81 290395 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37635" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z37633", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z37633", "Z37633K1": { "Z1K1": "Z7", "Z7K1": "Z6821", "Z6821K1": { "Z1K1": "Z6091", "Z6091K1": "Q76" } } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z19287", "Z19287K2": { "Z1K1": "Z6095", "Z6095K1": "L485" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Barack Obama: he" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 16nfqdlk2boqvzpnb715t2ky80j2b4w Z37636 0 87695 290397 2026-07-11T16:45:27Z Denny 81 290397 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37636" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z37633", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z37633", "Z37633K1": { "Z1K1": "Z7", "Z7K1": "Z6821", "Z6821K1": { "Z1K1": "Z6091", "Z6091K1": "Q567" } } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z19287", "Z19287K2": { "Z1K1": "Z6095", "Z6095K1": "L484" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 4020ljmcugt68k81dchr1m1ug1nkl1h 290398 290397 2026-07-11T16:45:39Z Denny 81 290398 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37636" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z37633", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z37633", "Z37633K1": { "Z1K1": "Z7", "Z7K1": "Z6821", "Z6821K1": { "Z1K1": "Z6091", "Z6091K1": "Q567" } } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z19287", "Z19287K2": { "Z1K1": "Z6095", "Z6095K1": "L484" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Angela Merkel: she" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } sq3pdkgh4pussrqg0y93ua1gw092xxk Z37637 0 87696 290400 2026-07-11T16:47:35Z Denny 81 290400 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37637" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z37633", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z37633", "Z37633K1": { "Z1K1": "Z7", "Z7K1": "Z6821", "Z6821K1": { "Z1K1": "Z6091", "Z6091K1": "Q21062531" } } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z19287", "Z19287K2": { "Z1K1": "Z6095", "Z6095K1": "L485" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "N.D. Stevenson: he" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } h3524aoo4ury5sh477kam46kody7p2o 290402 290400 2026-07-11T16:48:07Z Denny 81 290402 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37637" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z37633", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z37633", "Z37633K1": { "Z1K1": "Z7", "Z7K1": "Z6821", "Z6821K1": { "Z1K1": "Z6091", "Z6091K1": "Q21062531" } } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z19287", "Z19287K2": { "Z1K1": "Z6095", "Z6095K1": "L485" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "N.D. Stevenson: he from pronoun" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } g1mtnqbjtklmyu3lmp4fgzaqog4pn0t Z37638 0 87697 290403 2026-07-11T17:09:01Z Denny 81 290403 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37638" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z37633", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z37633", "Z37633K1": { "Z1K1": "Z7", "Z7K1": "Z6821", "Z6821K1": { "Z1K1": "Z6091", "Z6091K1": "Q99579757" } } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z19287", "Z19287K2": { "Z1K1": "Z6095", "Z6095K1": "L303651" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Maia Kobabe: e" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 8f4k69bxams05vqqi0ssj2d6edbn0ix Z37639 0 87698 290408 2026-07-11T17:25:48Z Dv103 11127 290408 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37639" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z37633", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z37633", "Z37633K1": { "Z1K1": "Z7", "Z7K1": "Z6821", "Z6821K1": { "Z1K1": "Z6091", "Z6091K1": "Q933508" } } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z19287", "Z19287K2": { "Z1K1": "Z6095", "Z6095K1": "L485" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Carlo Conti: he" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Item without an explicit P6553 claim" } ] } } 370wk7vi33r9bu26y4vrcu17qhii3xn Z37640 0 87699 290409 2026-07-11T17:30:34Z HenkvD 1290 if function (like Z802) typed with HTML types 290409 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37640" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z40", "Z17K2": "Z37640K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "condition" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z89", "Z17K2": "Z37640K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "then" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z89", "Z17K2": "Z37640K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "else" } ] } } ], "Z8K2": "Z89", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z37640" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "if (HTML output)" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "conditional HTML" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "if function (like Z802) typed with HTML types" } ] } } na7p2ohrwivss59mxa0j3e3py42z9xn 290412 290409 2026-07-11T17:33:56Z HenkvD 1290 Added Z37641 and Z37642 to the approved list of test cases 290412 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37640" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z40", "Z17K2": "Z37640K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "condition" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z89", "Z17K2": "Z37640K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "then" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z89", "Z17K2": "Z37640K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "else" } ] } } ], "Z8K2": "Z89", "Z8K3": [ "Z20", "Z37641", "Z37642" ], "Z8K4": [ "Z14" ], "Z8K5": "Z37640" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "if (HTML output)" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "conditional HTML" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "if function (like Z802) typed with HTML types" } ] } } tpg75f9wrk1b57hf9bmg714m0nb2izd 290414 290412 2026-07-11T17:36:06Z HenkvD 1290 Added Z37643 to the approved list of implementations 290414 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37640" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z40", "Z17K2": "Z37640K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "condition" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z89", "Z17K2": "Z37640K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "then" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z89", "Z17K2": "Z37640K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "else" } ] } } ], "Z8K2": "Z89", "Z8K3": [ "Z20", "Z37641", "Z37642" ], "Z8K4": [ "Z14", "Z37643" ], "Z8K5": "Z37640" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "if (HTML output)" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "conditional HTML" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "if function (like Z802) typed with HTML types" } ] } } 1efd3redhztkvi2et5dgebkgakax551 290435 290414 2026-07-11T21:56:51Z Dv103 11127 +it 290435 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37640" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z40", "Z17K2": "Z37640K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "condition" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "condizione" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z89", "Z17K2": "Z37640K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "then" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "se vero" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z89", "Z17K2": "Z37640K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "else" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "se falso" } ] } } ], "Z8K2": "Z89", "Z8K3": [ "Z20", "Z37641", "Z37642" ], "Z8K4": [ "Z14", "Z37643" ], "Z8K5": "Z37640" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "if (HTML output)" }, { "Z1K1": "Z11", "Z11K1": "Z1787", "Z11K2": "se (output HTML)" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31", { "Z1K1": "Z31", "Z31K1": "Z1002", "Z31K2": [ "Z6", "conditional HTML" ] } ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "if function (like Z802) typed with HTML types" } ] } } ef4zkn8vtlxl62pttupooo69qfsdu0m Z37641 0 87700 290410 2026-07-11T17:32:21Z HenkvD 1290 if (true,A,B) = A 290410 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37641" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z37640", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z37640", "Z37640K1": { "Z1K1": "Z40", "Z40K1": "Z41" }, "Z37640K2": { "Z1K1": "Z89", "Z89K1": "A" }, "Z37640K3": { "Z1K1": "Z89", "Z89K1": "B" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z877", "Z877K2": { "Z1K1": "Z89", "Z89K1": "A" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "if (true,A,B) = A" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } tvufnm6kfy3tid09it6g7kqmlhmdmpu Z37642 0 87701 290411 2026-07-11T17:33:40Z HenkvD 1290 if (false,A,B) = B 290411 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37642" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z37640", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z37640", "Z37640K1": { "Z1K1": "Z40", "Z40K1": "Z42" }, "Z37640K2": { "Z1K1": "Z89", "Z89K1": "A" }, "Z37640K3": { "Z1K1": "Z89", "Z89K1": "B" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z877", "Z877K2": { "Z1K1": "Z89", "Z89K1": "B" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "if (false,A,B) = B" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } a7vhae0zgh199yay4kdt82pgb4cojtp Z37643 0 87702 290413 2026-07-11T17:35:43Z HenkvD 1290 if (HTML output), composition 290413 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37643" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z37640", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z802", "Z802K1": { "Z1K1": "Z18", "Z18K1": "Z37640K1" }, "Z802K2": { "Z1K1": "Z18", "Z18K1": "Z37640K2" }, "Z802K3": { "Z1K1": "Z18", "Z18K1": "Z37640K3" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "if (HTML output), composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 6mrwh63puity8auiutd69am05do1uoi Help:Arithmetic function table/Additive/Byte 12 87703 290415 2026-07-11T17:49:00Z YoshiRulz 10156 Create page 290415 wikitext text/x-wiki {{Help:Arithmetic function table/Additive/preface|Z80|Byte}} |- ! 0<br><small>[[d:Q2767837|Q2767837]]</small> | colspan="3" | &mdash; |- ! 1<br><small>[[d:Q68019776|Q68019776]]</small> | colspan="3" | &mdash; |- ! colspan="3" | |- ! rowspan="3" | incr(n)<br><small>[[d:Q35766993|Q35766993]]</small> ! wrapping<br><small>[[d:Q1423448|Q1423448]]</small> | {{Z|22380}} |- ! clamping<br><small>[[d:Q913725|Q913725]]</small> | &mdash; |- ! throwing<br><small>[[d:Q471748|Q471748]]</small> | &mdash; |- ! rowspan="3" | decr(n)<br><small>[[d:Q35767070|Q35767070]]</small> ! wrapping<br><small>[[d:Q1423448|Q1423448]]</small> | {{Z|24669}} |- ! clamping<br><small>[[d:Q913725|Q913725]]</small> | &mdash; |- ! throwing<br><small>[[d:Q471748|Q471748]]</small> | &mdash; |- ! colspan="3" | |- ! {{nowrap|n<sub>1</sub> + n<sub>2</sub>}}<br><small>[[d:Q32043|Q32043]]</small> | colspan="3" | &mdash; |- ! {{nowrap|n<sub>1</sub> &minus; n<sub>2</sub>}}<br><small>[[d:Q40754|Q40754]]</small> | colspan="3" | &mdash; |} 6ne0hazl00fd8s48qr1i68c6i2zzrih 290454 290415 2026-07-12T07:41:05Z YoshiRulz 10156 Redesign 290454 wikitext text/x-wiki {{Help:Arithmetic function table/Additive/preface|Z80|Byte}} |- ! 0<br><small>[[d:Q2767837|Q2767837]]</small> | colspan="3" | &mdash; |- ! 1<br><small>[[d:Q68019776|Q68019776]]</small> | colspan="3" | &mdash; |- ! colspan="4" | |- ! ! <big>&#x27F2;</big><br>wrapping<br><small>[[d:Q1423448|Q1423448]]</small> ! <big>&#x21E5;</big><br>clamping<br><small>[[d:Q913725|Q913725]]</small> ! !<br>throwing<br><small>[[d:Q471748|Q471748]]</small> |- ! incr(n)<br><small>[[d:Q35766993|Q35766993]]</small> | {{Z|22380}} | &mdash; | &mdash; |- ! decr(n)<br><small>[[d:Q35767070|Q35767070]]</small> | {{Z|24669}} | &mdash; | &mdash; |- ! colspan="4" | |- ! {{nowrap|n<sub>1</sub> + n<sub>2</sub>}}<br><small>[[d:Q32043|Q32043]]</small> | colspan="3" | &mdash; |- ! {{nowrap|n<sub>1</sub> &minus; n<sub>2</sub>}}<br><small>[[d:Q40754|Q40754]]</small> | colspan="3" | &mdash; |} 2bz70vcter8elfterqwp0sb43sm4ucc Z37644 0 87704 290417 2026-07-11T18:11:13Z HenkvD 1290 a table row with colspan=2 and a color scheme 290417 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37644" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z37644K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "section" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z37644K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "color scheme" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z37644K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "language" } ] } } ], "Z8K2": "Z89", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z37644" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox section" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "a table row with colspan=2 and a color scheme" } ] } } k7r2olnps22z9sg9dxbp07fh66ml7li 290419 290417 2026-07-11T18:26:25Z HenkvD 1290 Added Z37645 to the approved list of test cases 290419 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37644" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z37644K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "section" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z37644K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "color scheme" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z37644K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "language" } ] } } ], "Z8K2": "Z89", "Z8K3": [ "Z20", "Z37645" ], "Z8K4": [ "Z14" ], "Z8K5": "Z37644" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox section" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "a table row with colspan=2 and a color scheme" } ] } } 29c0zkxvl8igufvrswfwhq2jk7ylvu7 290421 290419 2026-07-11T18:35:59Z HenkvD 1290 Added Z37646 to the approved list of implementations 290421 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37644" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6091", "Z17K2": "Z37644K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "section" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z37644K2", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "color scheme" } ] } }, { "Z1K1": "Z17", "Z17K1": "Z60", "Z17K2": "Z37644K3", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "language" } ] } } ], "Z8K2": "Z89", "Z8K3": [ "Z20", "Z37645" ], "Z8K4": [ "Z14", "Z37646" ], "Z8K5": "Z37644" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox section" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "a table row with colspan=2 and a color scheme" } ] } } l1dehf1b0mwuq3cdbslsw0iagssbrzw Z37645 0 87705 290418 2026-07-11T18:26:00Z HenkvD 1290 Infobox section Paris 290418 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37645" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z37644", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z37644", "Z37644K1": { "Z1K1": "Z6091", "Z6091K1": "Q90" }, "Z37644K2": "city", "Z37644K3": "Z1002" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z877", "Z877K2": { "Z1K1": "Z89", "Z89K1": "\u003Ctr\u003E\u003Ctd colspan=2 align=center style=\"background-color:#cddeff;\"\u003EParis\u003C/td\u003E\u003C/tr\u003E" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Infobox section Paris" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 0t97ruwae0eenfjnrg1toenoxatbpvh 290423 290418 2026-07-11T21:25:06Z HenkvD 1290 290423 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37645" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z37644", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z37644", "Z37644K1": { "Z1K1": "Z6091", "Z6091K1": "Q90" }, "Z37644K2": "city", "Z37644K3": "Z1002" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z877", "Z877K2": { "Z1K1": "Z89", "Z89K1": "\u003Ctr\u003E\u003Ctd colspan=\"2\" align=\"center\" style=\"background-color:#cddeff;\"\u003EParis\u003C/td\u003E\u003C/tr\u003E" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Infobox section Paris" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } k4czkdj0dyypb4008byhuau69u9xggt Z37646 0 87706 290420 2026-07-11T18:35:13Z HenkvD 1290 infobox section, composition, first attempt 290420 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37646" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z37644", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z11156", "Z11156K1": { "Z1K1": "Z7", "Z7K1": "Z11156", "Z11156K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z18", "Z18K1": "Z37644K1" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z37644K3" } }, "Z11156K2": "td colspan=2 align=center style=\"background-color:#cddeff;\"" }, "Z11156K2": "tr" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox section, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 738wjstypcwk40vdnqlf6lerwkrd5fr 290422 290420 2026-07-11T21:24:00Z HenkvD 1290 infobox section, composition 290422 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37646" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z37644", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z27926", "Z27926K1": [ "Z89", { "Z1K1": "Z89", "Z89K1": "\u003Ctr\u003E" }, { "Z1K1": "Z7", "Z7K1": "Z27873", "Z27873K1": { "Z1K1": "Z89", "Z89K1": "TEST" }, "Z27873K2": "td", "Z27873K3": [ "Z6", "colspan", "align", "style" ], "Z27873K4": [ "Z6", "2", "center", "background-color:#cddeff;" ] }, { "Z1K1": "Z89", "Z89K1": "\u003C/tr\u003E" } ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox section, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } se6vj33bzvvpt47gqo1znq4pqos26xu 290424 290422 2026-07-11T21:29:04Z HenkvD 1290 + section text 290424 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37646" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z37644", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z27926", "Z27926K1": [ "Z89", { "Z1K1": "Z89", "Z89K1": "\u003Ctr\u003E" }, { "Z1K1": "Z7", "Z7K1": "Z27873", "Z27873K1": { "Z1K1": "Z7", "Z7K1": "Z27868", "Z27868K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z18", "Z18K1": "Z37644K1" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z37644K3" } } } }, "Z27873K2": "td", "Z27873K3": [ "Z6", "colspan", "align", "style" ], "Z27873K4": [ "Z6", "2", "center", "background-color:#cddeff;" ] }, { "Z1K1": "Z89", "Z89K1": "\u003C/tr\u003E" } ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox section, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } htah8ldmvefdnd7o3pfbhf35u9i1uct 290434 290424 2026-07-11T21:56:25Z HenkvD 1290 + color scheme 290434 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37646" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z37644", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z27926", "Z27926K1": [ "Z89", { "Z1K1": "Z89", "Z89K1": "\u003Ctr\u003E" }, { "Z1K1": "Z7", "Z7K1": "Z27873", "Z27873K1": { "Z1K1": "Z7", "Z7K1": "Z27868", "Z27868K1": { "Z1K1": "Z7", "Z7K1": "Z10771", "Z10771K1": { "Z1K1": "Z7", "Z7K1": "Z24766", "Z24766K1": { "Z1K1": "Z18", "Z18K1": "Z37644K1" }, "Z24766K2": { "Z1K1": "Z18", "Z18K1": "Z37644K3" } } } }, "Z27873K2": "td", "Z27873K3": [ "Z6", "colspan", "align", "style" ], "Z27873K4": [ "Z6", "2", "center", { "Z1K1": "Z7", "Z7K1": "Z37647", "Z37647K1": { "Z1K1": "Z18", "Z18K1": "Z37644K2" } } ] }, { "Z1K1": "Z89", "Z89K1": "\u003C/tr\u003E" } ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox section, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 51ri1rizvse06796r9gyjg16wozz8x3 Z37647 0 87707 290428 2026-07-11T21:42:51Z HenkvD 1290 infobox color scheme 290428 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37647" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z37647K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "color scheme" } ] } } ], "Z8K2": "Z6", "Z8K3": [ "Z20" ], "Z8K4": [ "Z14" ], "Z8K5": "Z37647" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox color scheme" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Retruns the color for a color scheme, for instance background-color:#cddeff; for color scheme \"city\"" } ] } } 117e4ilyzhm8273lo6v7fkgwm6q79am 290430 290428 2026-07-11T21:45:15Z HenkvD 1290 Added Z37648 to the approved list of test cases 290430 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37647" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z37647K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "color scheme" } ] } } ], "Z8K2": "Z6", "Z8K3": [ "Z20", "Z37648" ], "Z8K4": [ "Z14" ], "Z8K5": "Z37647" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox color scheme" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Retruns the color for a color scheme, for instance background-color:#cddeff; for color scheme \"city\"" } ] } } 42j02qg9wi9mlpqrvmp41bq4s0qei0o 290431 290430 2026-07-11T21:53:05Z HenkvD 1290 typo 290431 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37647" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z37647K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "color scheme" } ] } } ], "Z8K2": "Z6", "Z8K3": [ "Z20", "Z37648" ], "Z8K4": [ "Z14" ], "Z8K5": "Z37647" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox color scheme" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Returns the color for a color scheme, for instance background-color:#cddeff; for color scheme \"city\"" } ] } } 3kl4vrnytnjr3a4yb07qdc0xohvkp5f 290433 290431 2026-07-11T21:54:31Z HenkvD 1290 Added Z37649 to the approved list of implementations 290433 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37647" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z37647K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "color scheme" } ] } } ], "Z8K2": "Z6", "Z8K3": [ "Z20", "Z37648" ], "Z8K4": [ "Z14", "Z37649" ], "Z8K5": "Z37647" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox color scheme" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Returns the color for a color scheme, for instance background-color:#cddeff; for color scheme \"city\"" } ] } } ai8vv0rmdw83u4nfmjqezci7y7cj3sg 290439 290433 2026-07-11T22:07:48Z HenkvD 1290 Added Z37650 to the approved list of test cases 290439 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37647" }, "Z2K2": { "Z1K1": "Z8", "Z8K1": [ "Z17", { "Z1K1": "Z17", "Z17K1": "Z6", "Z17K2": "Z37647K1", "Z17K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "color scheme" } ] } } ], "Z8K2": "Z6", "Z8K3": [ "Z20", "Z37648", "Z37650" ], "Z8K4": [ "Z14", "Z37649" ], "Z8K5": "Z37647" }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox color scheme" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Returns the color for a color scheme, for instance background-color:#cddeff; for color scheme \"city\"" } ] } } jr5ydbqjhj19ri36r757m5ga3ffpn0o Z37648 0 87708 290429 2026-07-11T21:45:00Z HenkvD 1290 background-color:#cddeff; for color scheme "city" 290429 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37648" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z37647", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z37647", "Z37647K1": "city" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z866", "Z866K2": "background-color:#cddeff;" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "#cddeff for color scheme \"city\"" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } mqxd7ygvbzfiq6yjj5wzfxzxmr2w91e Z37649 0 87709 290432 2026-07-11T21:54:10Z HenkvD 1290 infobox color scheme, composition 290432 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37649" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z37647", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z22193", "Z22193K1": { "Z1K1": "Z18", "Z18K1": "Z37647K1" }, "Z22193K2": [ "Z6" ], "Z22193K3": [ "Z6", "background-color:yellow;", "background-color:#cddeff;", "background-color:#cddeff;" ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox color scheme, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Returns the color for a color scheme, for instance background-color:#cddeff; for color scheme \"city\"" } ] } } hqcasplaccekl4rkmr3ju5dpn696hi9 290436 290432 2026-07-11T22:03:09Z HenkvD 1290 Fix options 290436 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37649" }, "Z2K2": { "Z1K1": "Z14", "Z14K1": "Z37647", "Z14K2": { "Z1K1": "Z7", "Z7K1": "Z22193", "Z22193K1": { "Z1K1": "Z18", "Z18K1": "Z37647K1" }, "Z22193K2": [ "Z6", "test", "city" ], "Z22193K3": [ "Z6", "background-color:yellow;", "background-color:#cddeff;", "background-color:#cddeff;" ] } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox color scheme, composition" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Returns the color for a color scheme, for instance background-color:#cddeff; for color scheme \"city\"" } ] } } fvewx4pe07g853aiyk92ntx79bsvnwv Z37650 0 87710 290437 2026-07-11T22:05:31Z HenkvD 1290 background-color:yellow; 290437 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37650" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z37647", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z37647", "Z37647K1": "test" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z866", "Z866K2": "background-color:yellow;" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "color yellow for test" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } alkrc7mi5cclxqacvr572mcw51s5n6k 290438 290437 2026-07-11T22:07:28Z HenkvD 1290 290438 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37650" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z37647", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z37647", "Z37647K1": "test" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z866", "Z866K2": "background-color:yellow;" } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "color yellow for color scheme \"test\"" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } fy0rcg4oh2ae8hrkmx5yg2xdyyp26hq Z37651 0 87711 290443 2026-07-12T05:33:53Z Autom 448 lägger till test som inte fungerar men används i en artikel 290443 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37651" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32855", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32855", "Z32855K1": { "Z1K1": "Z6091", "Z6091K1": "Q8736" }, "Z32855K2": { "Z1K1": "Z6091", "Z6091K1": "Q625298" }, "Z32855K3": { "Z1K1": "Z6091", "Z6091K1": "Q142" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "Versaillesfreden är ett fredsfördrag i Frankrike." } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 5earj0ffktu8dxg4useuqqu4n75xyef 290445 290443 2026-07-12T05:34:47Z Autom 448 290445 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37651" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z32855", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z32855", "Z32855K1": { "Z1K1": "Z6091", "Z6091K1": "Q8736" }, "Z32855K2": { "Z1K1": "Z6091", "Z6091K1": "Q625298" }, "Z32855K3": { "Z1K1": "Z6091", "Z6091K1": "Q142" } }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z14392", "Z14392K2": { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "Versaillesfreden är ett fredsfördrag i Frankrike." } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1592", "Z11K2": "Versaillesfreden är ett fredsfördrag i Frankrike." } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } ssf6cuqen51h2ggnuq1rij1gd7tm2j6 Z37652 0 87712 290455 2026-07-12T07:49:00Z HenkvD 1290 Infobox Mardi Gras Film Festival 290455 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37652" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z35968", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z35968", "Z35968K1": { "Z1K1": "Z6091", "Z6091K1": "Q6758653" }, "Z35968K2": "Z1004" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z877", "Z877K2": { "Z1K1": "Z89", "Z89K1": "To be fillled later" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Infobox Mardi Gras Film Festival" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } 158p2jqrhugpcfgf9eogp7b5bbmpoau 290458 290455 2026-07-12T07:53:38Z HenkvD 1290 new layout 290458 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37652" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z35968", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z35968", "Z35968K1": { "Z1K1": "Z6091", "Z6091K1": "Q6758653" }, "Z35968K2": "Z1004" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z877", "Z877K2": { "Z1K1": "Z89", "Z89K1": "\u003Ctable style=\"background-color:#F8F9FA;border:1px solid #A2A9B1;border-spacing:3px;clear:right;float:right;margin:0.5em 0 0.5em 1em;padding:0.2em;width:250px;\"\u003E\u003Ctr\u003E\u003Ctd colspan=\"2\" align=\"center\" style=\"background-color:#cddeff;\"\u003EMardi Gras Film Festival\u003C/td\u003E\u003C/tr\u003E\u003Ctr\u003E\u003Ctd\u003EPays\u003C/td\u003E\u003Ctd\u003EAustralie\u003C/td\u003E\u003C/tr\u003E\u003Ctr\u003E\u003Ctd\u003EDate d'instauration\u003C/td\u003E\u003Ctd\u003E1978\u003C/td\u003E\u003C/tr\u003E\u003C/table\u003E" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "Infobox Mardi Gras Film Festival" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } a5pniuszbwitpay7isb8adrxaaowm8q Z37653 0 87713 290459 2026-07-12T07:56:51Z HenkvD 1290 infobox Berlin Pride 290459 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37653" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z35970", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z35970", "Z35970K1": { "Z1K1": "Z6091", "Z6091K1": "Q4892460" }, "Z35970K2": "Z1430" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z877", "Z877K2": { "Z1K1": "Z89", "Z89K1": "to be filled later" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox Berlin Pride" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } fkf9f2ejdk6se791ldi817uqyrthza7 290462 290459 2026-07-12T08:00:32Z HenkvD 1290 new layout 290462 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37653" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z35970", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z35970", "Z35970K1": { "Z1K1": "Z6091", "Z6091K1": "Q4892460" }, "Z35970K2": "Z1430" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z877", "Z877K2": { "Z1K1": "Z89", "Z89K1": "\u003Ctable style=\"background-color:#F8F9FA;border:1px solid #A2A9B1;border-spacing:3px;clear:right;float:right;margin:0.5em 0 0.5em 1em;padding:0.2em;width:250px;\"\u003E\u003Ctr\u003E\u003Ctd colspan=\"2\" align=\"center\" style=\"background-color:#cddeff;\"\u003EBerliner Christopher Street Day\u003C/td\u003E\u003C/tr\u003E\u003Ctr\u003E\u003Ctd\u003ELand\u003C/td\u003E\u003Ctd\u003EDeutschland\u003C/td\u003E\u003C/tr\u003E\u003Ctr\u003E\u003Ctd\u003EErstellungsdatum\u003C/td\u003E\u003Ctd\u003E1979\u003C/td\u003E\u003C/tr\u003E\u003C/table\u003E" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox Berlin Pride" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } d9u0ldy5q2p0fo4i2m9c5po11b8nhqp Z37654 0 87714 290469 2026-07-12T08:13:11Z HenkvD 1290 new layout 290469 zobject text/plain { "Z1K1": "Z2", "Z2K1": { "Z1K1": "Z6", "Z6K1": "Z37654" }, "Z2K2": { "Z1K1": "Z20", "Z20K1": "Z35976", "Z20K2": { "Z1K1": "Z7", "Z7K1": "Z35976", "Z35976K1": { "Z1K1": "Z6091", "Z6091K1": "Q698" }, "Z35976K2": "Z1002" }, "Z20K3": { "Z1K1": "Z7", "Z7K1": "Z877", "Z877K2": { "Z1K1": "Z89", "Z89K1": "\u003Ctable style=\"background-color:#F8F9FA;border:1px solid #A2A9B1;border-spacing:3px;clear:right;float:right;margin:0.5em 0 0.5em 1em;padding:0.2em;width:250px;\"\u003E\u003Ctr\u003E\u003Ctd colspan=\"2\" align=\"center\" style=\"background-color:#cddeff;\"\u003EMozilla Firefox\u003C/td\u003E\u003C/tr\u003E\u003Ctr\u003E\u003Ctd\u003EProgramming language\u003C/td\u003E\u003Ctd\u003EC\u003C/td\u003E\u003C/tr\u003E\u003Ctr\u003E\u003Ctd\u003ERelease date\u003C/td\u003E\u003Ctd\u003E2002\u003C/td\u003E\u003C/tr\u003E\u003C/table\u003E" } } }, "Z2K3": { "Z1K1": "Z12", "Z12K1": [ "Z11", { "Z1K1": "Z11", "Z11K1": "Z1002", "Z11K2": "infobox Mozilla Firefox" } ] }, "Z2K4": { "Z1K1": "Z32", "Z32K1": [ "Z31" ] }, "Z2K5": { "Z1K1": "Z12", "Z12K1": [ "Z11" ] } } i8430gf9ksor6fn2qp8litzxkjz1aae