Wikifunctions
wikifunctionswiki
https://www.wikifunctions.org/wiki/Wikifunctions:Main_Page
MediaWiki 1.46.0-wmf.23
first-letter
Media
Special
Talk
User
User talk
Wikifunctions
Wikifunctions talk
File
File talk
MediaWiki
MediaWiki talk
Template
Template talk
Help
Help talk
Category
Category talk
TimedText
TimedText talk
Module
Module talk
Translations
Translations talk
Event
Event talk
Wikifunctions:Requests for deletions
4
1696
263843
263481
2026-04-08T03:08:05Z
SpBot
978
archive 2 sections: 2 to [[Wikifunctions:Requests for deletions/Archive/2026/03]] (after section [[Wikifunctions:Requests for deletions/Archive/2026/03#Z31198,_Z31199,_Z31200|Z31198,_Z31199,_Z31200]]) - previous edit: [[:User:Ameisenigel|Ameisenigel]], 2026-04-06 17:02
263843
wikitext
text/x-wiki
<noinclude>__NEWSECTIONLINK__ __FORCETOC__</noinclude>
Functions or implementations or tests which do not work properly, do not meet notability criteria or are duplicates of another object can be deleted. Please nominate items for deletions under the "Requests for deletion" section below.
If it is obvious vandalism, just report it in [[Wikifunctions:Report vandalism]], or ping an [[Special:ListAdmins|administrator]]. Contact can also be made with an administrator on [https://t.me/Wikifunctions Telegram] or IRC [irc://irc.libera.chat/wikipedia-abstract #wikipedia-abstract].
If it is a predefined object (its ZID is less than 10000), please see [[Wikifunctions:Report a technical problem]].
{{Autoarchive resolved section
|age = 1
|archive = ((FULLPAGENAME))/Archive/((year))/((month:##))
|level = 2
}}
{{Archives|{{Special:PrefixIndex/Wikifunctions:Requests for deletions/Archive/|stripprefix=1}}}}
= Requests for deletion =
4co0l6sd6ufatjsi7zh407d04wvad27
Wikifunctions:Report vandalism
4
1723
263924
255360
2026-04-08T11:01:39Z
ChaoticVermillion
31127
add request
263924
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 -->
== Promotional nonsense ==
[[Z33255]], [[Z33256]], [[Z33257]]. Delete as promotional nonsense. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 11:01, 8 April 2026 (UTC)
31zl5nqplcx1m3eqvj96do82y71om3n
Wikifunctions:Community portal
4
1724
263715
263616
2026-04-07T13:28:50Z
Hakimi97
198
/* Tasks listed by users */
263715
wikitext
text/x-wiki
<div style="border:1px solid grey; margin:1em 4em 2em; padding:1.5em 1em;">
<span style="font-size:2em;">Welcome to the '''community portal for Wikifunctions'''!</span>
This is the central place to document Wikifunctions's to-do lists and ongoing project work. [To-do!]
[[Special:MyLanguage/Wikifunctions:Catalogue|The catalogue of functions]] is a good place to start.
For discussions, see [[Wikifunctions:Project chat]].
[[Category:Project]]
</div>
== Useful links ==
* [[Wikifunctions:List of policies and guidelines]]
* [[Special:MyLanguage/Help:Contents|Help:Contents]]
* [[Special:MyLanguage/Wikifunctions:Catalogue|Wikifunctions:Catalogue of functions]]
** [[Wikifunctions:Suggest a function]]
* [[Wikifunctions:Type proposals]]
* [[Special:MyLanguage/Wikifunctions:User scripts|Wikifunctions:User scripts]]
* [[Wikifunctions:Requests for user groups]]
* [[Wikifunctions:Requests for deletions]]
== Noticeboards ==
* [[Wikifunctions:Project chat]]
* [[Wikifunctions:Administrators' noticeboard]]
* [[Wikifunctions:Report vandalism]]
* [[Wikifunctions:Translators' noticeboard]]
== Task centre ==
=== Perennial tasks ===
<!--Feel free to add new tasks to this section. However, if they are one-off requests, please add them to Tasks listed by users-->
* [[File:OOjs UI icon language-ltr.svg|class=skin-invert]] [[Special:MyLanguage/Help:Multilingual|Translation]]:
**[[Special:Random|Add a translation to a random object]]
**[[Special:MyLanguage/Category:Policy|Add a translation to a policy page]]
**[[Special:ListMissingLabels|See any objects without a label in a given language]]
**[[Special:PageTranslation]]
**[[Special:LanguageStats|Language statistics]]
*[[File:Octicons-tools.svg|15px|class=skin-invert]] [[:Category:Tracking categories|Tracking categories]]
* [[File:Octicons-tools.svg|15px|class=skin-invert]] [[Wikifunctions:Request for cleanup|Requests for cleanup]]
=== Tasks listed by users ===
:''Example:''
:* Fix [[Special:Random|this implementation]] please. {{User|Example2}}
::{{Done}}. Thanks for pointing that out! {{User|Example}}
<hr/>
[signing to enable reply link:--[[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:27, 6 May 2024 (UTC)
:Heya, I tried to make a {{Z|Z29010}} implementation in composition <small>({{Z|Z29012}})</small>, but it errors out: <code>Unable to convert to canonical form (path to the problem: "Z22K2.K1.K1.K2.Z5K2.Z528K1.Z99K1.Z7K1.Z8K4.[ 1 ].Z14K2.Z26107K2.Z21394K1.[ 1 ].Z10771K1.Z23753K2.Z18K1.{"Z1K1":"Z18","Z6K1":"Z29010K5","Z18K1":""}")</code> - why does this happen, and how would I fix it? I tried to use {{Z|Z28030}} as a guide, but for a first dive into composition I may have taken on something a bit large. [[User:Infernostars|infernostars]] <small>([[User talk:Infernostars|talk]]) ([[Special:Contributions/Infernostars|contribs]])</small> 02:49, 23 October 2025 (UTC)
::When you go to {{Z|Z29012}} you'll see two red words "Function" and "Wikidata item". Both of those were not set in the composition, so it is missing information. There may be more deeper problems, but fix this first. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 03:33, 23 October 2025 (UTC)
::{{done}} Works now, seemed to be just a couple typos. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:14, 24 December 2025 (UTC)
:Please connect the tests and implementation for {{Z|29750}}. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:33, 25 November 2025 (UTC)
::This ^ was done, so thanks for that, and I've now built a new function around it that's ready to be connected: {{Z|29749}}<!-- --><br>Having fallbacks to other languages and indicating such does of course raise the question of ''when'' it should be indicated, and I certainly don't have the answer, so I might leave this message here for the multilingual among you to see it and chime in. Either on [[Talk:Z24144]], or by way of adding a test case on one of these functions. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:42, 25 November 2025 (UTC)
:::If it’s about the way labels in fallback languages are displayed, perhaps the [[Talk:Z21583|Discussion page]] for {{Z|Z21583}} would be a better location? There has been some discussion at [[Wikifunctions talk:Abstract Wikipedia/2025 fragment experiments#Proposed recommendation: Fragments should return Z11/monolingual strings]]. (The spinoff, [[Wikifunctions talk:Abstract Wikipedia/2025 fragment experiments#Fallbacks]], might also be relevant.) [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 15:23, 25 November 2025 (UTC)
:Now that raising and catching errors has better support, [[Z28159]] should take an {{Z|50}} instead of a ZID {{Z|6}}. Unfortunately it's already been used in other functions so it might be a pain to change. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 07:20, 21 December 2025 (UTC)
::Yes. I think this gets fixed along with {{Z|Z28162}}, which is listed in [[Wikifunctions:Request for cleanup#Function:(!) throw error (Z28154)]].
::@[[User:Dv103|Dv103]] I was thinking we might just wrap {{Z|851}}? Custom errors will support only strings for the foreseeable future, as I understand it [can’t currently locate the relevant comment on Phabricator]. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 13:12, 21 December 2025 (UTC)
:The simple implementation for {{Z|30737}} is failing with [[Z516]], even though I can get a (correct) result by [https://www.wikifunctions.org/view/en/Z12681?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z12681%22%2C%22Z12681K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22475%22%2C%22Z22475K1%22%3A%7B%22Z1K1%22%3A%22Z39%22%2C%22Z39K1%22%3A%22K1%22%7D%2C%22Z22475K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30260%22%2C%22Z30260K1%22%3A%5B%22Z6095%22%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L100%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L101%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L102%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L103%22%7D%5D%2C%22Z30260K2%22%3A%5B%22Z6030%22%2C%22Z6031%22%5D%2C%22Z30260K3%22%3A%5B%22Z60%22%5D%2C%22Z30260K4%22%3A%5B%22Z6092%22%5D%7D%7D%7D calling those functions on the test input]. Oddly enough [https://www.wikifunctions.org/view/en/Z12681?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z12681%22%2C%22Z12681K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22475%22%2C%22Z22475K1%22%3A%7B%22Z1K1%22%3A%22Z39%22%2C%22Z39K1%22%3A%22K1%22%7D%2C%22Z22475K2%22%3A%7B%22Z1K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z883%22%2C%22Z883K1%22%3A%22Z1%22%2C%22Z883K2%22%3A%22Z1%22%7D%2C%22K1%22%3A%5B%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z882%22%2C%22Z882K1%22%3A%22Z1%22%2C%22Z882K2%22%3A%22Z1%22%7D%2C%7B%22Z1K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z882%22%2C%22Z882K1%22%3A%22Z1%22%2C%22Z882K2%22%3A%22Z1%22%7D%2C%22K1%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%226%22%7D%2C%22K2%22%3A%22Abacus%22%7D%5D%7D%7D%7D a trivial input] causes that to fail with the same error. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:43, 26 December 2025 (UTC)
::Sorry, I missed this one. Initial validation rejects a map with {{Z|Z1}} as its key type. Although it’s not guaranteed to be hashable, [[Z1]] should probably be admitted as a placeholder {{Z|Z4}}. In any event, using {{Z|Z6}} as the alternative seems to work and does not restrict the map to having only Strings for keys (as seen in {{Z|Z30906}}, where the keys have {{Z|Z39}} for their Type). [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 09:18, 31 December 2025 (UTC)
:::[[Z30907|Documented]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:50, 31 December 2025 (UTC)
:The implementation for {{Z|29183}} is slightly incorrect, it needs to subtract 9 on the condition that variable <code>add</code> is >9 (tests >10 currently). For me to change {{Z|29185}}, the implementation needs to be disconnected from {{Z|29183}} by a functioneer ([[Special:ListUsers/functioneer]]) first. The english wiki also warns about using negative values as input for the modulo operation, so, in addition, the result computation should be rephrased to be
<syntaxhighlight lang="python">
def intdivceil(x, d):
return x//d + (0 if x % d == 0 else 1)
return 10 * intdivceil(sum, 10) - sum
</syntaxhighlight>
:I'd also like to have all test cases of {{Z|29183}} connected by a functioneer, after changes to {{Z|29185}} have been commited. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 21:54, 2 January 2026 (UTC)
::Disconnected. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 22:12, 2 January 2026 (UTC)
:::Thanks, changes done - please reconnect. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 22:33, 2 January 2026 (UTC)
::::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 23:08, 2 January 2026 (UTC)
:::Weird: {{Z|30940}} and {{Z|30941}} tests do not pass after the reconnect, although [https://www.wikifunctions.org/wiki/Special:RunFunction?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z29183%22%2C%22Z29183K1%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%2290544230009%22%7D%7D running them manually] produces the expected result. Judging from the timestamps within the detail view, pressing the Refresh-Button does not actually re-run the tests.
:::It seems that their results have been generated with the previous function. Can you make an effort to dis- and reconnect these two tests? The (unconfirmed) presumption is that tests only run on demand (event-triggered vs time scheduled). If this is true it may be noteworthy in the [[WF:FAQ]].
:::The first test, {{Z|29184}}, did not exhibit the same problem, it has been updated as expected. Because the execution timestamps of all three tests do not vary greatly, they were probably triggered, correctly so, by the same event. In theory they should then have consequently worked on the same function - since the test results suggest different, there could have either been a race condition or a stale cache, eventually with some tests running before the action that triggered them was fully committed. If this is not a timing issue, the response to the connection event might miss to update some of the data structures associated with the connected tests and simply run them unchanged, but this is speculative. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 01:38, 3 January 2026 (UTC)
::::Yeah the cached failures are super annoying, I think they reduced the cache duration recently but it's still too high IMO. Disconnecting and reconnecting the Implementation triggered them to run again. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:16, 3 January 2026 (UTC)
:Can somebody connect the tests and implementation of this function? [[Z31047|arithmetical average of numbers (Z31047)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 04:35, 13 January 2026 (UTC)
::The implementation seems to fail all the tests. I suspect from the use of <code>{}</code> in Python code. Besides, on the implementation ({{Z|Z31048}}), it used <code>sum</code> as variable, which I don't think allowable in Python. Try to use another variable name. Last, what is the expected result of {{Z|Z31050}}? [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 04:50, 13 January 2026 (UTC)
:::Sorry, @[[User:Sys64ish|Sys64ish]], I just got the expected result from {{Z|31050}}. I have connected the test cases, but not yet for the implementation as you may want to fix it first(?) [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 05:05, 13 January 2026 (UTC)
::::Fixed it, passes tests [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 05:09, 13 January 2026 (UTC)
:::::{{Done}} connected! [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 05:11, 13 January 2026 (UTC)
:When I go to add a test to this function, for some reason I cannot select a fixed value for the expected value, the type is fixed to a function call. Can somebody fix this? [[Z31051|graph a one parameter function (Z31051)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 06:16, 13 January 2026 (UTC)
::You need to select an equality function, which in this case would be {{Z|889}} with {{Z|20924}} as an argument. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 09:59, 13 January 2026 (UTC)
:::Just what I was about to say, only shorter!
:::I had a look at the Python implementation and that doesn’t appear to be viable, because a {{Z|Z8}} object is data, not a callable Python function. I think a composition is the only option here, but we don’t appear to have a [[Special:Search/:"z8k2 z1k1 z7 z7k1 z881 z881k1 Z20838"|generator function for ]]{{Z|Z20838}} yet ([[Special:Search/:"z8k2 z1k1 z7 z7k1 z881 z881k1 z19677"|nor for rationals]]). [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:39, 13 January 2026 (UTC)
:Can somebody connect the tests and implementations of this function? [[Z31079|decimal number range (Z31079)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 13:57, 14 January 2026 (UTC)
::I’ve connected the test but there are a few issues with the implementation. The function has no return and the list to return shouldn’t be called range, as that overwrites the built-in range() function. Wikifunctions.Error requires a list of strings and you should probably guard against K3 being zero. Just let us know if you need any help with this. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 14:22, 14 January 2026 (UTC)
:::I think I fixed the implementation [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 14:28, 14 January 2026 (UTC)
::::Looks close. You probably want to *return* Wikifunctions.Error in order to halt execution. The K1 and K2 arguments are float64s rather than strings, so they need coercing to str for the error. You still risk a divide by zero if K3 has no guard. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 14:48, 14 January 2026 (UTC)
:::::I fixed it now, tests are passing(?) and when I run it locally it works as intended. [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 02:22, 15 January 2026 (UTC)
::::::{{done}}
::::::I created {{Z|31093}} to fix the last test, since your Python implementation was returning slightly inaccurate values for [[w:en:Floating-point_arithmetic#Accuracy_problems|reasons]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:11, 15 January 2026 (UTC)
:Can somebody connect the impl. and test cases of these functions? [[Z31051|generate real (float64) list from a function (Z31051)]] [[Z31111|increment (float64) (Z31111)]] [[Z31116|decrement (float64) (Z31116)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 00:11, 16 January 2026 (UTC)
::Mostly. I see {{Z|Z31051}} has its Minimum and Maximum defined as integers rather than float64, as defined for the generator. Something has to change here, and I’m guessing it’s [[Z31051]], so I disconnected its implementation again. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 01:31, 16 January 2026 (UTC)
:::all inputs except the input for the function are now float64 [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 13:36, 16 January 2026 (UTC)
::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 15:07, 16 January 2026 (UTC)
: Can someone here connect the implementation and test cases of this function: [[Z18679|Malay cardinal to ordinal]]? {{User|Hakimi97}}
:: {{Done}} [[User:Sys64ish|Sys32ish]] ([[User talk:Sys32ish|talk]]) 09:16, 19 January 2026 (UTC)
:Can someone please add the following IPA symbols needed for {{Z|Z1099}} to <code>lookup</code> in the JavaScript implementation {{Z|Z29880}}?
: "ɐ": "Q503323",
: "u": "Q29653",
: "ɕ": "Q605116",
: "x": "Q271603",
: "ʑ": "Q684085",
: "ɣ": "Q654670",
: "ʀ": "Q864677",
: "χ": "Q849796",
: "ʁ": "Q1054276",
: "o": "Q862579",
: "æ": "Q740768",
: "ɪ": "Q1070049",
: "ʊ": "Q1137807",
:Thank you! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 20:23, 27 February 2026 (UTC)
::I forgot to mention the ligatures
::"ʤ": "Q778145",
::"ʧ": "Q518603",
::which could be put next to the already present
::"dʒ": "Q778145",
::"tʃ": "Q518603",
::--[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 20:24, 27 February 2026 (UTC)
::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 00:33, 28 February 2026 (UTC)
:::Thank you! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 08:59, 28 February 2026 (UTC)
: Can someone connect up [[Z31844]] and [[Z31837]]. These are better than the other implementations on their pages. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 09:04, 1 March 2026 (UTC)
::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:12, 1 March 2026 (UTC)
:Hello, please connect {{Z|Z31729}}'s implementation and test cases. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 10:48, 8 March 2026 (UTC)
::The implementation does not seem to pass any of the test case. If you click on the [[File:Icon Information.svg|Icon_Information|15px|class=skin-invert-image]] (i) icon on the test status, you can find the error, what the implementation output, etc. Try to fix the implementation first. Thanks! [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 11:22, 8 March 2026 (UTC)
::It seems you're returning a string value when it expects a HTML fragment. HTML fragment and string are different. Maybe you can change the output type to string? [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 11:44, 10 March 2026 (UTC)
:::Thanks for running the tests, @[[User:NikolasKHF|NikolasKHF]]; I couldn’t run them on my own (seemingly because I don’t have the needed right). I will fix the errors.
:::Thanks for looking into this, @[[User:Sys64ish|Sys64ish]]. I actually did want to return an HTML fragment instead of a string because I think that would be more useful on the wikis. However, it looks like I forgot to convert the string for most cases where an output is returned (hence why only one test failure actually complains about the output value being incorrect). [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 19:52, 10 March 2026 (UTC)
:::I have fixed the errors and added a new test case. Please connect the implementation and all the test cases now. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 10:23, 28 March 2026 (UTC)
::::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:04, 28 March 2026 (UTC)
:Can someone connect [[Z31994]] and [[Z31999]] with its tests and implementations. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:41, 11 March 2026 (UTC)
::{{done}} [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 08:49, 11 March 2026 (UTC)
:::Oh yeah I also made another function now, [[Z32004]]. Can someone connect its implementations and tests. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 09:02, 11 March 2026 (UTC)
::::{{done}} [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 09:23, 11 March 2026 (UTC)
:Can someone connect up [[Z32013]]. Also how do you become able to connect and disconnect implementations? Is it only available to extended confirmed users? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 10:06, 12 March 2026 (UTC)
::I don’t believe this implementation should be connected at this time. The existing Python implementation respects the community consensus represented by the test cases connected to {{Z|Z24144}}. What do you think, @[[User:99of9|99of9]]? [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:28, 12 March 2026 (UTC)
:::Fair, I didn't realise the test cases served as implicit consensus. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 11:42, 12 March 2026 (UTC)
::::No worries. It’s not clearly articulated, but we’ll clarify that later. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:51, 12 March 2026 (UTC)
:::I'm not sure. At the moment it correctly reproduces all those we got "consensus" for. So in some sense this implementation is just suggesting/assuming extra fallbacks for those we haven't properly considered? One option would be to connect it and then add counter test cases if we ever felt we didn't like it's current suggestions. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 00:30, 13 March 2026 (UTC)
::::We should be careful… It’s not easy to tell how many test case results would be affected. It’s easy enough to disconnect again, of course, so I’m happy to give it a go while activity in this domain is at a low ebb. {{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:04, 13 March 2026 (UTC)
::To connect implementations, you need Functioneer rights, which can be requested here [[Wikifunctions:Requests for user groups]]. There is a 48-hour waiting period. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:32, 12 March 2026 (UTC)
:Can someone connect up [[Z32027]] with its implementation and test? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:29, 13 March 2026 (UTC)
::And also [[Z32031]]. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 10:16, 13 March 2026 (UTC)
:::{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:51, 13 March 2026 (UTC)
::{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:50, 13 March 2026 (UTC)
{{tracked|T419920|resolved}}
:What is wrong with my implementation at [[Z32055]]? Looking at the failed test, it returns an error because 'dict' has no attribute 'split', but I didn't use split anywhere in my code. What is the issue? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 01:38, 14 March 2026 (UTC)
::I think that error message is coming from the [[Z20424|type converter]]. I think <code>Z20424K1['Z20420K2']['Z20342K1']</code> would be a dictionary representing a {{Z|16098}} but the code is written as though it were a string? Neither Python nor type converters are in my wheelhouse. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:49, 14 March 2026 (UTC)
:::I think this is [[:phab:T419920]] and presumed to be a consequence of this week’s rollout of “v2”. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:08, 14 March 2026 (UTC)
::The type converter issue has gone away, but your Implementation doesn't quite match the tests (and composition), so I've disconnected it again. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:54, 20 March 2026 (UTC)
:What is wrong with my implementation at {{Z|Z32851}}? Btw, it would be really useful if errors said which dependency produced the error, instead of just saying "Error in evaluation". [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 07:18, 28 March 2026 (UTC)
::You were catching the wrong {{Z|50}}, but then the error should have bubbled up so you could see it. I think there's something broken in the site w/ {{Z|11}} right now since [[Z32804|I ran into a similar problem yesterday]]. (And to contradict my note there, while debugging your implementation I saw the same behaviour regardless of if I used [[Z26107]] or a literal Z11, so it must be a bug in WikiLambda.) [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 08:14, 28 March 2026 (UTC)
:::Seems to be resolved now. Your implementation has already been connected. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 17:01, 2 April 2026 (UTC)
:Any guesses as to why [[Z32805]] is failing for [[Z33090]]? It says {{Z|507}} but still produces a value. Inspecting the actual and expected values ([https://www.wikifunctions.org/view/en/Z801?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z801%22%2C%22Z801K1%22%3A%5B%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z881%22%2C%22Z881K1%22%3A%22Z89%22%7D%2C%5B%22Z89%22%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Ctd%3E%3C%2Ftd%3E%22%7D%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Cth%3EA%3C%2Fth%3E%22%7D%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Cth%3EB%3C%2Fth%3E%22%7D%5D%2C%5B%22Z89%22%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Cth%3E1%3C%2Fth%3E%22%7D%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Ctd%3EA1%3C%2Ftd%3E%22%7D%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Ctd%3EB1%3C%2Ftd%3E%22%7D%5D%2C%5B%22Z89%22%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Cth%3E2%3C%2Fth%3E%22%7D%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Ctd%3EA2%3C%2Ftd%3E%22%7D%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Ctd%3EB2%3C%2Ftd%3E%22%7D%5D%5D%7D via echo]), I can see they're identical. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 22:44, 3 April 2026 (UTC)
::My guess is that there is a bug relating to {{Z|Z877}}. There are no guarantees, but switching the equality function seems successful. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 22:56, 3 April 2026 (UTC)
==== Connection / Disconnection requests ====
Can someone connect {{Z|32068}} and {{Z|15974}} to their tests and implementations. Thanks in advance. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 23:24, 14 March 2026 (UTC)
:In the first function, there’s some issue with Maybe but I don’t think that’s the implementation. But I do think the error-handling for Maybe needs fixing. I’ll check back tomorrow and dig deeper if need be. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 23:48, 14 March 2026 (UTC)
::I fixed the error raising and checking, but the test is still failing for some reason? [[phab:T419920]] again? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 23:54, 14 March 2026 (UTC)
:::It certainly looks like a conversion failure going into {{Z|Z22123}}. I made a [[Z32083|new implementation]] of {{Z|Z22120}} which is now “preferred”. If everything behaves itself, [[Z22123]] can be reconnected. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 17:24, 15 March 2026 (UTC)
:{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:56, 20 March 2026 (UTC)
Can someone connect {{Z|32208}}, {{Z|32199}}, and {{Z|32204}}'s testcases and implementations? thanks in advance! --[[User:VivianIsBee|VivianIsBee]] ([[User talk:VivianIsBee|talk]]) 14:33, 20 March 2026 (UTC)
:{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:48, 20 March 2026 (UTC)
Can someone connect {{Z|32355}}'s testcases and implementations? Thanks in advance! [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 08:15, 22 March 2026 (UTC)
:I haven't connected the implementation yet, because it doesn't seem to pass any of the test cases. If the implementation has any issues, then fix them first. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:24, 22 March 2026 (UTC)
::Thanks. I fixed. One testcase has passed now. But another testcase still says "The lexeme doesn't have forms" although I added a lexical form about 20 hour ago. I suppose cashed data may not have been refreshed yet. So can you please connect implementation so that I can check precisely? [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 05:47, 23 March 2026 (UTC)
:{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:32, 23 March 2026 (UTC)
Can someone connect {{Z|32442}}'s testcases and implementations? Thanks in advance! [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 22:38, 23 March 2026 (UTC)
:Did you mean to include spaces between "words" with your Implementation, or was that a copy-paste error? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 05:24, 24 March 2026 (UTC)
::Thanks. That's a copy-paste error. I deleted one space.[[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 06:55, 24 March 2026 (UTC)
:{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 09:48, 24 March 2026 (UTC)
Request to connect {{Z|32212}}, {{Z|32213}}, {{Z|32214}}, {{Z|32216}}, and {{Z|32240}}, all related to defining role sentence in Chinese for all variants. [[User:1F616EMO|1F616EMO]] ([[User talk:1F616EMO|talk]]) 03:21, 24 March 2026 (UTC)
:{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 05:28, 24 March 2026 (UTC)
Can someone disconnect {{Z|10816}}'s Python implementation? Need to fix one of the test case errors. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 19:47, 26 March 2026 (UTC)
:{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 19:59, 26 March 2026 (UTC)
::Fixed the Python implementation, if anyone could reconnect that again. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 20:11, 26 March 2026 (UTC)
:::Noting that this was reconnected. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 14:40, 27 March 2026 (UTC)
Can someone please disconnect {{Z|26574}}? It needs to be edited to add the Bengali equivalent of a period to the end of the sentence. Thanks. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 10:59, 28 March 2026 (UTC)
:Disconnected. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 11:05, 28 March 2026 (UTC)
::Thanks! And I am sorry forgot this before but the tests need to be fixed as well, could you please disconnect them, too? [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 11:09, 28 March 2026 (UTC)
:::I just added the periods to the tests myself. Tell me if I am incorrect in their placement. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 11:15, 28 March 2026 (UTC)
::::Done, thanks for updating the tests but one other change is needed: in Z26606, the expected string should be 'কাজী নজরুল ইসলাম একজন কবি ছিলেন।' now because I updated the function to indicate when a person is deceased. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 11:53, 28 March 2026 (UTC)
:::::@[[User:ChaoticVermillion|ChaoticVermillion]], ping :) [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 19:03, 30 March 2026 (UTC)
::::::Apologies, I completely forgot about this. {{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 06:05, 31 March 2026 (UTC)
:::::::Thank you. Can you please connect the implementation now? [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 07:43, 31 March 2026 (UTC)
::::::::{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:00, 31 March 2026 (UTC)
Please connect [[Z32954|Z32954’s]] implementation and test case. I woukd like to use it on Abstract Wikipedia. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 07:46, 31 March 2026 (UTC)
:{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:00, 31 March 2026 (UTC)
Please disconnect [[Z10779]]; I would like to simplify it. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 07:46, 31 March 2026 (UTC)
:{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:02, 31 March 2026 (UTC)
::Done, you can reconnect it now. Thanks. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 08:24, 31 March 2026 (UTC)
:::{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:42, 31 March 2026 (UTC)
Request to connect [[Z33028]] to their test and implementation. Thanks. — [[User:内存溢出的猫|内存溢出的猫]] ([[User talk:内存溢出的猫|talk]]) 12:07, 2 April 2026 (UTC)
:{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 12:11, 2 April 2026 (UTC)
Request to connect [[Z33040]] with its implementation and test cases. -- [[User:Winston Sung|Winston Sung]] ([[User talk:Winston Sung|talk]]) 16:41, 2 April 2026 (UTC)
:{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 16:56, 2 April 2026 (UTC)
Can anyone connect [[Z33045]] and [[Z33046]], and add [[Z33044]] to [[Z32402]]? [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 17:52, 2 April 2026 (UTC)
:For the record, this is {{Already done}}. [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 22:17, 2 April 2026 (UTC)
Are the implementations and tests for [[Z32985]] and [[Z32982]] ready to be connected? Courtesy ping: {{u|EJPPhilippines}}. [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 22:17, 2 April 2026 (UTC)
:[[Z32982]] is {{already done}}; [[Z32985]] is not. [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 03:08, 3 April 2026 (UTC)
Could someone connect the implementations and tests for [[Z33073]] and [[Z33075]]? Thank you! [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 03:08, 3 April 2026 (UTC)
:{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 03:48, 3 April 2026 (UTC)
Can someone connect the implementations and tests for [[Z33059]]? [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 00:49, 4 April 2026 (UTC)
:{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 01:10, 4 April 2026 (UTC)
Request to connect [[Z33038]] with its implementation and test cases. -- [[User:Winston Sung|Winston Sung]] ([[User talk:Winston Sung|talk]]) 02:39, 4 April 2026 (UTC)
:{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:12, 4 April 2026 (UTC)
Request to connect [[Z33036]] with its implementation and test cases. -- [[User:Winston Sung|Winston Sung]] ([[User talk:Winston Sung|talk]]) 03:44, 4 April 2026 (UTC)
:{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 03:54, 4 April 2026 (UTC)
Can someone disconnect [[Z18680]] because I need to recheck the structure of the code back? [[User:Hakimi97|Hakimi97]] ([[User talk:Hakimi97|talk]]) 02:06, 7 April 2026 (UTC)
:{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 02:13, 7 April 2026 (UTC)
::Okay, I have validated the structure of [[Z18679]], could you please connect back all of the implementations and another additional test? Thank you. [[User:Hakimi97|Hakimi97]] ([[User talk:Hakimi97|talk]]) 04:06, 7 April 2026 (UTC)
:::{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 04:39, 7 April 2026 (UTC)
Please connect [[Z33165]] with its implementation and test cases. [[User:Hakimi97|Hakimi97]] ([[User talk:Hakimi97|talk]]) 13:28, 7 April 2026 (UTC)
==== [[WF:HL]] ====
I have recently drafted some revamps of [[Wikifunctions:Human languages]] ([[User:Xeroctic/Human languages]]) and [[Wikifunctions:Reserved ZIDs]] ([[User:Xeroctic/Reserved ZIDs]]) in my userspace, and I think they are ready to replace the originals. I have not included translation tags for HL (which would be entirely different) and they need major modification for RZIDs to add or re-add them, so I would like that to be done as well. — [[User:Xeroctic|Xeroctic]] ([[User talk:Xeroctic|talk]]) 16:39, 3 November 2025 (UTC)
: {{s}} since Xeroctic's versions improve readability. — [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 11:17, 24 November 2025 (UTC)
:: Restoring this unresolved thread which was archived in oldid 237379. — [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 14:36, 16 January 2026 (UTC)
:[[WF:Human languages]]: Copying the categorisation from enWiktionary seems like a good idea. I don't understand why this page is separate from [[WF:Catalogue/Natural language operations]] though? (time/happenstance? [[WT:Human_languages#proposal|previous disc.]]) Redlinks to cataloguing subpages will remain red unless and until someone makes an NLG function in that language.
:[[WF:Reserved ZIDs]]: Using the live labels is an obvious improvement. I appreciate it being kept up-to-date. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:55, 16 January 2026 (UTC)
:{{support}} per Arlo Barnes and YoshiRulz [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 01:11, 11 March 2026 (UTC)
:{{support}} Let’s do this already. --[[User:Mormegil|Mormegil]] ([[User talk:Mormegil|talk]]) 08:33, 27 March 2026 (UTC)
3vyzii5ahpoq8f8o9tu5we9g5m8cr0e
263718
263715
2026-04-07T13:30:31Z
Dv103
11127
/* Connection / Disconnection requests */ Reply
263718
wikitext
text/x-wiki
<div style="border:1px solid grey; margin:1em 4em 2em; padding:1.5em 1em;">
<span style="font-size:2em;">Welcome to the '''community portal for Wikifunctions'''!</span>
This is the central place to document Wikifunctions's to-do lists and ongoing project work. [To-do!]
[[Special:MyLanguage/Wikifunctions:Catalogue|The catalogue of functions]] is a good place to start.
For discussions, see [[Wikifunctions:Project chat]].
[[Category:Project]]
</div>
== Useful links ==
* [[Wikifunctions:List of policies and guidelines]]
* [[Special:MyLanguage/Help:Contents|Help:Contents]]
* [[Special:MyLanguage/Wikifunctions:Catalogue|Wikifunctions:Catalogue of functions]]
** [[Wikifunctions:Suggest a function]]
* [[Wikifunctions:Type proposals]]
* [[Special:MyLanguage/Wikifunctions:User scripts|Wikifunctions:User scripts]]
* [[Wikifunctions:Requests for user groups]]
* [[Wikifunctions:Requests for deletions]]
== Noticeboards ==
* [[Wikifunctions:Project chat]]
* [[Wikifunctions:Administrators' noticeboard]]
* [[Wikifunctions:Report vandalism]]
* [[Wikifunctions:Translators' noticeboard]]
== Task centre ==
=== Perennial tasks ===
<!--Feel free to add new tasks to this section. However, if they are one-off requests, please add them to Tasks listed by users-->
* [[File:OOjs UI icon language-ltr.svg|class=skin-invert]] [[Special:MyLanguage/Help:Multilingual|Translation]]:
**[[Special:Random|Add a translation to a random object]]
**[[Special:MyLanguage/Category:Policy|Add a translation to a policy page]]
**[[Special:ListMissingLabels|See any objects without a label in a given language]]
**[[Special:PageTranslation]]
**[[Special:LanguageStats|Language statistics]]
*[[File:Octicons-tools.svg|15px|class=skin-invert]] [[:Category:Tracking categories|Tracking categories]]
* [[File:Octicons-tools.svg|15px|class=skin-invert]] [[Wikifunctions:Request for cleanup|Requests for cleanup]]
=== Tasks listed by users ===
:''Example:''
:* Fix [[Special:Random|this implementation]] please. {{User|Example2}}
::{{Done}}. Thanks for pointing that out! {{User|Example}}
<hr/>
[signing to enable reply link:--[[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:27, 6 May 2024 (UTC)
:Heya, I tried to make a {{Z|Z29010}} implementation in composition <small>({{Z|Z29012}})</small>, but it errors out: <code>Unable to convert to canonical form (path to the problem: "Z22K2.K1.K1.K2.Z5K2.Z528K1.Z99K1.Z7K1.Z8K4.[ 1 ].Z14K2.Z26107K2.Z21394K1.[ 1 ].Z10771K1.Z23753K2.Z18K1.{"Z1K1":"Z18","Z6K1":"Z29010K5","Z18K1":""}")</code> - why does this happen, and how would I fix it? I tried to use {{Z|Z28030}} as a guide, but for a first dive into composition I may have taken on something a bit large. [[User:Infernostars|infernostars]] <small>([[User talk:Infernostars|talk]]) ([[Special:Contributions/Infernostars|contribs]])</small> 02:49, 23 October 2025 (UTC)
::When you go to {{Z|Z29012}} you'll see two red words "Function" and "Wikidata item". Both of those were not set in the composition, so it is missing information. There may be more deeper problems, but fix this first. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 03:33, 23 October 2025 (UTC)
::{{done}} Works now, seemed to be just a couple typos. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:14, 24 December 2025 (UTC)
:Please connect the tests and implementation for {{Z|29750}}. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:33, 25 November 2025 (UTC)
::This ^ was done, so thanks for that, and I've now built a new function around it that's ready to be connected: {{Z|29749}}<!-- --><br>Having fallbacks to other languages and indicating such does of course raise the question of ''when'' it should be indicated, and I certainly don't have the answer, so I might leave this message here for the multilingual among you to see it and chime in. Either on [[Talk:Z24144]], or by way of adding a test case on one of these functions. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:42, 25 November 2025 (UTC)
:::If it’s about the way labels in fallback languages are displayed, perhaps the [[Talk:Z21583|Discussion page]] for {{Z|Z21583}} would be a better location? There has been some discussion at [[Wikifunctions talk:Abstract Wikipedia/2025 fragment experiments#Proposed recommendation: Fragments should return Z11/monolingual strings]]. (The spinoff, [[Wikifunctions talk:Abstract Wikipedia/2025 fragment experiments#Fallbacks]], might also be relevant.) [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 15:23, 25 November 2025 (UTC)
:Now that raising and catching errors has better support, [[Z28159]] should take an {{Z|50}} instead of a ZID {{Z|6}}. Unfortunately it's already been used in other functions so it might be a pain to change. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 07:20, 21 December 2025 (UTC)
::Yes. I think this gets fixed along with {{Z|Z28162}}, which is listed in [[Wikifunctions:Request for cleanup#Function:(!) throw error (Z28154)]].
::@[[User:Dv103|Dv103]] I was thinking we might just wrap {{Z|851}}? Custom errors will support only strings for the foreseeable future, as I understand it [can’t currently locate the relevant comment on Phabricator]. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 13:12, 21 December 2025 (UTC)
:The simple implementation for {{Z|30737}} is failing with [[Z516]], even though I can get a (correct) result by [https://www.wikifunctions.org/view/en/Z12681?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z12681%22%2C%22Z12681K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22475%22%2C%22Z22475K1%22%3A%7B%22Z1K1%22%3A%22Z39%22%2C%22Z39K1%22%3A%22K1%22%7D%2C%22Z22475K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30260%22%2C%22Z30260K1%22%3A%5B%22Z6095%22%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L100%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L101%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L102%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L103%22%7D%5D%2C%22Z30260K2%22%3A%5B%22Z6030%22%2C%22Z6031%22%5D%2C%22Z30260K3%22%3A%5B%22Z60%22%5D%2C%22Z30260K4%22%3A%5B%22Z6092%22%5D%7D%7D%7D calling those functions on the test input]. Oddly enough [https://www.wikifunctions.org/view/en/Z12681?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z12681%22%2C%22Z12681K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22475%22%2C%22Z22475K1%22%3A%7B%22Z1K1%22%3A%22Z39%22%2C%22Z39K1%22%3A%22K1%22%7D%2C%22Z22475K2%22%3A%7B%22Z1K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z883%22%2C%22Z883K1%22%3A%22Z1%22%2C%22Z883K2%22%3A%22Z1%22%7D%2C%22K1%22%3A%5B%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z882%22%2C%22Z882K1%22%3A%22Z1%22%2C%22Z882K2%22%3A%22Z1%22%7D%2C%7B%22Z1K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z882%22%2C%22Z882K1%22%3A%22Z1%22%2C%22Z882K2%22%3A%22Z1%22%7D%2C%22K1%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%226%22%7D%2C%22K2%22%3A%22Abacus%22%7D%5D%7D%7D%7D a trivial input] causes that to fail with the same error. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:43, 26 December 2025 (UTC)
::Sorry, I missed this one. Initial validation rejects a map with {{Z|Z1}} as its key type. Although it’s not guaranteed to be hashable, [[Z1]] should probably be admitted as a placeholder {{Z|Z4}}. In any event, using {{Z|Z6}} as the alternative seems to work and does not restrict the map to having only Strings for keys (as seen in {{Z|Z30906}}, where the keys have {{Z|Z39}} for their Type). [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 09:18, 31 December 2025 (UTC)
:::[[Z30907|Documented]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:50, 31 December 2025 (UTC)
:The implementation for {{Z|29183}} is slightly incorrect, it needs to subtract 9 on the condition that variable <code>add</code> is >9 (tests >10 currently). For me to change {{Z|29185}}, the implementation needs to be disconnected from {{Z|29183}} by a functioneer ([[Special:ListUsers/functioneer]]) first. The english wiki also warns about using negative values as input for the modulo operation, so, in addition, the result computation should be rephrased to be
<syntaxhighlight lang="python">
def intdivceil(x, d):
return x//d + (0 if x % d == 0 else 1)
return 10 * intdivceil(sum, 10) - sum
</syntaxhighlight>
:I'd also like to have all test cases of {{Z|29183}} connected by a functioneer, after changes to {{Z|29185}} have been commited. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 21:54, 2 January 2026 (UTC)
::Disconnected. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 22:12, 2 January 2026 (UTC)
:::Thanks, changes done - please reconnect. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 22:33, 2 January 2026 (UTC)
::::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 23:08, 2 January 2026 (UTC)
:::Weird: {{Z|30940}} and {{Z|30941}} tests do not pass after the reconnect, although [https://www.wikifunctions.org/wiki/Special:RunFunction?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z29183%22%2C%22Z29183K1%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%2290544230009%22%7D%7D running them manually] produces the expected result. Judging from the timestamps within the detail view, pressing the Refresh-Button does not actually re-run the tests.
:::It seems that their results have been generated with the previous function. Can you make an effort to dis- and reconnect these two tests? The (unconfirmed) presumption is that tests only run on demand (event-triggered vs time scheduled). If this is true it may be noteworthy in the [[WF:FAQ]].
:::The first test, {{Z|29184}}, did not exhibit the same problem, it has been updated as expected. Because the execution timestamps of all three tests do not vary greatly, they were probably triggered, correctly so, by the same event. In theory they should then have consequently worked on the same function - since the test results suggest different, there could have either been a race condition or a stale cache, eventually with some tests running before the action that triggered them was fully committed. If this is not a timing issue, the response to the connection event might miss to update some of the data structures associated with the connected tests and simply run them unchanged, but this is speculative. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 01:38, 3 January 2026 (UTC)
::::Yeah the cached failures are super annoying, I think they reduced the cache duration recently but it's still too high IMO. Disconnecting and reconnecting the Implementation triggered them to run again. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:16, 3 January 2026 (UTC)
:Can somebody connect the tests and implementation of this function? [[Z31047|arithmetical average of numbers (Z31047)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 04:35, 13 January 2026 (UTC)
::The implementation seems to fail all the tests. I suspect from the use of <code>{}</code> in Python code. Besides, on the implementation ({{Z|Z31048}}), it used <code>sum</code> as variable, which I don't think allowable in Python. Try to use another variable name. Last, what is the expected result of {{Z|Z31050}}? [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 04:50, 13 January 2026 (UTC)
:::Sorry, @[[User:Sys64ish|Sys64ish]], I just got the expected result from {{Z|31050}}. I have connected the test cases, but not yet for the implementation as you may want to fix it first(?) [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 05:05, 13 January 2026 (UTC)
::::Fixed it, passes tests [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 05:09, 13 January 2026 (UTC)
:::::{{Done}} connected! [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 05:11, 13 January 2026 (UTC)
:When I go to add a test to this function, for some reason I cannot select a fixed value for the expected value, the type is fixed to a function call. Can somebody fix this? [[Z31051|graph a one parameter function (Z31051)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 06:16, 13 January 2026 (UTC)
::You need to select an equality function, which in this case would be {{Z|889}} with {{Z|20924}} as an argument. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 09:59, 13 January 2026 (UTC)
:::Just what I was about to say, only shorter!
:::I had a look at the Python implementation and that doesn’t appear to be viable, because a {{Z|Z8}} object is data, not a callable Python function. I think a composition is the only option here, but we don’t appear to have a [[Special:Search/:"z8k2 z1k1 z7 z7k1 z881 z881k1 Z20838"|generator function for ]]{{Z|Z20838}} yet ([[Special:Search/:"z8k2 z1k1 z7 z7k1 z881 z881k1 z19677"|nor for rationals]]). [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:39, 13 January 2026 (UTC)
:Can somebody connect the tests and implementations of this function? [[Z31079|decimal number range (Z31079)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 13:57, 14 January 2026 (UTC)
::I’ve connected the test but there are a few issues with the implementation. The function has no return and the list to return shouldn’t be called range, as that overwrites the built-in range() function. Wikifunctions.Error requires a list of strings and you should probably guard against K3 being zero. Just let us know if you need any help with this. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 14:22, 14 January 2026 (UTC)
:::I think I fixed the implementation [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 14:28, 14 January 2026 (UTC)
::::Looks close. You probably want to *return* Wikifunctions.Error in order to halt execution. The K1 and K2 arguments are float64s rather than strings, so they need coercing to str for the error. You still risk a divide by zero if K3 has no guard. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 14:48, 14 January 2026 (UTC)
:::::I fixed it now, tests are passing(?) and when I run it locally it works as intended. [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 02:22, 15 January 2026 (UTC)
::::::{{done}}
::::::I created {{Z|31093}} to fix the last test, since your Python implementation was returning slightly inaccurate values for [[w:en:Floating-point_arithmetic#Accuracy_problems|reasons]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:11, 15 January 2026 (UTC)
:Can somebody connect the impl. and test cases of these functions? [[Z31051|generate real (float64) list from a function (Z31051)]] [[Z31111|increment (float64) (Z31111)]] [[Z31116|decrement (float64) (Z31116)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 00:11, 16 January 2026 (UTC)
::Mostly. I see {{Z|Z31051}} has its Minimum and Maximum defined as integers rather than float64, as defined for the generator. Something has to change here, and I’m guessing it’s [[Z31051]], so I disconnected its implementation again. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 01:31, 16 January 2026 (UTC)
:::all inputs except the input for the function are now float64 [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 13:36, 16 January 2026 (UTC)
::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 15:07, 16 January 2026 (UTC)
: Can someone here connect the implementation and test cases of this function: [[Z18679|Malay cardinal to ordinal]]? {{User|Hakimi97}}
:: {{Done}} [[User:Sys64ish|Sys32ish]] ([[User talk:Sys32ish|talk]]) 09:16, 19 January 2026 (UTC)
:Can someone please add the following IPA symbols needed for {{Z|Z1099}} to <code>lookup</code> in the JavaScript implementation {{Z|Z29880}}?
: "ɐ": "Q503323",
: "u": "Q29653",
: "ɕ": "Q605116",
: "x": "Q271603",
: "ʑ": "Q684085",
: "ɣ": "Q654670",
: "ʀ": "Q864677",
: "χ": "Q849796",
: "ʁ": "Q1054276",
: "o": "Q862579",
: "æ": "Q740768",
: "ɪ": "Q1070049",
: "ʊ": "Q1137807",
:Thank you! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 20:23, 27 February 2026 (UTC)
::I forgot to mention the ligatures
::"ʤ": "Q778145",
::"ʧ": "Q518603",
::which could be put next to the already present
::"dʒ": "Q778145",
::"tʃ": "Q518603",
::--[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 20:24, 27 February 2026 (UTC)
::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 00:33, 28 February 2026 (UTC)
:::Thank you! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 08:59, 28 February 2026 (UTC)
: Can someone connect up [[Z31844]] and [[Z31837]]. These are better than the other implementations on their pages. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 09:04, 1 March 2026 (UTC)
::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:12, 1 March 2026 (UTC)
:Hello, please connect {{Z|Z31729}}'s implementation and test cases. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 10:48, 8 March 2026 (UTC)
::The implementation does not seem to pass any of the test case. If you click on the [[File:Icon Information.svg|Icon_Information|15px|class=skin-invert-image]] (i) icon on the test status, you can find the error, what the implementation output, etc. Try to fix the implementation first. Thanks! [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 11:22, 8 March 2026 (UTC)
::It seems you're returning a string value when it expects a HTML fragment. HTML fragment and string are different. Maybe you can change the output type to string? [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 11:44, 10 March 2026 (UTC)
:::Thanks for running the tests, @[[User:NikolasKHF|NikolasKHF]]; I couldn’t run them on my own (seemingly because I don’t have the needed right). I will fix the errors.
:::Thanks for looking into this, @[[User:Sys64ish|Sys64ish]]. I actually did want to return an HTML fragment instead of a string because I think that would be more useful on the wikis. However, it looks like I forgot to convert the string for most cases where an output is returned (hence why only one test failure actually complains about the output value being incorrect). [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 19:52, 10 March 2026 (UTC)
:::I have fixed the errors and added a new test case. Please connect the implementation and all the test cases now. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 10:23, 28 March 2026 (UTC)
::::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:04, 28 March 2026 (UTC)
:Can someone connect [[Z31994]] and [[Z31999]] with its tests and implementations. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:41, 11 March 2026 (UTC)
::{{done}} [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 08:49, 11 March 2026 (UTC)
:::Oh yeah I also made another function now, [[Z32004]]. Can someone connect its implementations and tests. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 09:02, 11 March 2026 (UTC)
::::{{done}} [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 09:23, 11 March 2026 (UTC)
:Can someone connect up [[Z32013]]. Also how do you become able to connect and disconnect implementations? Is it only available to extended confirmed users? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 10:06, 12 March 2026 (UTC)
::I don’t believe this implementation should be connected at this time. The existing Python implementation respects the community consensus represented by the test cases connected to {{Z|Z24144}}. What do you think, @[[User:99of9|99of9]]? [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:28, 12 March 2026 (UTC)
:::Fair, I didn't realise the test cases served as implicit consensus. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 11:42, 12 March 2026 (UTC)
::::No worries. It’s not clearly articulated, but we’ll clarify that later. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:51, 12 March 2026 (UTC)
:::I'm not sure. At the moment it correctly reproduces all those we got "consensus" for. So in some sense this implementation is just suggesting/assuming extra fallbacks for those we haven't properly considered? One option would be to connect it and then add counter test cases if we ever felt we didn't like it's current suggestions. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 00:30, 13 March 2026 (UTC)
::::We should be careful… It’s not easy to tell how many test case results would be affected. It’s easy enough to disconnect again, of course, so I’m happy to give it a go while activity in this domain is at a low ebb. {{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:04, 13 March 2026 (UTC)
::To connect implementations, you need Functioneer rights, which can be requested here [[Wikifunctions:Requests for user groups]]. There is a 48-hour waiting period. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:32, 12 March 2026 (UTC)
:Can someone connect up [[Z32027]] with its implementation and test? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:29, 13 March 2026 (UTC)
::And also [[Z32031]]. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 10:16, 13 March 2026 (UTC)
:::{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:51, 13 March 2026 (UTC)
::{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:50, 13 March 2026 (UTC)
{{tracked|T419920|resolved}}
:What is wrong with my implementation at [[Z32055]]? Looking at the failed test, it returns an error because 'dict' has no attribute 'split', but I didn't use split anywhere in my code. What is the issue? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 01:38, 14 March 2026 (UTC)
::I think that error message is coming from the [[Z20424|type converter]]. I think <code>Z20424K1['Z20420K2']['Z20342K1']</code> would be a dictionary representing a {{Z|16098}} but the code is written as though it were a string? Neither Python nor type converters are in my wheelhouse. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:49, 14 March 2026 (UTC)
:::I think this is [[:phab:T419920]] and presumed to be a consequence of this week’s rollout of “v2”. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:08, 14 March 2026 (UTC)
::The type converter issue has gone away, but your Implementation doesn't quite match the tests (and composition), so I've disconnected it again. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:54, 20 March 2026 (UTC)
:What is wrong with my implementation at {{Z|Z32851}}? Btw, it would be really useful if errors said which dependency produced the error, instead of just saying "Error in evaluation". [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 07:18, 28 March 2026 (UTC)
::You were catching the wrong {{Z|50}}, but then the error should have bubbled up so you could see it. I think there's something broken in the site w/ {{Z|11}} right now since [[Z32804|I ran into a similar problem yesterday]]. (And to contradict my note there, while debugging your implementation I saw the same behaviour regardless of if I used [[Z26107]] or a literal Z11, so it must be a bug in WikiLambda.) [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 08:14, 28 March 2026 (UTC)
:::Seems to be resolved now. Your implementation has already been connected. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 17:01, 2 April 2026 (UTC)
:Any guesses as to why [[Z32805]] is failing for [[Z33090]]? It says {{Z|507}} but still produces a value. Inspecting the actual and expected values ([https://www.wikifunctions.org/view/en/Z801?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z801%22%2C%22Z801K1%22%3A%5B%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z881%22%2C%22Z881K1%22%3A%22Z89%22%7D%2C%5B%22Z89%22%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Ctd%3E%3C%2Ftd%3E%22%7D%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Cth%3EA%3C%2Fth%3E%22%7D%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Cth%3EB%3C%2Fth%3E%22%7D%5D%2C%5B%22Z89%22%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Cth%3E1%3C%2Fth%3E%22%7D%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Ctd%3EA1%3C%2Ftd%3E%22%7D%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Ctd%3EB1%3C%2Ftd%3E%22%7D%5D%2C%5B%22Z89%22%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Cth%3E2%3C%2Fth%3E%22%7D%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Ctd%3EA2%3C%2Ftd%3E%22%7D%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Ctd%3EB2%3C%2Ftd%3E%22%7D%5D%5D%7D via echo]), I can see they're identical. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 22:44, 3 April 2026 (UTC)
::My guess is that there is a bug relating to {{Z|Z877}}. There are no guarantees, but switching the equality function seems successful. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 22:56, 3 April 2026 (UTC)
==== Connection / Disconnection requests ====
Can someone connect {{Z|32068}} and {{Z|15974}} to their tests and implementations. Thanks in advance. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 23:24, 14 March 2026 (UTC)
:In the first function, there’s some issue with Maybe but I don’t think that’s the implementation. But I do think the error-handling for Maybe needs fixing. I’ll check back tomorrow and dig deeper if need be. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 23:48, 14 March 2026 (UTC)
::I fixed the error raising and checking, but the test is still failing for some reason? [[phab:T419920]] again? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 23:54, 14 March 2026 (UTC)
:::It certainly looks like a conversion failure going into {{Z|Z22123}}. I made a [[Z32083|new implementation]] of {{Z|Z22120}} which is now “preferred”. If everything behaves itself, [[Z22123]] can be reconnected. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 17:24, 15 March 2026 (UTC)
:{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:56, 20 March 2026 (UTC)
Can someone connect {{Z|32208}}, {{Z|32199}}, and {{Z|32204}}'s testcases and implementations? thanks in advance! --[[User:VivianIsBee|VivianIsBee]] ([[User talk:VivianIsBee|talk]]) 14:33, 20 March 2026 (UTC)
:{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:48, 20 March 2026 (UTC)
Can someone connect {{Z|32355}}'s testcases and implementations? Thanks in advance! [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 08:15, 22 March 2026 (UTC)
:I haven't connected the implementation yet, because it doesn't seem to pass any of the test cases. If the implementation has any issues, then fix them first. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:24, 22 March 2026 (UTC)
::Thanks. I fixed. One testcase has passed now. But another testcase still says "The lexeme doesn't have forms" although I added a lexical form about 20 hour ago. I suppose cashed data may not have been refreshed yet. So can you please connect implementation so that I can check precisely? [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 05:47, 23 March 2026 (UTC)
:{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:32, 23 March 2026 (UTC)
Can someone connect {{Z|32442}}'s testcases and implementations? Thanks in advance! [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 22:38, 23 March 2026 (UTC)
:Did you mean to include spaces between "words" with your Implementation, or was that a copy-paste error? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 05:24, 24 March 2026 (UTC)
::Thanks. That's a copy-paste error. I deleted one space.[[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 06:55, 24 March 2026 (UTC)
:{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 09:48, 24 March 2026 (UTC)
Request to connect {{Z|32212}}, {{Z|32213}}, {{Z|32214}}, {{Z|32216}}, and {{Z|32240}}, all related to defining role sentence in Chinese for all variants. [[User:1F616EMO|1F616EMO]] ([[User talk:1F616EMO|talk]]) 03:21, 24 March 2026 (UTC)
:{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 05:28, 24 March 2026 (UTC)
Can someone disconnect {{Z|10816}}'s Python implementation? Need to fix one of the test case errors. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 19:47, 26 March 2026 (UTC)
:{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 19:59, 26 March 2026 (UTC)
::Fixed the Python implementation, if anyone could reconnect that again. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 20:11, 26 March 2026 (UTC)
:::Noting that this was reconnected. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 14:40, 27 March 2026 (UTC)
Can someone please disconnect {{Z|26574}}? It needs to be edited to add the Bengali equivalent of a period to the end of the sentence. Thanks. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 10:59, 28 March 2026 (UTC)
:Disconnected. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 11:05, 28 March 2026 (UTC)
::Thanks! And I am sorry forgot this before but the tests need to be fixed as well, could you please disconnect them, too? [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 11:09, 28 March 2026 (UTC)
:::I just added the periods to the tests myself. Tell me if I am incorrect in their placement. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 11:15, 28 March 2026 (UTC)
::::Done, thanks for updating the tests but one other change is needed: in Z26606, the expected string should be 'কাজী নজরুল ইসলাম একজন কবি ছিলেন।' now because I updated the function to indicate when a person is deceased. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 11:53, 28 March 2026 (UTC)
:::::@[[User:ChaoticVermillion|ChaoticVermillion]], ping :) [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 19:03, 30 March 2026 (UTC)
::::::Apologies, I completely forgot about this. {{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 06:05, 31 March 2026 (UTC)
:::::::Thank you. Can you please connect the implementation now? [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 07:43, 31 March 2026 (UTC)
::::::::{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:00, 31 March 2026 (UTC)
Please connect [[Z32954|Z32954’s]] implementation and test case. I woukd like to use it on Abstract Wikipedia. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 07:46, 31 March 2026 (UTC)
:{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:00, 31 March 2026 (UTC)
Please disconnect [[Z10779]]; I would like to simplify it. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 07:46, 31 March 2026 (UTC)
:{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:02, 31 March 2026 (UTC)
::Done, you can reconnect it now. Thanks. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 08:24, 31 March 2026 (UTC)
:::{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:42, 31 March 2026 (UTC)
Request to connect [[Z33028]] to their test and implementation. Thanks. — [[User:内存溢出的猫|内存溢出的猫]] ([[User talk:内存溢出的猫|talk]]) 12:07, 2 April 2026 (UTC)
:{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 12:11, 2 April 2026 (UTC)
Request to connect [[Z33040]] with its implementation and test cases. -- [[User:Winston Sung|Winston Sung]] ([[User talk:Winston Sung|talk]]) 16:41, 2 April 2026 (UTC)
:{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 16:56, 2 April 2026 (UTC)
Can anyone connect [[Z33045]] and [[Z33046]], and add [[Z33044]] to [[Z32402]]? [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 17:52, 2 April 2026 (UTC)
:For the record, this is {{Already done}}. [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 22:17, 2 April 2026 (UTC)
Are the implementations and tests for [[Z32985]] and [[Z32982]] ready to be connected? Courtesy ping: {{u|EJPPhilippines}}. [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 22:17, 2 April 2026 (UTC)
:[[Z32982]] is {{already done}}; [[Z32985]] is not. [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 03:08, 3 April 2026 (UTC)
Could someone connect the implementations and tests for [[Z33073]] and [[Z33075]]? Thank you! [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 03:08, 3 April 2026 (UTC)
:{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 03:48, 3 April 2026 (UTC)
Can someone connect the implementations and tests for [[Z33059]]? [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 00:49, 4 April 2026 (UTC)
:{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 01:10, 4 April 2026 (UTC)
Request to connect [[Z33038]] with its implementation and test cases. -- [[User:Winston Sung|Winston Sung]] ([[User talk:Winston Sung|talk]]) 02:39, 4 April 2026 (UTC)
:{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:12, 4 April 2026 (UTC)
Request to connect [[Z33036]] with its implementation and test cases. -- [[User:Winston Sung|Winston Sung]] ([[User talk:Winston Sung|talk]]) 03:44, 4 April 2026 (UTC)
:{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 03:54, 4 April 2026 (UTC)
Can someone disconnect [[Z18680]] because I need to recheck the structure of the code back? [[User:Hakimi97|Hakimi97]] ([[User talk:Hakimi97|talk]]) 02:06, 7 April 2026 (UTC)
:{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 02:13, 7 April 2026 (UTC)
::Okay, I have validated the structure of [[Z18679]], could you please connect back all of the implementations and another additional test? Thank you. [[User:Hakimi97|Hakimi97]] ([[User talk:Hakimi97|talk]]) 04:06, 7 April 2026 (UTC)
:::{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 04:39, 7 April 2026 (UTC)
Please connect [[Z33165]] with its implementation and test cases. [[User:Hakimi97|Hakimi97]] ([[User talk:Hakimi97|talk]]) 13:28, 7 April 2026 (UTC)
:{{d}} [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 13:30, 7 April 2026 (UTC)
==== [[WF:HL]] ====
I have recently drafted some revamps of [[Wikifunctions:Human languages]] ([[User:Xeroctic/Human languages]]) and [[Wikifunctions:Reserved ZIDs]] ([[User:Xeroctic/Reserved ZIDs]]) in my userspace, and I think they are ready to replace the originals. I have not included translation tags for HL (which would be entirely different) and they need major modification for RZIDs to add or re-add them, so I would like that to be done as well. — [[User:Xeroctic|Xeroctic]] ([[User talk:Xeroctic|talk]]) 16:39, 3 November 2025 (UTC)
: {{s}} since Xeroctic's versions improve readability. — [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 11:17, 24 November 2025 (UTC)
:: Restoring this unresolved thread which was archived in oldid 237379. — [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 14:36, 16 January 2026 (UTC)
:[[WF:Human languages]]: Copying the categorisation from enWiktionary seems like a good idea. I don't understand why this page is separate from [[WF:Catalogue/Natural language operations]] though? (time/happenstance? [[WT:Human_languages#proposal|previous disc.]]) Redlinks to cataloguing subpages will remain red unless and until someone makes an NLG function in that language.
:[[WF:Reserved ZIDs]]: Using the live labels is an obvious improvement. I appreciate it being kept up-to-date. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:55, 16 January 2026 (UTC)
:{{support}} per Arlo Barnes and YoshiRulz [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 01:11, 11 March 2026 (UTC)
:{{support}} Let’s do this already. --[[User:Mormegil|Mormegil]] ([[User talk:Mormegil|talk]]) 08:33, 27 March 2026 (UTC)
jamkehoirawzheaey800qrelvvcp3v9
263740
263718
2026-04-07T13:53:25Z
Hakimi97
198
/* Tasks listed by users */
263740
wikitext
text/x-wiki
<div style="border:1px solid grey; margin:1em 4em 2em; padding:1.5em 1em;">
<span style="font-size:2em;">Welcome to the '''community portal for Wikifunctions'''!</span>
This is the central place to document Wikifunctions's to-do lists and ongoing project work. [To-do!]
[[Special:MyLanguage/Wikifunctions:Catalogue|The catalogue of functions]] is a good place to start.
For discussions, see [[Wikifunctions:Project chat]].
[[Category:Project]]
</div>
== Useful links ==
* [[Wikifunctions:List of policies and guidelines]]
* [[Special:MyLanguage/Help:Contents|Help:Contents]]
* [[Special:MyLanguage/Wikifunctions:Catalogue|Wikifunctions:Catalogue of functions]]
** [[Wikifunctions:Suggest a function]]
* [[Wikifunctions:Type proposals]]
* [[Special:MyLanguage/Wikifunctions:User scripts|Wikifunctions:User scripts]]
* [[Wikifunctions:Requests for user groups]]
* [[Wikifunctions:Requests for deletions]]
== Noticeboards ==
* [[Wikifunctions:Project chat]]
* [[Wikifunctions:Administrators' noticeboard]]
* [[Wikifunctions:Report vandalism]]
* [[Wikifunctions:Translators' noticeboard]]
== Task centre ==
=== Perennial tasks ===
<!--Feel free to add new tasks to this section. However, if they are one-off requests, please add them to Tasks listed by users-->
* [[File:OOjs UI icon language-ltr.svg|class=skin-invert]] [[Special:MyLanguage/Help:Multilingual|Translation]]:
**[[Special:Random|Add a translation to a random object]]
**[[Special:MyLanguage/Category:Policy|Add a translation to a policy page]]
**[[Special:ListMissingLabels|See any objects without a label in a given language]]
**[[Special:PageTranslation]]
**[[Special:LanguageStats|Language statistics]]
*[[File:Octicons-tools.svg|15px|class=skin-invert]] [[:Category:Tracking categories|Tracking categories]]
* [[File:Octicons-tools.svg|15px|class=skin-invert]] [[Wikifunctions:Request for cleanup|Requests for cleanup]]
=== Tasks listed by users ===
:''Example:''
:* Fix [[Special:Random|this implementation]] please. {{User|Example2}}
::{{Done}}. Thanks for pointing that out! {{User|Example}}
<hr/>
[signing to enable reply link:--[[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:27, 6 May 2024 (UTC)
:Heya, I tried to make a {{Z|Z29010}} implementation in composition <small>({{Z|Z29012}})</small>, but it errors out: <code>Unable to convert to canonical form (path to the problem: "Z22K2.K1.K1.K2.Z5K2.Z528K1.Z99K1.Z7K1.Z8K4.[ 1 ].Z14K2.Z26107K2.Z21394K1.[ 1 ].Z10771K1.Z23753K2.Z18K1.{"Z1K1":"Z18","Z6K1":"Z29010K5","Z18K1":""}")</code> - why does this happen, and how would I fix it? I tried to use {{Z|Z28030}} as a guide, but for a first dive into composition I may have taken on something a bit large. [[User:Infernostars|infernostars]] <small>([[User talk:Infernostars|talk]]) ([[Special:Contributions/Infernostars|contribs]])</small> 02:49, 23 October 2025 (UTC)
::When you go to {{Z|Z29012}} you'll see two red words "Function" and "Wikidata item". Both of those were not set in the composition, so it is missing information. There may be more deeper problems, but fix this first. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 03:33, 23 October 2025 (UTC)
::{{done}} Works now, seemed to be just a couple typos. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:14, 24 December 2025 (UTC)
:Please connect the tests and implementation for {{Z|29750}}. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:33, 25 November 2025 (UTC)
::This ^ was done, so thanks for that, and I've now built a new function around it that's ready to be connected: {{Z|29749}}<!-- --><br>Having fallbacks to other languages and indicating such does of course raise the question of ''when'' it should be indicated, and I certainly don't have the answer, so I might leave this message here for the multilingual among you to see it and chime in. Either on [[Talk:Z24144]], or by way of adding a test case on one of these functions. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:42, 25 November 2025 (UTC)
:::If it’s about the way labels in fallback languages are displayed, perhaps the [[Talk:Z21583|Discussion page]] for {{Z|Z21583}} would be a better location? There has been some discussion at [[Wikifunctions talk:Abstract Wikipedia/2025 fragment experiments#Proposed recommendation: Fragments should return Z11/monolingual strings]]. (The spinoff, [[Wikifunctions talk:Abstract Wikipedia/2025 fragment experiments#Fallbacks]], might also be relevant.) [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 15:23, 25 November 2025 (UTC)
:Now that raising and catching errors has better support, [[Z28159]] should take an {{Z|50}} instead of a ZID {{Z|6}}. Unfortunately it's already been used in other functions so it might be a pain to change. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 07:20, 21 December 2025 (UTC)
::Yes. I think this gets fixed along with {{Z|Z28162}}, which is listed in [[Wikifunctions:Request for cleanup#Function:(!) throw error (Z28154)]].
::@[[User:Dv103|Dv103]] I was thinking we might just wrap {{Z|851}}? Custom errors will support only strings for the foreseeable future, as I understand it [can’t currently locate the relevant comment on Phabricator]. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 13:12, 21 December 2025 (UTC)
:The simple implementation for {{Z|30737}} is failing with [[Z516]], even though I can get a (correct) result by [https://www.wikifunctions.org/view/en/Z12681?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z12681%22%2C%22Z12681K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22475%22%2C%22Z22475K1%22%3A%7B%22Z1K1%22%3A%22Z39%22%2C%22Z39K1%22%3A%22K1%22%7D%2C%22Z22475K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30260%22%2C%22Z30260K1%22%3A%5B%22Z6095%22%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L100%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L101%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L102%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L103%22%7D%5D%2C%22Z30260K2%22%3A%5B%22Z6030%22%2C%22Z6031%22%5D%2C%22Z30260K3%22%3A%5B%22Z60%22%5D%2C%22Z30260K4%22%3A%5B%22Z6092%22%5D%7D%7D%7D calling those functions on the test input]. Oddly enough [https://www.wikifunctions.org/view/en/Z12681?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z12681%22%2C%22Z12681K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22475%22%2C%22Z22475K1%22%3A%7B%22Z1K1%22%3A%22Z39%22%2C%22Z39K1%22%3A%22K1%22%7D%2C%22Z22475K2%22%3A%7B%22Z1K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z883%22%2C%22Z883K1%22%3A%22Z1%22%2C%22Z883K2%22%3A%22Z1%22%7D%2C%22K1%22%3A%5B%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z882%22%2C%22Z882K1%22%3A%22Z1%22%2C%22Z882K2%22%3A%22Z1%22%7D%2C%7B%22Z1K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z882%22%2C%22Z882K1%22%3A%22Z1%22%2C%22Z882K2%22%3A%22Z1%22%7D%2C%22K1%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%226%22%7D%2C%22K2%22%3A%22Abacus%22%7D%5D%7D%7D%7D a trivial input] causes that to fail with the same error. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:43, 26 December 2025 (UTC)
::Sorry, I missed this one. Initial validation rejects a map with {{Z|Z1}} as its key type. Although it’s not guaranteed to be hashable, [[Z1]] should probably be admitted as a placeholder {{Z|Z4}}. In any event, using {{Z|Z6}} as the alternative seems to work and does not restrict the map to having only Strings for keys (as seen in {{Z|Z30906}}, where the keys have {{Z|Z39}} for their Type). [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 09:18, 31 December 2025 (UTC)
:::[[Z30907|Documented]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:50, 31 December 2025 (UTC)
:The implementation for {{Z|29183}} is slightly incorrect, it needs to subtract 9 on the condition that variable <code>add</code> is >9 (tests >10 currently). For me to change {{Z|29185}}, the implementation needs to be disconnected from {{Z|29183}} by a functioneer ([[Special:ListUsers/functioneer]]) first. The english wiki also warns about using negative values as input for the modulo operation, so, in addition, the result computation should be rephrased to be
<syntaxhighlight lang="python">
def intdivceil(x, d):
return x//d + (0 if x % d == 0 else 1)
return 10 * intdivceil(sum, 10) - sum
</syntaxhighlight>
:I'd also like to have all test cases of {{Z|29183}} connected by a functioneer, after changes to {{Z|29185}} have been commited. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 21:54, 2 January 2026 (UTC)
::Disconnected. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 22:12, 2 January 2026 (UTC)
:::Thanks, changes done - please reconnect. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 22:33, 2 January 2026 (UTC)
::::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 23:08, 2 January 2026 (UTC)
:::Weird: {{Z|30940}} and {{Z|30941}} tests do not pass after the reconnect, although [https://www.wikifunctions.org/wiki/Special:RunFunction?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z29183%22%2C%22Z29183K1%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%2290544230009%22%7D%7D running them manually] produces the expected result. Judging from the timestamps within the detail view, pressing the Refresh-Button does not actually re-run the tests.
:::It seems that their results have been generated with the previous function. Can you make an effort to dis- and reconnect these two tests? The (unconfirmed) presumption is that tests only run on demand (event-triggered vs time scheduled). If this is true it may be noteworthy in the [[WF:FAQ]].
:::The first test, {{Z|29184}}, did not exhibit the same problem, it has been updated as expected. Because the execution timestamps of all three tests do not vary greatly, they were probably triggered, correctly so, by the same event. In theory they should then have consequently worked on the same function - since the test results suggest different, there could have either been a race condition or a stale cache, eventually with some tests running before the action that triggered them was fully committed. If this is not a timing issue, the response to the connection event might miss to update some of the data structures associated with the connected tests and simply run them unchanged, but this is speculative. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 01:38, 3 January 2026 (UTC)
::::Yeah the cached failures are super annoying, I think they reduced the cache duration recently but it's still too high IMO. Disconnecting and reconnecting the Implementation triggered them to run again. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:16, 3 January 2026 (UTC)
:Can somebody connect the tests and implementation of this function? [[Z31047|arithmetical average of numbers (Z31047)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 04:35, 13 January 2026 (UTC)
::The implementation seems to fail all the tests. I suspect from the use of <code>{}</code> in Python code. Besides, on the implementation ({{Z|Z31048}}), it used <code>sum</code> as variable, which I don't think allowable in Python. Try to use another variable name. Last, what is the expected result of {{Z|Z31050}}? [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 04:50, 13 January 2026 (UTC)
:::Sorry, @[[User:Sys64ish|Sys64ish]], I just got the expected result from {{Z|31050}}. I have connected the test cases, but not yet for the implementation as you may want to fix it first(?) [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 05:05, 13 January 2026 (UTC)
::::Fixed it, passes tests [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 05:09, 13 January 2026 (UTC)
:::::{{Done}} connected! [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 05:11, 13 January 2026 (UTC)
:When I go to add a test to this function, for some reason I cannot select a fixed value for the expected value, the type is fixed to a function call. Can somebody fix this? [[Z31051|graph a one parameter function (Z31051)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 06:16, 13 January 2026 (UTC)
::You need to select an equality function, which in this case would be {{Z|889}} with {{Z|20924}} as an argument. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 09:59, 13 January 2026 (UTC)
:::Just what I was about to say, only shorter!
:::I had a look at the Python implementation and that doesn’t appear to be viable, because a {{Z|Z8}} object is data, not a callable Python function. I think a composition is the only option here, but we don’t appear to have a [[Special:Search/:"z8k2 z1k1 z7 z7k1 z881 z881k1 Z20838"|generator function for ]]{{Z|Z20838}} yet ([[Special:Search/:"z8k2 z1k1 z7 z7k1 z881 z881k1 z19677"|nor for rationals]]). [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:39, 13 January 2026 (UTC)
:Can somebody connect the tests and implementations of this function? [[Z31079|decimal number range (Z31079)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 13:57, 14 January 2026 (UTC)
::I’ve connected the test but there are a few issues with the implementation. The function has no return and the list to return shouldn’t be called range, as that overwrites the built-in range() function. Wikifunctions.Error requires a list of strings and you should probably guard against K3 being zero. Just let us know if you need any help with this. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 14:22, 14 January 2026 (UTC)
:::I think I fixed the implementation [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 14:28, 14 January 2026 (UTC)
::::Looks close. You probably want to *return* Wikifunctions.Error in order to halt execution. The K1 and K2 arguments are float64s rather than strings, so they need coercing to str for the error. You still risk a divide by zero if K3 has no guard. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 14:48, 14 January 2026 (UTC)
:::::I fixed it now, tests are passing(?) and when I run it locally it works as intended. [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 02:22, 15 January 2026 (UTC)
::::::{{done}}
::::::I created {{Z|31093}} to fix the last test, since your Python implementation was returning slightly inaccurate values for [[w:en:Floating-point_arithmetic#Accuracy_problems|reasons]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:11, 15 January 2026 (UTC)
:Can somebody connect the impl. and test cases of these functions? [[Z31051|generate real (float64) list from a function (Z31051)]] [[Z31111|increment (float64) (Z31111)]] [[Z31116|decrement (float64) (Z31116)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 00:11, 16 January 2026 (UTC)
::Mostly. I see {{Z|Z31051}} has its Minimum and Maximum defined as integers rather than float64, as defined for the generator. Something has to change here, and I’m guessing it’s [[Z31051]], so I disconnected its implementation again. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 01:31, 16 January 2026 (UTC)
:::all inputs except the input for the function are now float64 [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 13:36, 16 January 2026 (UTC)
::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 15:07, 16 January 2026 (UTC)
: Can someone here connect the implementation and test cases of this function: [[Z18679|Malay cardinal to ordinal]]? {{User|Hakimi97}}
:: {{Done}} [[User:Sys64ish|Sys32ish]] ([[User talk:Sys32ish|talk]]) 09:16, 19 January 2026 (UTC)
:Can someone please add the following IPA symbols needed for {{Z|Z1099}} to <code>lookup</code> in the JavaScript implementation {{Z|Z29880}}?
: "ɐ": "Q503323",
: "u": "Q29653",
: "ɕ": "Q605116",
: "x": "Q271603",
: "ʑ": "Q684085",
: "ɣ": "Q654670",
: "ʀ": "Q864677",
: "χ": "Q849796",
: "ʁ": "Q1054276",
: "o": "Q862579",
: "æ": "Q740768",
: "ɪ": "Q1070049",
: "ʊ": "Q1137807",
:Thank you! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 20:23, 27 February 2026 (UTC)
::I forgot to mention the ligatures
::"ʤ": "Q778145",
::"ʧ": "Q518603",
::which could be put next to the already present
::"dʒ": "Q778145",
::"tʃ": "Q518603",
::--[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 20:24, 27 February 2026 (UTC)
::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 00:33, 28 February 2026 (UTC)
:::Thank you! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 08:59, 28 February 2026 (UTC)
: Can someone connect up [[Z31844]] and [[Z31837]]. These are better than the other implementations on their pages. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 09:04, 1 March 2026 (UTC)
::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:12, 1 March 2026 (UTC)
:Hello, please connect {{Z|Z31729}}'s implementation and test cases. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 10:48, 8 March 2026 (UTC)
::The implementation does not seem to pass any of the test case. If you click on the [[File:Icon Information.svg|Icon_Information|15px|class=skin-invert-image]] (i) icon on the test status, you can find the error, what the implementation output, etc. Try to fix the implementation first. Thanks! [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 11:22, 8 March 2026 (UTC)
::It seems you're returning a string value when it expects a HTML fragment. HTML fragment and string are different. Maybe you can change the output type to string? [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 11:44, 10 March 2026 (UTC)
:::Thanks for running the tests, @[[User:NikolasKHF|NikolasKHF]]; I couldn’t run them on my own (seemingly because I don’t have the needed right). I will fix the errors.
:::Thanks for looking into this, @[[User:Sys64ish|Sys64ish]]. I actually did want to return an HTML fragment instead of a string because I think that would be more useful on the wikis. However, it looks like I forgot to convert the string for most cases where an output is returned (hence why only one test failure actually complains about the output value being incorrect). [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 19:52, 10 March 2026 (UTC)
:::I have fixed the errors and added a new test case. Please connect the implementation and all the test cases now. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 10:23, 28 March 2026 (UTC)
::::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:04, 28 March 2026 (UTC)
:Can someone connect [[Z31994]] and [[Z31999]] with its tests and implementations. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:41, 11 March 2026 (UTC)
::{{done}} [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 08:49, 11 March 2026 (UTC)
:::Oh yeah I also made another function now, [[Z32004]]. Can someone connect its implementations and tests. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 09:02, 11 March 2026 (UTC)
::::{{done}} [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 09:23, 11 March 2026 (UTC)
:Can someone connect up [[Z32013]]. Also how do you become able to connect and disconnect implementations? Is it only available to extended confirmed users? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 10:06, 12 March 2026 (UTC)
::I don’t believe this implementation should be connected at this time. The existing Python implementation respects the community consensus represented by the test cases connected to {{Z|Z24144}}. What do you think, @[[User:99of9|99of9]]? [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:28, 12 March 2026 (UTC)
:::Fair, I didn't realise the test cases served as implicit consensus. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 11:42, 12 March 2026 (UTC)
::::No worries. It’s not clearly articulated, but we’ll clarify that later. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:51, 12 March 2026 (UTC)
:::I'm not sure. At the moment it correctly reproduces all those we got "consensus" for. So in some sense this implementation is just suggesting/assuming extra fallbacks for those we haven't properly considered? One option would be to connect it and then add counter test cases if we ever felt we didn't like it's current suggestions. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 00:30, 13 March 2026 (UTC)
::::We should be careful… It’s not easy to tell how many test case results would be affected. It’s easy enough to disconnect again, of course, so I’m happy to give it a go while activity in this domain is at a low ebb. {{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:04, 13 March 2026 (UTC)
::To connect implementations, you need Functioneer rights, which can be requested here [[Wikifunctions:Requests for user groups]]. There is a 48-hour waiting period. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:32, 12 March 2026 (UTC)
:Can someone connect up [[Z32027]] with its implementation and test? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:29, 13 March 2026 (UTC)
::And also [[Z32031]]. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 10:16, 13 March 2026 (UTC)
:::{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:51, 13 March 2026 (UTC)
::{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:50, 13 March 2026 (UTC)
{{tracked|T419920|resolved}}
:What is wrong with my implementation at [[Z32055]]? Looking at the failed test, it returns an error because 'dict' has no attribute 'split', but I didn't use split anywhere in my code. What is the issue? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 01:38, 14 March 2026 (UTC)
::I think that error message is coming from the [[Z20424|type converter]]. I think <code>Z20424K1['Z20420K2']['Z20342K1']</code> would be a dictionary representing a {{Z|16098}} but the code is written as though it were a string? Neither Python nor type converters are in my wheelhouse. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:49, 14 March 2026 (UTC)
:::I think this is [[:phab:T419920]] and presumed to be a consequence of this week’s rollout of “v2”. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:08, 14 March 2026 (UTC)
::The type converter issue has gone away, but your Implementation doesn't quite match the tests (and composition), so I've disconnected it again. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:54, 20 March 2026 (UTC)
:What is wrong with my implementation at {{Z|Z32851}}? Btw, it would be really useful if errors said which dependency produced the error, instead of just saying "Error in evaluation". [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 07:18, 28 March 2026 (UTC)
::You were catching the wrong {{Z|50}}, but then the error should have bubbled up so you could see it. I think there's something broken in the site w/ {{Z|11}} right now since [[Z32804|I ran into a similar problem yesterday]]. (And to contradict my note there, while debugging your implementation I saw the same behaviour regardless of if I used [[Z26107]] or a literal Z11, so it must be a bug in WikiLambda.) [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 08:14, 28 March 2026 (UTC)
:::Seems to be resolved now. Your implementation has already been connected. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 17:01, 2 April 2026 (UTC)
:Any guesses as to why [[Z32805]] is failing for [[Z33090]]? It says {{Z|507}} but still produces a value. Inspecting the actual and expected values ([https://www.wikifunctions.org/view/en/Z801?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z801%22%2C%22Z801K1%22%3A%5B%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z881%22%2C%22Z881K1%22%3A%22Z89%22%7D%2C%5B%22Z89%22%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Ctd%3E%3C%2Ftd%3E%22%7D%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Cth%3EA%3C%2Fth%3E%22%7D%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Cth%3EB%3C%2Fth%3E%22%7D%5D%2C%5B%22Z89%22%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Cth%3E1%3C%2Fth%3E%22%7D%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Ctd%3EA1%3C%2Ftd%3E%22%7D%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Ctd%3EB1%3C%2Ftd%3E%22%7D%5D%2C%5B%22Z89%22%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Cth%3E2%3C%2Fth%3E%22%7D%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Ctd%3EA2%3C%2Ftd%3E%22%7D%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Ctd%3EB2%3C%2Ftd%3E%22%7D%5D%5D%7D via echo]), I can see they're identical. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 22:44, 3 April 2026 (UTC)
::My guess is that there is a bug relating to {{Z|Z877}}. There are no guarantees, but switching the equality function seems successful. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 22:56, 3 April 2026 (UTC)
==== Connection / Disconnection requests ====
Can someone connect {{Z|32068}} and {{Z|15974}} to their tests and implementations. Thanks in advance. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 23:24, 14 March 2026 (UTC)
:In the first function, there’s some issue with Maybe but I don’t think that’s the implementation. But I do think the error-handling for Maybe needs fixing. I’ll check back tomorrow and dig deeper if need be. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 23:48, 14 March 2026 (UTC)
::I fixed the error raising and checking, but the test is still failing for some reason? [[phab:T419920]] again? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 23:54, 14 March 2026 (UTC)
:::It certainly looks like a conversion failure going into {{Z|Z22123}}. I made a [[Z32083|new implementation]] of {{Z|Z22120}} which is now “preferred”. If everything behaves itself, [[Z22123]] can be reconnected. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 17:24, 15 March 2026 (UTC)
:{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:56, 20 March 2026 (UTC)
Can someone connect {{Z|32208}}, {{Z|32199}}, and {{Z|32204}}'s testcases and implementations? thanks in advance! --[[User:VivianIsBee|VivianIsBee]] ([[User talk:VivianIsBee|talk]]) 14:33, 20 March 2026 (UTC)
:{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:48, 20 March 2026 (UTC)
Can someone connect {{Z|32355}}'s testcases and implementations? Thanks in advance! [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 08:15, 22 March 2026 (UTC)
:I haven't connected the implementation yet, because it doesn't seem to pass any of the test cases. If the implementation has any issues, then fix them first. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:24, 22 March 2026 (UTC)
::Thanks. I fixed. One testcase has passed now. But another testcase still says "The lexeme doesn't have forms" although I added a lexical form about 20 hour ago. I suppose cashed data may not have been refreshed yet. So can you please connect implementation so that I can check precisely? [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 05:47, 23 March 2026 (UTC)
:{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:32, 23 March 2026 (UTC)
Can someone connect {{Z|32442}}'s testcases and implementations? Thanks in advance! [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 22:38, 23 March 2026 (UTC)
:Did you mean to include spaces between "words" with your Implementation, or was that a copy-paste error? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 05:24, 24 March 2026 (UTC)
::Thanks. That's a copy-paste error. I deleted one space.[[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 06:55, 24 March 2026 (UTC)
:{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 09:48, 24 March 2026 (UTC)
Request to connect {{Z|32212}}, {{Z|32213}}, {{Z|32214}}, {{Z|32216}}, and {{Z|32240}}, all related to defining role sentence in Chinese for all variants. [[User:1F616EMO|1F616EMO]] ([[User talk:1F616EMO|talk]]) 03:21, 24 March 2026 (UTC)
:{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 05:28, 24 March 2026 (UTC)
Can someone disconnect {{Z|10816}}'s Python implementation? Need to fix one of the test case errors. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 19:47, 26 March 2026 (UTC)
:{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 19:59, 26 March 2026 (UTC)
::Fixed the Python implementation, if anyone could reconnect that again. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 20:11, 26 March 2026 (UTC)
:::Noting that this was reconnected. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 14:40, 27 March 2026 (UTC)
Can someone please disconnect {{Z|26574}}? It needs to be edited to add the Bengali equivalent of a period to the end of the sentence. Thanks. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 10:59, 28 March 2026 (UTC)
:Disconnected. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 11:05, 28 March 2026 (UTC)
::Thanks! And I am sorry forgot this before but the tests need to be fixed as well, could you please disconnect them, too? [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 11:09, 28 March 2026 (UTC)
:::I just added the periods to the tests myself. Tell me if I am incorrect in their placement. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 11:15, 28 March 2026 (UTC)
::::Done, thanks for updating the tests but one other change is needed: in Z26606, the expected string should be 'কাজী নজরুল ইসলাম একজন কবি ছিলেন।' now because I updated the function to indicate when a person is deceased. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 11:53, 28 March 2026 (UTC)
:::::@[[User:ChaoticVermillion|ChaoticVermillion]], ping :) [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 19:03, 30 March 2026 (UTC)
::::::Apologies, I completely forgot about this. {{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 06:05, 31 March 2026 (UTC)
:::::::Thank you. Can you please connect the implementation now? [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 07:43, 31 March 2026 (UTC)
::::::::{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:00, 31 March 2026 (UTC)
Please connect [[Z32954|Z32954’s]] implementation and test case. I woukd like to use it on Abstract Wikipedia. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 07:46, 31 March 2026 (UTC)
:{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:00, 31 March 2026 (UTC)
Please disconnect [[Z10779]]; I would like to simplify it. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 07:46, 31 March 2026 (UTC)
:{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:02, 31 March 2026 (UTC)
::Done, you can reconnect it now. Thanks. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 08:24, 31 March 2026 (UTC)
:::{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:42, 31 March 2026 (UTC)
Request to connect [[Z33028]] to their test and implementation. Thanks. — [[User:内存溢出的猫|内存溢出的猫]] ([[User talk:内存溢出的猫|talk]]) 12:07, 2 April 2026 (UTC)
:{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 12:11, 2 April 2026 (UTC)
Request to connect [[Z33040]] with its implementation and test cases. -- [[User:Winston Sung|Winston Sung]] ([[User talk:Winston Sung|talk]]) 16:41, 2 April 2026 (UTC)
:{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 16:56, 2 April 2026 (UTC)
Can anyone connect [[Z33045]] and [[Z33046]], and add [[Z33044]] to [[Z32402]]? [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 17:52, 2 April 2026 (UTC)
:For the record, this is {{Already done}}. [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 22:17, 2 April 2026 (UTC)
Are the implementations and tests for [[Z32985]] and [[Z32982]] ready to be connected? Courtesy ping: {{u|EJPPhilippines}}. [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 22:17, 2 April 2026 (UTC)
:[[Z32982]] is {{already done}}; [[Z32985]] is not. [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 03:08, 3 April 2026 (UTC)
Could someone connect the implementations and tests for [[Z33073]] and [[Z33075]]? Thank you! [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 03:08, 3 April 2026 (UTC)
:{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 03:48, 3 April 2026 (UTC)
Can someone connect the implementations and tests for [[Z33059]]? [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 00:49, 4 April 2026 (UTC)
:{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 01:10, 4 April 2026 (UTC)
Request to connect [[Z33038]] with its implementation and test cases. -- [[User:Winston Sung|Winston Sung]] ([[User talk:Winston Sung|talk]]) 02:39, 4 April 2026 (UTC)
:{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:12, 4 April 2026 (UTC)
Request to connect [[Z33036]] with its implementation and test cases. -- [[User:Winston Sung|Winston Sung]] ([[User talk:Winston Sung|talk]]) 03:44, 4 April 2026 (UTC)
:{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 03:54, 4 April 2026 (UTC)
Can someone disconnect [[Z18680]] because I need to recheck the structure of the code back? [[User:Hakimi97|Hakimi97]] ([[User talk:Hakimi97|talk]]) 02:06, 7 April 2026 (UTC)
:{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 02:13, 7 April 2026 (UTC)
::Okay, I have validated the structure of [[Z18679]], could you please connect back all of the implementations and another additional test? Thank you. [[User:Hakimi97|Hakimi97]] ([[User talk:Hakimi97|talk]]) 04:06, 7 April 2026 (UTC)
:::{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 04:39, 7 April 2026 (UTC)
Please connect [[Z33165]] with its implementation and test cases. [[User:Hakimi97|Hakimi97]] ([[User talk:Hakimi97|talk]]) 13:28, 7 April 2026 (UTC)
:{{d}} [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 13:30, 7 April 2026 (UTC)
Please connect [[Z30603]] with its implementation and test cases, the function is in its complete form now. [[User:Hakimi97|Hakimi97]] ([[User talk:Hakimi97|talk]]) 13:53, 7 April 2026 (UTC)
==== [[WF:HL]] ====
I have recently drafted some revamps of [[Wikifunctions:Human languages]] ([[User:Xeroctic/Human languages]]) and [[Wikifunctions:Reserved ZIDs]] ([[User:Xeroctic/Reserved ZIDs]]) in my userspace, and I think they are ready to replace the originals. I have not included translation tags for HL (which would be entirely different) and they need major modification for RZIDs to add or re-add them, so I would like that to be done as well. — [[User:Xeroctic|Xeroctic]] ([[User talk:Xeroctic|talk]]) 16:39, 3 November 2025 (UTC)
: {{s}} since Xeroctic's versions improve readability. — [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 11:17, 24 November 2025 (UTC)
:: Restoring this unresolved thread which was archived in oldid 237379. — [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 14:36, 16 January 2026 (UTC)
:[[WF:Human languages]]: Copying the categorisation from enWiktionary seems like a good idea. I don't understand why this page is separate from [[WF:Catalogue/Natural language operations]] though? (time/happenstance? [[WT:Human_languages#proposal|previous disc.]]) Redlinks to cataloguing subpages will remain red unless and until someone makes an NLG function in that language.
:[[WF:Reserved ZIDs]]: Using the live labels is an obvious improvement. I appreciate it being kept up-to-date. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:55, 16 January 2026 (UTC)
:{{support}} per Arlo Barnes and YoshiRulz [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 01:11, 11 March 2026 (UTC)
:{{support}} Let’s do this already. --[[User:Mormegil|Mormegil]] ([[User talk:Mormegil|talk]]) 08:33, 27 March 2026 (UTC)
6oqqvuymvw1jj6swv6rsw588s9c6x3b
263741
263740
2026-04-07T13:54:16Z
Dv103
11127
/* Connection / Disconnection requests */ Reply
263741
wikitext
text/x-wiki
<div style="border:1px solid grey; margin:1em 4em 2em; padding:1.5em 1em;">
<span style="font-size:2em;">Welcome to the '''community portal for Wikifunctions'''!</span>
This is the central place to document Wikifunctions's to-do lists and ongoing project work. [To-do!]
[[Special:MyLanguage/Wikifunctions:Catalogue|The catalogue of functions]] is a good place to start.
For discussions, see [[Wikifunctions:Project chat]].
[[Category:Project]]
</div>
== Useful links ==
* [[Wikifunctions:List of policies and guidelines]]
* [[Special:MyLanguage/Help:Contents|Help:Contents]]
* [[Special:MyLanguage/Wikifunctions:Catalogue|Wikifunctions:Catalogue of functions]]
** [[Wikifunctions:Suggest a function]]
* [[Wikifunctions:Type proposals]]
* [[Special:MyLanguage/Wikifunctions:User scripts|Wikifunctions:User scripts]]
* [[Wikifunctions:Requests for user groups]]
* [[Wikifunctions:Requests for deletions]]
== Noticeboards ==
* [[Wikifunctions:Project chat]]
* [[Wikifunctions:Administrators' noticeboard]]
* [[Wikifunctions:Report vandalism]]
* [[Wikifunctions:Translators' noticeboard]]
== Task centre ==
=== Perennial tasks ===
<!--Feel free to add new tasks to this section. However, if they are one-off requests, please add them to Tasks listed by users-->
* [[File:OOjs UI icon language-ltr.svg|class=skin-invert]] [[Special:MyLanguage/Help:Multilingual|Translation]]:
**[[Special:Random|Add a translation to a random object]]
**[[Special:MyLanguage/Category:Policy|Add a translation to a policy page]]
**[[Special:ListMissingLabels|See any objects without a label in a given language]]
**[[Special:PageTranslation]]
**[[Special:LanguageStats|Language statistics]]
*[[File:Octicons-tools.svg|15px|class=skin-invert]] [[:Category:Tracking categories|Tracking categories]]
* [[File:Octicons-tools.svg|15px|class=skin-invert]] [[Wikifunctions:Request for cleanup|Requests for cleanup]]
=== Tasks listed by users ===
:''Example:''
:* Fix [[Special:Random|this implementation]] please. {{User|Example2}}
::{{Done}}. Thanks for pointing that out! {{User|Example}}
<hr/>
[signing to enable reply link:--[[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:27, 6 May 2024 (UTC)
:Heya, I tried to make a {{Z|Z29010}} implementation in composition <small>({{Z|Z29012}})</small>, but it errors out: <code>Unable to convert to canonical form (path to the problem: "Z22K2.K1.K1.K2.Z5K2.Z528K1.Z99K1.Z7K1.Z8K4.[ 1 ].Z14K2.Z26107K2.Z21394K1.[ 1 ].Z10771K1.Z23753K2.Z18K1.{"Z1K1":"Z18","Z6K1":"Z29010K5","Z18K1":""}")</code> - why does this happen, and how would I fix it? I tried to use {{Z|Z28030}} as a guide, but for a first dive into composition I may have taken on something a bit large. [[User:Infernostars|infernostars]] <small>([[User talk:Infernostars|talk]]) ([[Special:Contributions/Infernostars|contribs]])</small> 02:49, 23 October 2025 (UTC)
::When you go to {{Z|Z29012}} you'll see two red words "Function" and "Wikidata item". Both of those were not set in the composition, so it is missing information. There may be more deeper problems, but fix this first. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 03:33, 23 October 2025 (UTC)
::{{done}} Works now, seemed to be just a couple typos. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:14, 24 December 2025 (UTC)
:Please connect the tests and implementation for {{Z|29750}}. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:33, 25 November 2025 (UTC)
::This ^ was done, so thanks for that, and I've now built a new function around it that's ready to be connected: {{Z|29749}}<!-- --><br>Having fallbacks to other languages and indicating such does of course raise the question of ''when'' it should be indicated, and I certainly don't have the answer, so I might leave this message here for the multilingual among you to see it and chime in. Either on [[Talk:Z24144]], or by way of adding a test case on one of these functions. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:42, 25 November 2025 (UTC)
:::If it’s about the way labels in fallback languages are displayed, perhaps the [[Talk:Z21583|Discussion page]] for {{Z|Z21583}} would be a better location? There has been some discussion at [[Wikifunctions talk:Abstract Wikipedia/2025 fragment experiments#Proposed recommendation: Fragments should return Z11/monolingual strings]]. (The spinoff, [[Wikifunctions talk:Abstract Wikipedia/2025 fragment experiments#Fallbacks]], might also be relevant.) [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 15:23, 25 November 2025 (UTC)
:Now that raising and catching errors has better support, [[Z28159]] should take an {{Z|50}} instead of a ZID {{Z|6}}. Unfortunately it's already been used in other functions so it might be a pain to change. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 07:20, 21 December 2025 (UTC)
::Yes. I think this gets fixed along with {{Z|Z28162}}, which is listed in [[Wikifunctions:Request for cleanup#Function:(!) throw error (Z28154)]].
::@[[User:Dv103|Dv103]] I was thinking we might just wrap {{Z|851}}? Custom errors will support only strings for the foreseeable future, as I understand it [can’t currently locate the relevant comment on Phabricator]. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 13:12, 21 December 2025 (UTC)
:The simple implementation for {{Z|30737}} is failing with [[Z516]], even though I can get a (correct) result by [https://www.wikifunctions.org/view/en/Z12681?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z12681%22%2C%22Z12681K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22475%22%2C%22Z22475K1%22%3A%7B%22Z1K1%22%3A%22Z39%22%2C%22Z39K1%22%3A%22K1%22%7D%2C%22Z22475K2%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z30260%22%2C%22Z30260K1%22%3A%5B%22Z6095%22%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L100%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L101%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L102%22%7D%2C%7B%22Z1K1%22%3A%22Z6095%22%2C%22Z6095K1%22%3A%22L103%22%7D%5D%2C%22Z30260K2%22%3A%5B%22Z6030%22%2C%22Z6031%22%5D%2C%22Z30260K3%22%3A%5B%22Z60%22%5D%2C%22Z30260K4%22%3A%5B%22Z6092%22%5D%7D%7D%7D calling those functions on the test input]. Oddly enough [https://www.wikifunctions.org/view/en/Z12681?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z12681%22%2C%22Z12681K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22475%22%2C%22Z22475K1%22%3A%7B%22Z1K1%22%3A%22Z39%22%2C%22Z39K1%22%3A%22K1%22%7D%2C%22Z22475K2%22%3A%7B%22Z1K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z883%22%2C%22Z883K1%22%3A%22Z1%22%2C%22Z883K2%22%3A%22Z1%22%7D%2C%22K1%22%3A%5B%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z882%22%2C%22Z882K1%22%3A%22Z1%22%2C%22Z882K2%22%3A%22Z1%22%7D%2C%7B%22Z1K1%22%3A%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z882%22%2C%22Z882K1%22%3A%22Z1%22%2C%22Z882K2%22%3A%22Z1%22%7D%2C%22K1%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%226%22%7D%2C%22K2%22%3A%22Abacus%22%7D%5D%7D%7D%7D a trivial input] causes that to fail with the same error. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:43, 26 December 2025 (UTC)
::Sorry, I missed this one. Initial validation rejects a map with {{Z|Z1}} as its key type. Although it’s not guaranteed to be hashable, [[Z1]] should probably be admitted as a placeholder {{Z|Z4}}. In any event, using {{Z|Z6}} as the alternative seems to work and does not restrict the map to having only Strings for keys (as seen in {{Z|Z30906}}, where the keys have {{Z|Z39}} for their Type). [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 09:18, 31 December 2025 (UTC)
:::[[Z30907|Documented]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:50, 31 December 2025 (UTC)
:The implementation for {{Z|29183}} is slightly incorrect, it needs to subtract 9 on the condition that variable <code>add</code> is >9 (tests >10 currently). For me to change {{Z|29185}}, the implementation needs to be disconnected from {{Z|29183}} by a functioneer ([[Special:ListUsers/functioneer]]) first. The english wiki also warns about using negative values as input for the modulo operation, so, in addition, the result computation should be rephrased to be
<syntaxhighlight lang="python">
def intdivceil(x, d):
return x//d + (0 if x % d == 0 else 1)
return 10 * intdivceil(sum, 10) - sum
</syntaxhighlight>
:I'd also like to have all test cases of {{Z|29183}} connected by a functioneer, after changes to {{Z|29185}} have been commited. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 21:54, 2 January 2026 (UTC)
::Disconnected. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 22:12, 2 January 2026 (UTC)
:::Thanks, changes done - please reconnect. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 22:33, 2 January 2026 (UTC)
::::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 23:08, 2 January 2026 (UTC)
:::Weird: {{Z|30940}} and {{Z|30941}} tests do not pass after the reconnect, although [https://www.wikifunctions.org/wiki/Special:RunFunction?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z29183%22%2C%22Z29183K1%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%2290544230009%22%7D%7D running them manually] produces the expected result. Judging from the timestamps within the detail view, pressing the Refresh-Button does not actually re-run the tests.
:::It seems that their results have been generated with the previous function. Can you make an effort to dis- and reconnect these two tests? The (unconfirmed) presumption is that tests only run on demand (event-triggered vs time scheduled). If this is true it may be noteworthy in the [[WF:FAQ]].
:::The first test, {{Z|29184}}, did not exhibit the same problem, it has been updated as expected. Because the execution timestamps of all three tests do not vary greatly, they were probably triggered, correctly so, by the same event. In theory they should then have consequently worked on the same function - since the test results suggest different, there could have either been a race condition or a stale cache, eventually with some tests running before the action that triggered them was fully committed. If this is not a timing issue, the response to the connection event might miss to update some of the data structures associated with the connected tests and simply run them unchanged, but this is speculative. --[[User:Cmuelle8|Cmuelle8]] ([[User talk:Cmuelle8|talk]]) 01:38, 3 January 2026 (UTC)
::::Yeah the cached failures are super annoying, I think they reduced the cache duration recently but it's still too high IMO. Disconnecting and reconnecting the Implementation triggered them to run again. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:16, 3 January 2026 (UTC)
:Can somebody connect the tests and implementation of this function? [[Z31047|arithmetical average of numbers (Z31047)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 04:35, 13 January 2026 (UTC)
::The implementation seems to fail all the tests. I suspect from the use of <code>{}</code> in Python code. Besides, on the implementation ({{Z|Z31048}}), it used <code>sum</code> as variable, which I don't think allowable in Python. Try to use another variable name. Last, what is the expected result of {{Z|Z31050}}? [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 04:50, 13 January 2026 (UTC)
:::Sorry, @[[User:Sys64ish|Sys64ish]], I just got the expected result from {{Z|31050}}. I have connected the test cases, but not yet for the implementation as you may want to fix it first(?) [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 05:05, 13 January 2026 (UTC)
::::Fixed it, passes tests [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 05:09, 13 January 2026 (UTC)
:::::{{Done}} connected! [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 05:11, 13 January 2026 (UTC)
:When I go to add a test to this function, for some reason I cannot select a fixed value for the expected value, the type is fixed to a function call. Can somebody fix this? [[Z31051|graph a one parameter function (Z31051)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 06:16, 13 January 2026 (UTC)
::You need to select an equality function, which in this case would be {{Z|889}} with {{Z|20924}} as an argument. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 09:59, 13 January 2026 (UTC)
:::Just what I was about to say, only shorter!
:::I had a look at the Python implementation and that doesn’t appear to be viable, because a {{Z|Z8}} object is data, not a callable Python function. I think a composition is the only option here, but we don’t appear to have a [[Special:Search/:"z8k2 z1k1 z7 z7k1 z881 z881k1 Z20838"|generator function for ]]{{Z|Z20838}} yet ([[Special:Search/:"z8k2 z1k1 z7 z7k1 z881 z881k1 z19677"|nor for rationals]]). [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:39, 13 January 2026 (UTC)
:Can somebody connect the tests and implementations of this function? [[Z31079|decimal number range (Z31079)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 13:57, 14 January 2026 (UTC)
::I’ve connected the test but there are a few issues with the implementation. The function has no return and the list to return shouldn’t be called range, as that overwrites the built-in range() function. Wikifunctions.Error requires a list of strings and you should probably guard against K3 being zero. Just let us know if you need any help with this. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 14:22, 14 January 2026 (UTC)
:::I think I fixed the implementation [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 14:28, 14 January 2026 (UTC)
::::Looks close. You probably want to *return* Wikifunctions.Error in order to halt execution. The K1 and K2 arguments are float64s rather than strings, so they need coercing to str for the error. You still risk a divide by zero if K3 has no guard. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 14:48, 14 January 2026 (UTC)
:::::I fixed it now, tests are passing(?) and when I run it locally it works as intended. [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 02:22, 15 January 2026 (UTC)
::::::{{done}}
::::::I created {{Z|31093}} to fix the last test, since your Python implementation was returning slightly inaccurate values for [[w:en:Floating-point_arithmetic#Accuracy_problems|reasons]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:11, 15 January 2026 (UTC)
:Can somebody connect the impl. and test cases of these functions? [[Z31051|generate real (float64) list from a function (Z31051)]] [[Z31111|increment (float64) (Z31111)]] [[Z31116|decrement (float64) (Z31116)]] [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 00:11, 16 January 2026 (UTC)
::Mostly. I see {{Z|Z31051}} has its Minimum and Maximum defined as integers rather than float64, as defined for the generator. Something has to change here, and I’m guessing it’s [[Z31051]], so I disconnected its implementation again. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 01:31, 16 January 2026 (UTC)
:::all inputs except the input for the function are now float64 [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 13:36, 16 January 2026 (UTC)
::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 15:07, 16 January 2026 (UTC)
: Can someone here connect the implementation and test cases of this function: [[Z18679|Malay cardinal to ordinal]]? {{User|Hakimi97}}
:: {{Done}} [[User:Sys64ish|Sys32ish]] ([[User talk:Sys32ish|talk]]) 09:16, 19 January 2026 (UTC)
:Can someone please add the following IPA symbols needed for {{Z|Z1099}} to <code>lookup</code> in the JavaScript implementation {{Z|Z29880}}?
: "ɐ": "Q503323",
: "u": "Q29653",
: "ɕ": "Q605116",
: "x": "Q271603",
: "ʑ": "Q684085",
: "ɣ": "Q654670",
: "ʀ": "Q864677",
: "χ": "Q849796",
: "ʁ": "Q1054276",
: "o": "Q862579",
: "æ": "Q740768",
: "ɪ": "Q1070049",
: "ʊ": "Q1137807",
:Thank you! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 20:23, 27 February 2026 (UTC)
::I forgot to mention the ligatures
::"ʤ": "Q778145",
::"ʧ": "Q518603",
::which could be put next to the already present
::"dʒ": "Q778145",
::"tʃ": "Q518603",
::--[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 20:24, 27 February 2026 (UTC)
::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 00:33, 28 February 2026 (UTC)
:::Thank you! --[[User:Volvox|Volvox]] ([[User talk:Volvox|talk]]) 08:59, 28 February 2026 (UTC)
: Can someone connect up [[Z31844]] and [[Z31837]]. These are better than the other implementations on their pages. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 09:04, 1 March 2026 (UTC)
::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:12, 1 March 2026 (UTC)
:Hello, please connect {{Z|Z31729}}'s implementation and test cases. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 10:48, 8 March 2026 (UTC)
::The implementation does not seem to pass any of the test case. If you click on the [[File:Icon Information.svg|Icon_Information|15px|class=skin-invert-image]] (i) icon on the test status, you can find the error, what the implementation output, etc. Try to fix the implementation first. Thanks! [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 11:22, 8 March 2026 (UTC)
::It seems you're returning a string value when it expects a HTML fragment. HTML fragment and string are different. Maybe you can change the output type to string? [[User:Sys64ish|Sys64ish]] ([[User talk:Sys64ish|talk]]) 11:44, 10 March 2026 (UTC)
:::Thanks for running the tests, @[[User:NikolasKHF|NikolasKHF]]; I couldn’t run them on my own (seemingly because I don’t have the needed right). I will fix the errors.
:::Thanks for looking into this, @[[User:Sys64ish|Sys64ish]]. I actually did want to return an HTML fragment instead of a string because I think that would be more useful on the wikis. However, it looks like I forgot to convert the string for most cases where an output is returned (hence why only one test failure actually complains about the output value being incorrect). [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 19:52, 10 March 2026 (UTC)
:::I have fixed the errors and added a new test case. Please connect the implementation and all the test cases now. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 10:23, 28 March 2026 (UTC)
::::{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 13:04, 28 March 2026 (UTC)
:Can someone connect [[Z31994]] and [[Z31999]] with its tests and implementations. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:41, 11 March 2026 (UTC)
::{{done}} [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 08:49, 11 March 2026 (UTC)
:::Oh yeah I also made another function now, [[Z32004]]. Can someone connect its implementations and tests. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 09:02, 11 March 2026 (UTC)
::::{{done}} [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 09:23, 11 March 2026 (UTC)
:Can someone connect up [[Z32013]]. Also how do you become able to connect and disconnect implementations? Is it only available to extended confirmed users? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 10:06, 12 March 2026 (UTC)
::I don’t believe this implementation should be connected at this time. The existing Python implementation respects the community consensus represented by the test cases connected to {{Z|Z24144}}. What do you think, @[[User:99of9|99of9]]? [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:28, 12 March 2026 (UTC)
:::Fair, I didn't realise the test cases served as implicit consensus. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 11:42, 12 March 2026 (UTC)
::::No worries. It’s not clearly articulated, but we’ll clarify that later. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:51, 12 March 2026 (UTC)
:::I'm not sure. At the moment it correctly reproduces all those we got "consensus" for. So in some sense this implementation is just suggesting/assuming extra fallbacks for those we haven't properly considered? One option would be to connect it and then add counter test cases if we ever felt we didn't like it's current suggestions. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 00:30, 13 March 2026 (UTC)
::::We should be careful… It’s not easy to tell how many test case results would be affected. It’s easy enough to disconnect again, of course, so I’m happy to give it a go while activity in this domain is at a low ebb. {{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:04, 13 March 2026 (UTC)
::To connect implementations, you need Functioneer rights, which can be requested here [[Wikifunctions:Requests for user groups]]. There is a 48-hour waiting period. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:32, 12 March 2026 (UTC)
:Can someone connect up [[Z32027]] with its implementation and test? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:29, 13 March 2026 (UTC)
::And also [[Z32031]]. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 10:16, 13 March 2026 (UTC)
:::{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:51, 13 March 2026 (UTC)
::{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:50, 13 March 2026 (UTC)
{{tracked|T419920|resolved}}
:What is wrong with my implementation at [[Z32055]]? Looking at the failed test, it returns an error because 'dict' has no attribute 'split', but I didn't use split anywhere in my code. What is the issue? [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 01:38, 14 March 2026 (UTC)
::I think that error message is coming from the [[Z20424|type converter]]. I think <code>Z20424K1['Z20420K2']['Z20342K1']</code> would be a dictionary representing a {{Z|16098}} but the code is written as though it were a string? Neither Python nor type converters are in my wheelhouse. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:49, 14 March 2026 (UTC)
:::I think this is [[:phab:T419920]] and presumed to be a consequence of this week’s rollout of “v2”. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 11:08, 14 March 2026 (UTC)
::The type converter issue has gone away, but your Implementation doesn't quite match the tests (and composition), so I've disconnected it again. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:54, 20 March 2026 (UTC)
:What is wrong with my implementation at {{Z|Z32851}}? Btw, it would be really useful if errors said which dependency produced the error, instead of just saying "Error in evaluation". [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 07:18, 28 March 2026 (UTC)
::You were catching the wrong {{Z|50}}, but then the error should have bubbled up so you could see it. I think there's something broken in the site w/ {{Z|11}} right now since [[Z32804|I ran into a similar problem yesterday]]. (And to contradict my note there, while debugging your implementation I saw the same behaviour regardless of if I used [[Z26107]] or a literal Z11, so it must be a bug in WikiLambda.) [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 08:14, 28 March 2026 (UTC)
:::Seems to be resolved now. Your implementation has already been connected. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 17:01, 2 April 2026 (UTC)
:Any guesses as to why [[Z32805]] is failing for [[Z33090]]? It says {{Z|507}} but still produces a value. Inspecting the actual and expected values ([https://www.wikifunctions.org/view/en/Z801?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z801%22%2C%22Z801K1%22%3A%5B%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z881%22%2C%22Z881K1%22%3A%22Z89%22%7D%2C%5B%22Z89%22%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Ctd%3E%3C%2Ftd%3E%22%7D%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Cth%3EA%3C%2Fth%3E%22%7D%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Cth%3EB%3C%2Fth%3E%22%7D%5D%2C%5B%22Z89%22%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Cth%3E1%3C%2Fth%3E%22%7D%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Ctd%3EA1%3C%2Ftd%3E%22%7D%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Ctd%3EB1%3C%2Ftd%3E%22%7D%5D%2C%5B%22Z89%22%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Cth%3E2%3C%2Fth%3E%22%7D%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Ctd%3EA2%3C%2Ftd%3E%22%7D%2C%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z27861%22%2C%22Z27861K1%22%3A%22%3Ctd%3EB2%3C%2Ftd%3E%22%7D%5D%5D%7D via echo]), I can see they're identical. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 22:44, 3 April 2026 (UTC)
::My guess is that there is a bug relating to {{Z|Z877}}. There are no guarantees, but switching the equality function seems successful. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 22:56, 3 April 2026 (UTC)
==== Connection / Disconnection requests ====
Can someone connect {{Z|32068}} and {{Z|15974}} to their tests and implementations. Thanks in advance. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 23:24, 14 March 2026 (UTC)
:In the first function, there’s some issue with Maybe but I don’t think that’s the implementation. But I do think the error-handling for Maybe needs fixing. I’ll check back tomorrow and dig deeper if need be. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 23:48, 14 March 2026 (UTC)
::I fixed the error raising and checking, but the test is still failing for some reason? [[phab:T419920]] again? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 23:54, 14 March 2026 (UTC)
:::It certainly looks like a conversion failure going into {{Z|Z22123}}. I made a [[Z32083|new implementation]] of {{Z|Z22120}} which is now “preferred”. If everything behaves itself, [[Z22123]] can be reconnected. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 17:24, 15 March 2026 (UTC)
:{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:56, 20 March 2026 (UTC)
Can someone connect {{Z|32208}}, {{Z|32199}}, and {{Z|32204}}'s testcases and implementations? thanks in advance! --[[User:VivianIsBee|VivianIsBee]] ([[User talk:VivianIsBee|talk]]) 14:33, 20 March 2026 (UTC)
:{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:48, 20 March 2026 (UTC)
Can someone connect {{Z|32355}}'s testcases and implementations? Thanks in advance! [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 08:15, 22 March 2026 (UTC)
:I haven't connected the implementation yet, because it doesn't seem to pass any of the test cases. If the implementation has any issues, then fix them first. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:24, 22 March 2026 (UTC)
::Thanks. I fixed. One testcase has passed now. But another testcase still says "The lexeme doesn't have forms" although I added a lexical form about 20 hour ago. I suppose cashed data may not have been refreshed yet. So can you please connect implementation so that I can check precisely? [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 05:47, 23 March 2026 (UTC)
:{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 11:32, 23 March 2026 (UTC)
Can someone connect {{Z|32442}}'s testcases and implementations? Thanks in advance! [[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 22:38, 23 March 2026 (UTC)
:Did you mean to include spaces between "words" with your Implementation, or was that a copy-paste error? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 05:24, 24 March 2026 (UTC)
::Thanks. That's a copy-paste error. I deleted one space.[[User:Higa4|Higa4]] ([[User talk:Higa4|talk]]) 06:55, 24 March 2026 (UTC)
:{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 09:48, 24 March 2026 (UTC)
Request to connect {{Z|32212}}, {{Z|32213}}, {{Z|32214}}, {{Z|32216}}, and {{Z|32240}}, all related to defining role sentence in Chinese for all variants. [[User:1F616EMO|1F616EMO]] ([[User talk:1F616EMO|talk]]) 03:21, 24 March 2026 (UTC)
:{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 05:28, 24 March 2026 (UTC)
Can someone disconnect {{Z|10816}}'s Python implementation? Need to fix one of the test case errors. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 19:47, 26 March 2026 (UTC)
:{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 19:59, 26 March 2026 (UTC)
::Fixed the Python implementation, if anyone could reconnect that again. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 20:11, 26 March 2026 (UTC)
:::Noting that this was reconnected. [[User: Tenshi Hinanawi|Tenshi!]] ([[User talk: Tenshi Hinanawi|Talk page]]) 14:40, 27 March 2026 (UTC)
Can someone please disconnect {{Z|26574}}? It needs to be edited to add the Bengali equivalent of a period to the end of the sentence. Thanks. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 10:59, 28 March 2026 (UTC)
:Disconnected. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 11:05, 28 March 2026 (UTC)
::Thanks! And I am sorry forgot this before but the tests need to be fixed as well, could you please disconnect them, too? [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 11:09, 28 March 2026 (UTC)
:::I just added the periods to the tests myself. Tell me if I am incorrect in their placement. [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 11:15, 28 March 2026 (UTC)
::::Done, thanks for updating the tests but one other change is needed: in Z26606, the expected string should be 'কাজী নজরুল ইসলাম একজন কবি ছিলেন।' now because I updated the function to indicate when a person is deceased. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 11:53, 28 March 2026 (UTC)
:::::@[[User:ChaoticVermillion|ChaoticVermillion]], ping :) [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 19:03, 30 March 2026 (UTC)
::::::Apologies, I completely forgot about this. {{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 06:05, 31 March 2026 (UTC)
:::::::Thank you. Can you please connect the implementation now? [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 07:43, 31 March 2026 (UTC)
::::::::{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:00, 31 March 2026 (UTC)
Please connect [[Z32954|Z32954’s]] implementation and test case. I woukd like to use it on Abstract Wikipedia. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 07:46, 31 March 2026 (UTC)
:{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:00, 31 March 2026 (UTC)
Please disconnect [[Z10779]]; I would like to simplify it. Thank you. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 07:46, 31 March 2026 (UTC)
:{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:02, 31 March 2026 (UTC)
::Done, you can reconnect it now. Thanks. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 08:24, 31 March 2026 (UTC)
:::{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:42, 31 March 2026 (UTC)
Request to connect [[Z33028]] to their test and implementation. Thanks. — [[User:内存溢出的猫|内存溢出的猫]] ([[User talk:内存溢出的猫|talk]]) 12:07, 2 April 2026 (UTC)
:{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 12:11, 2 April 2026 (UTC)
Request to connect [[Z33040]] with its implementation and test cases. -- [[User:Winston Sung|Winston Sung]] ([[User talk:Winston Sung|talk]]) 16:41, 2 April 2026 (UTC)
:{{done}} [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 16:56, 2 April 2026 (UTC)
Can anyone connect [[Z33045]] and [[Z33046]], and add [[Z33044]] to [[Z32402]]? [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 17:52, 2 April 2026 (UTC)
:For the record, this is {{Already done}}. [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 22:17, 2 April 2026 (UTC)
Are the implementations and tests for [[Z32985]] and [[Z32982]] ready to be connected? Courtesy ping: {{u|EJPPhilippines}}. [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 22:17, 2 April 2026 (UTC)
:[[Z32982]] is {{already done}}; [[Z32985]] is not. [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 03:08, 3 April 2026 (UTC)
Could someone connect the implementations and tests for [[Z33073]] and [[Z33075]]? Thank you! [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 03:08, 3 April 2026 (UTC)
:{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 03:48, 3 April 2026 (UTC)
Can someone connect the implementations and tests for [[Z33059]]? [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 00:49, 4 April 2026 (UTC)
:{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 01:10, 4 April 2026 (UTC)
Request to connect [[Z33038]] with its implementation and test cases. -- [[User:Winston Sung|Winston Sung]] ([[User talk:Winston Sung|talk]]) 02:39, 4 April 2026 (UTC)
:{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 03:12, 4 April 2026 (UTC)
Request to connect [[Z33036]] with its implementation and test cases. -- [[User:Winston Sung|Winston Sung]] ([[User talk:Winston Sung|talk]]) 03:44, 4 April 2026 (UTC)
:{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 03:54, 4 April 2026 (UTC)
Can someone disconnect [[Z18680]] because I need to recheck the structure of the code back? [[User:Hakimi97|Hakimi97]] ([[User talk:Hakimi97|talk]]) 02:06, 7 April 2026 (UTC)
:{{done}} [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 02:13, 7 April 2026 (UTC)
::Okay, I have validated the structure of [[Z18679]], could you please connect back all of the implementations and another additional test? Thank you. [[User:Hakimi97|Hakimi97]] ([[User talk:Hakimi97|talk]]) 04:06, 7 April 2026 (UTC)
:::{{done}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 04:39, 7 April 2026 (UTC)
Please connect [[Z33165]] with its implementation and test cases. [[User:Hakimi97|Hakimi97]] ([[User talk:Hakimi97|talk]]) 13:28, 7 April 2026 (UTC)
:{{d}} [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 13:30, 7 April 2026 (UTC)
Please connect [[Z30603]] with its implementation and test cases, the function is in its complete form now. [[User:Hakimi97|Hakimi97]] ([[User talk:Hakimi97|talk]]) 13:53, 7 April 2026 (UTC)
:{{D}} [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 13:54, 7 April 2026 (UTC)
==== [[WF:HL]] ====
I have recently drafted some revamps of [[Wikifunctions:Human languages]] ([[User:Xeroctic/Human languages]]) and [[Wikifunctions:Reserved ZIDs]] ([[User:Xeroctic/Reserved ZIDs]]) in my userspace, and I think they are ready to replace the originals. I have not included translation tags for HL (which would be entirely different) and they need major modification for RZIDs to add or re-add them, so I would like that to be done as well. — [[User:Xeroctic|Xeroctic]] ([[User talk:Xeroctic|talk]]) 16:39, 3 November 2025 (UTC)
: {{s}} since Xeroctic's versions improve readability. — [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 11:17, 24 November 2025 (UTC)
:: Restoring this unresolved thread which was archived in oldid 237379. — [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 14:36, 16 January 2026 (UTC)
:[[WF:Human languages]]: Copying the categorisation from enWiktionary seems like a good idea. I don't understand why this page is separate from [[WF:Catalogue/Natural language operations]] though? (time/happenstance? [[WT:Human_languages#proposal|previous disc.]]) Redlinks to cataloguing subpages will remain red unless and until someone makes an NLG function in that language.
:[[WF:Reserved ZIDs]]: Using the live labels is an obvious improvement. I appreciate it being kept up-to-date. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 14:55, 16 January 2026 (UTC)
:{{support}} per Arlo Barnes and YoshiRulz [[User:NikolasKHF|NikolasKHF]] ([[User talk:NikolasKHF|talk]]) 01:11, 11 March 2026 (UTC)
:{{support}} Let’s do this already. --[[User:Mormegil|Mormegil]] ([[User talk:Mormegil|talk]]) 08:33, 27 March 2026 (UTC)
pi4jqkslq6ey9y7i5cvfjjkpifa4a1y
Wikifunctions:Requests for user groups
4
3790
263845
263479
2026-04-08T03:08:08Z
SpBot
978
archive 1 section: 1 to [[Wikifunctions:Requests for user groups/Archive/2026/04]] (after section [[Wikifunctions:Requests for user groups/Archive/2026/04#Winston_Sung|Winston_Sung]]) - previous edit: [[:User:Ameisenigel|Ameisenigel]], 2026-04-06 16:59
263845
wikitext
text/x-wiki
{{shortcut|[[WF:RFG]]|[[WF:PERM]]|[[WF:RFUG]]}}
This is the place to request specific user groups:
{{ombox
| image = [[File:Echo user-rights icon.svg|60x60px|alt=|link=]]
| text = '''How to make a request'''
# Edit the section for the user group you wish to request
# Copy the following and ''append'' it to the text-area:
## Requests without required discussion: <code><nowiki>{{subst:rfg|1={{subst:REVISIONUSER}}|2=reason ~~~~}}</nowiki></code>
## Functioneer requests (required 48-hour discussion): <code><nowiki>{{subst:rfg|3=1|length=2 days|1={{subst:REVISIONUSER}}|2=reason ~~~~}}</nowiki></code>
## Requests with required 1-week discussion: <code><nowiki>{{subst:rfg|3=1|1={{subst:REVISIONUSER}}|2=reason ~~~~}}</nowiki></code>
# Replace <code>reason</code> with a rationale based on the guidelines specified for the user group
}}
: ''Archived requests can be found at [[Wikifunctions:Requests for user groups/Archive]]''
{{Autoarchive resolved section
| age = 1
| archive = ((FULLPAGENAME))/Archive/((year))/((month:##))
| level = 3
}}
== Functioneer ==
{{see also|Wikifunctions:Functioneers}}
=== AdrianoRutz ===
:{{UL2.0|1=AdrianoRutz|contributions=1|deletedcontributions=1|editcount=1|blocklog=1|rightslog=1|crosswiki=1}}
:''Discussion open until: 10:10, 2 April 2026 (UTC)''
:I am an active contributor on Wikidata ([[wikidata:User:AdrianoRutz|AdrianoRutz]]) with a background in chemistry. On Wikifunctions, I have already created and implemented functions related to chemical information (e.g. parsing, formatting, and validating chemical identifiers and nomenclature). I would like to use the Functioneer rights to improve these implementations and test cases, making them live and usable. Going forward, I intend to continue building out chemistry-focused functions, or things like [https://en.wikipedia.org/wiki/Module:P703 Module:P703] including those that could support Abstract Wikipedia articles on chemical compounds, and to improve coverage of data associated with properties such as [[wikidata:Property:P703|P703 (found in taxon)]], which links chemical substances to the organisms in which they naturally occur. Having Functioneer rights would let me take full responsibility for the quality of the functions I promote, and I am committed to ensuring that connected implementations and test cases meet community standards. [[User:AdrianoRutz|AdrianoRutz]] ([[User talk:AdrianoRutz|talk]]) 10:10, 31 March 2026 (UTC)
::<s>{{neutral}}/weak {{s}}. I find it a bit suspicious that you haven't made any contributions for 3 months and want functioneer now, but your contributions are sufficient. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 16:37, 2 April 2026 (UTC)</s> {{o}}: Grammarly flags your text as AI generated. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 16:38, 2 April 2026 (UTC)
:::Uh, weird, I do not seem to recall having read anywhere LLM assistance for grammar was forbidden? By the way, I am not a native english speaker, and did put my original text into deepl (not an LLM) back and forth for better clarity, yes.
:::Regarding the 3 months inactivity, yes, I recognize that. Recent Telegram discussions pushed me to apply while I was too shy to do it before. As simple as it gets, no other reasons. [[User:AdrianoRutz|AdrianoRutz]] ([[User talk:AdrianoRutz|talk]]) 16:25, 6 April 2026 (UTC)
== Autopatroller ==
{{See also|Wikifunctions:Autopatrollers}}
== Administrator ==
{{see also|Wikifunctions:Administrators}}
== Interface administrator ==
{{see also|Wikifunctions:Interface administrators}}
== Translation administrator ==
{{see also|Wikifunctions:Translation administrators}}
== Bureaucrat ==
{{see also|Wikifunctions:Bureaucrats}}
== Miscellaneous requests ==
== See also ==
* [[Wikifunctions:User groups]]
** [[mw:Help:Wikifunctions/User rights]] for additional context about functioneers, maintainers, sysops, and bureaucrats
[[Category:User groups|*]]
43ozw2wv6f60cazg6luh12hfg2014oi
Z10615
0
9927
263667
260003
2026-04-07T12:42:32Z
Patsagorn Y.
738
+th labels
263667
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z10615"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z6",
"Z17K2": "Z10615K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Text"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1061",
"Z11K2": "streng"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1003",
"Z11K2": "texto"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1025",
"Z11K2": "napis"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1004",
"Z11K2": "texte"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1430",
"Z11K2": "Text"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1011",
"Z11K2": "যেকোনো অক্ষর"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1013",
"Z11K2": "Strin 1"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1852",
"Z11K2": "String 1"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1048",
"Z11K2": "văn bản"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1820",
"Z11K2": "टेक्स्ट"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1851",
"Z11K2": "ข้อความ"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z6",
"Z17K2": "Z10615K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Substring"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1061",
"Z11K2": "understreng"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1003",
"Z11K2": "subcadena"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1025",
"Z11K2": "podciąg"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1004",
"Z11K2": "sous-chaîne"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1430",
"Z11K2": "Suchtext"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1011",
"Z11K2": "উপ অক্ষর"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1013",
"Z11K2": "Strin 2"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1818",
"Z11K2": "okun"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1852",
"Z11K2": "String 2"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1048",
"Z11K2": "chuỗi con"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1820",
"Z11K2": "सबस्ट्रिंग"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1851",
"Z11K2": "สตริงย่อยที่จะทดสอบ"
}
]
}
}
],
"Z8K2": "Z40",
"Z8K3": [
"Z20",
"Z10617",
"Z13510",
"Z31791"
],
"Z8K4": [
"Z14",
"Z10616",
"Z10624",
"Z31793"
],
"Z8K5": "Z10615"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "string starts with"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1061",
"Z11K2": "streng begynder med"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1157",
"Z11K2": "tekenreeks begint met"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1592",
"Z11K2": "textsträng börjar med"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1830",
"Z11K2": "先頭文字列の判定"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1003",
"Z11K2": "cadena de caracteres empieza por"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1025",
"Z11K2": "czy napis zaczyna się od"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1004",
"Z11K2": "la chaîne commence-t-elle par ?"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1430",
"Z11K2": "Text beginnt mit"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1011",
"Z11K2": "প্রথম অক্ষর সমান"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1013",
"Z11K2": "Dauwa in ya er chikiake"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1852",
"Z11K2": "Chane stringi kpai"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1014",
"Z11K2": "Eriri bidou"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1332",
"Z11K2": "рядок починається з"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1186",
"Z11K2": "מחרוזת מתחילה ב־"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1827",
"Z11K2": "η συμβολοσειρά ξεκινά με"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1048",
"Z11K2": "chuỗi bắt đầu bằng"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1820",
"Z11K2": "स्ट्रिंग के आरंभ के समान"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1851",
"Z11K2": "สตริงขึ้นต้นด้วย"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31",
{
"Z1K1": "Z31",
"Z31K1": "Z1002",
"Z31K2": [
"Z6",
"starts with",
"left factor"
]
},
{
"Z1K1": "Z31",
"Z31K1": "Z1186",
"Z31K2": [
"Z6",
"מחרוזת מתחילה ב-",
"מחרוזת נפתחת ב-"
]
}
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1061",
"Z11K2": "test om streng begynder med en understreng"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1157",
"Z11K2": "test of tekenreeks begint met een subtekenreeks"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1592",
"Z11K2": "sant om en textsträng inleds med en särskild delsträng"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1830",
"Z11K2": "文字列が指定した文字列で始まるかどうかを判定する"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "returns true if the substring exists at the beginning of the string"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1003",
"Z11K2": "Comprueba si una cadena de caracteres empieza por una sub cadena de caracteres"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1025",
"Z11K2": "zwraca prawdę, jeśli napis zaczyna się od podanego podciągu"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1004",
"Z11K2": "revoie \"vrai\" si la sous-chaîne existe au début de la chaîne de caractères, sinon \"faux\""
},
{
"Z1K1": "Z11",
"Z11K1": "Z1430",
"Z11K2": "Prüft, ob der Text mit dem angegebenen Suchtext beginnt"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1011",
"Z11K2": "আউটপুট সত্য, যদি প্রথম অক্ষরের শুরুর বর্ণগুলো উপ অক্ষরের সাথে মিলে যায়"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1013",
"Z11K2": "Return if the case is not fully a string case"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1818",
"Z11K2": "okun bẹrẹ pẹlu"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1852",
"Z11K2": "Che nwu ki chi ogecha dabi ti substring ti uchane stringi"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1014",
"Z11K2": "Eriri bidou"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1186",
"Z11K2": "האם מחרוזת מתחילה בתת־מחרוזת נתונה. אמת אם המחרוזת השנייה היא תת־מחרוזת של הראשונה ברישא. ר' Z10618."
},
{
"Z1K1": "Z11",
"Z11K1": "Z1820",
"Z11K2": "अगर सबस्ट्रिंग, स्ट्रिंग के आरंभ में मौजूद हो तो सच लौटाता है"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1851",
"Z11K2": "ส่งกลับ จริง เมื่อสตริงขึ้นต้นด้วยสตริงย่อยที่ระบุ"
}
]
}
}
l4j2ewqdka82c2io6sy4rzn4ilpvtoh
263668
263667
2026-04-07T12:42:40Z
WikiLambda system
3
Updated the implementation list (see [[Help:Wikifunctions/Implementation_ordering_and_choosing|About implementation selection]])
263668
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z10615"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z6",
"Z17K2": "Z10615K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Text"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1061",
"Z11K2": "streng"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1003",
"Z11K2": "texto"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1025",
"Z11K2": "napis"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1004",
"Z11K2": "texte"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1430",
"Z11K2": "Text"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1011",
"Z11K2": "যেকোনো অক্ষর"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1013",
"Z11K2": "Strin 1"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1852",
"Z11K2": "String 1"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1048",
"Z11K2": "văn bản"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1820",
"Z11K2": "टेक्स्ट"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1851",
"Z11K2": "ข้อความ"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z6",
"Z17K2": "Z10615K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Substring"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1061",
"Z11K2": "understreng"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1003",
"Z11K2": "subcadena"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1025",
"Z11K2": "podciąg"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1004",
"Z11K2": "sous-chaîne"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1430",
"Z11K2": "Suchtext"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1011",
"Z11K2": "উপ অক্ষর"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1013",
"Z11K2": "Strin 2"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1818",
"Z11K2": "okun"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1852",
"Z11K2": "String 2"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1048",
"Z11K2": "chuỗi con"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1820",
"Z11K2": "सबस्ट्रिंग"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1851",
"Z11K2": "สตริงย่อยที่จะทดสอบ"
}
]
}
}
],
"Z8K2": "Z40",
"Z8K3": [
"Z20",
"Z10617",
"Z13510",
"Z31791"
],
"Z8K4": [
"Z14",
"Z10624",
"Z10616",
"Z31793"
],
"Z8K5": "Z10615"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "string starts with"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1061",
"Z11K2": "streng begynder med"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1157",
"Z11K2": "tekenreeks begint met"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1592",
"Z11K2": "textsträng börjar med"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1830",
"Z11K2": "先頭文字列の判定"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1003",
"Z11K2": "cadena de caracteres empieza por"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1025",
"Z11K2": "czy napis zaczyna się od"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1004",
"Z11K2": "la chaîne commence-t-elle par ?"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1430",
"Z11K2": "Text beginnt mit"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1011",
"Z11K2": "প্রথম অক্ষর সমান"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1013",
"Z11K2": "Dauwa in ya er chikiake"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1852",
"Z11K2": "Chane stringi kpai"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1014",
"Z11K2": "Eriri bidou"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1332",
"Z11K2": "рядок починається з"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1186",
"Z11K2": "מחרוזת מתחילה ב־"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1827",
"Z11K2": "η συμβολοσειρά ξεκινά με"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1048",
"Z11K2": "chuỗi bắt đầu bằng"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1820",
"Z11K2": "स्ट्रिंग के आरंभ के समान"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1851",
"Z11K2": "สตริงขึ้นต้นด้วย"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31",
{
"Z1K1": "Z31",
"Z31K1": "Z1002",
"Z31K2": [
"Z6",
"starts with",
"left factor"
]
},
{
"Z1K1": "Z31",
"Z31K1": "Z1186",
"Z31K2": [
"Z6",
"מחרוזת מתחילה ב-",
"מחרוזת נפתחת ב-"
]
}
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1061",
"Z11K2": "test om streng begynder med en understreng"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1157",
"Z11K2": "test of tekenreeks begint met een subtekenreeks"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1592",
"Z11K2": "sant om en textsträng inleds med en särskild delsträng"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1830",
"Z11K2": "文字列が指定した文字列で始まるかどうかを判定する"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "returns true if the substring exists at the beginning of the string"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1003",
"Z11K2": "Comprueba si una cadena de caracteres empieza por una sub cadena de caracteres"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1025",
"Z11K2": "zwraca prawdę, jeśli napis zaczyna się od podanego podciągu"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1004",
"Z11K2": "revoie \"vrai\" si la sous-chaîne existe au début de la chaîne de caractères, sinon \"faux\""
},
{
"Z1K1": "Z11",
"Z11K1": "Z1430",
"Z11K2": "Prüft, ob der Text mit dem angegebenen Suchtext beginnt"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1011",
"Z11K2": "আউটপুট সত্য, যদি প্রথম অক্ষরের শুরুর বর্ণগুলো উপ অক্ষরের সাথে মিলে যায়"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1013",
"Z11K2": "Return if the case is not fully a string case"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1818",
"Z11K2": "okun bẹrẹ pẹlu"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1852",
"Z11K2": "Che nwu ki chi ogecha dabi ti substring ti uchane stringi"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1014",
"Z11K2": "Eriri bidou"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1186",
"Z11K2": "האם מחרוזת מתחילה בתת־מחרוזת נתונה. אמת אם המחרוזת השנייה היא תת־מחרוזת של הראשונה ברישא. ר' Z10618."
},
{
"Z1K1": "Z11",
"Z11K1": "Z1820",
"Z11K2": "अगर सबस्ट्रिंग, स्ट्रिंग के आरंभ में मौजूद हो तो सच लौटाता है"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1851",
"Z11K2": "ส่งกลับ จริง เมื่อสตริงขึ้นต้นด้วยสตริงย่อยที่ระบุ"
}
]
}
}
i7gpnvybr1np6few8zrhzjfchsmm9sd
263825
263668
2026-04-08T01:33:03Z
WikiLambda system
3
Updated the implementation list (see [[Help:Wikifunctions/Implementation_ordering_and_choosing|About implementation selection]])
263825
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z10615"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z6",
"Z17K2": "Z10615K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Text"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1061",
"Z11K2": "streng"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1003",
"Z11K2": "texto"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1025",
"Z11K2": "napis"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1004",
"Z11K2": "texte"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1430",
"Z11K2": "Text"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1011",
"Z11K2": "যেকোনো অক্ষর"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1013",
"Z11K2": "Strin 1"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1852",
"Z11K2": "String 1"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1048",
"Z11K2": "văn bản"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1820",
"Z11K2": "टेक्स्ट"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1851",
"Z11K2": "ข้อความ"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z6",
"Z17K2": "Z10615K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Substring"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1061",
"Z11K2": "understreng"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1003",
"Z11K2": "subcadena"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1025",
"Z11K2": "podciąg"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1004",
"Z11K2": "sous-chaîne"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1430",
"Z11K2": "Suchtext"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1011",
"Z11K2": "উপ অক্ষর"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1013",
"Z11K2": "Strin 2"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1818",
"Z11K2": "okun"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1852",
"Z11K2": "String 2"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1048",
"Z11K2": "chuỗi con"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1820",
"Z11K2": "सबस्ट्रिंग"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1851",
"Z11K2": "สตริงย่อยที่จะทดสอบ"
}
]
}
}
],
"Z8K2": "Z40",
"Z8K3": [
"Z20",
"Z10617",
"Z13510",
"Z31791"
],
"Z8K4": [
"Z14",
"Z10616",
"Z10624",
"Z31793"
],
"Z8K5": "Z10615"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "string starts with"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1061",
"Z11K2": "streng begynder med"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1157",
"Z11K2": "tekenreeks begint met"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1592",
"Z11K2": "textsträng börjar med"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1830",
"Z11K2": "先頭文字列の判定"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1003",
"Z11K2": "cadena de caracteres empieza por"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1025",
"Z11K2": "czy napis zaczyna się od"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1004",
"Z11K2": "la chaîne commence-t-elle par ?"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1430",
"Z11K2": "Text beginnt mit"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1011",
"Z11K2": "প্রথম অক্ষর সমান"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1013",
"Z11K2": "Dauwa in ya er chikiake"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1852",
"Z11K2": "Chane stringi kpai"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1014",
"Z11K2": "Eriri bidou"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1332",
"Z11K2": "рядок починається з"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1186",
"Z11K2": "מחרוזת מתחילה ב־"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1827",
"Z11K2": "η συμβολοσειρά ξεκινά με"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1048",
"Z11K2": "chuỗi bắt đầu bằng"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1820",
"Z11K2": "स्ट्रिंग के आरंभ के समान"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1851",
"Z11K2": "สตริงขึ้นต้นด้วย"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31",
{
"Z1K1": "Z31",
"Z31K1": "Z1002",
"Z31K2": [
"Z6",
"starts with",
"left factor"
]
},
{
"Z1K1": "Z31",
"Z31K1": "Z1186",
"Z31K2": [
"Z6",
"מחרוזת מתחילה ב-",
"מחרוזת נפתחת ב-"
]
}
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1061",
"Z11K2": "test om streng begynder med en understreng"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1157",
"Z11K2": "test of tekenreeks begint met een subtekenreeks"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1592",
"Z11K2": "sant om en textsträng inleds med en särskild delsträng"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1830",
"Z11K2": "文字列が指定した文字列で始まるかどうかを判定する"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "returns true if the substring exists at the beginning of the string"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1003",
"Z11K2": "Comprueba si una cadena de caracteres empieza por una sub cadena de caracteres"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1025",
"Z11K2": "zwraca prawdę, jeśli napis zaczyna się od podanego podciągu"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1004",
"Z11K2": "revoie \"vrai\" si la sous-chaîne existe au début de la chaîne de caractères, sinon \"faux\""
},
{
"Z1K1": "Z11",
"Z11K1": "Z1430",
"Z11K2": "Prüft, ob der Text mit dem angegebenen Suchtext beginnt"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1011",
"Z11K2": "আউটপুট সত্য, যদি প্রথম অক্ষরের শুরুর বর্ণগুলো উপ অক্ষরের সাথে মিলে যায়"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1013",
"Z11K2": "Return if the case is not fully a string case"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1818",
"Z11K2": "okun bẹrẹ pẹlu"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1852",
"Z11K2": "Che nwu ki chi ogecha dabi ti substring ti uchane stringi"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1014",
"Z11K2": "Eriri bidou"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1186",
"Z11K2": "האם מחרוזת מתחילה בתת־מחרוזת נתונה. אמת אם המחרוזת השנייה היא תת־מחרוזת של הראשונה ברישא. ר' Z10618."
},
{
"Z1K1": "Z11",
"Z11K1": "Z1820",
"Z11K2": "अगर सबस्ट्रिंग, स्ट्रिंग के आरंभ में मौजूद हो तो सच लौटाता है"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1851",
"Z11K2": "ส่งกลับ จริง เมื่อสตริงขึ้นต้นด้วยสตริงย่อยที่ระบุ"
}
]
}
}
l4j2ewqdka82c2io6sy4rzn4ilpvtoh
Z10879
0
12655
263876
109600
2026-04-08T06:52:08Z
A3452763492
63492
263876
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z10879"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z10878",
"Z14K3": {
"Z1K1": "Z16",
"Z16K1": "Z610",
"Z16K2": "def Z10878(Z10878K1):\n\t# Hiragana Unicode block : U+3000 - U+30FF\n\treturn u'\\u3000' \u003C= Z10878K1 \u003C= u'\\u30FF'"
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "is hiragana(char)"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1830",
"Z11K2": "Pythonの平仮名判定"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1430",
"Z11K2": "ist Hiragana in Python"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1014",
"Z11K2": "bụ hiragana (char)"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
4egem9b801iz2amf2ycgr7j2fo1mnyh
Z10884
0
12660
263877
134987
2026-04-08T06:53:31Z
A3452763492
63492
263877
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z10884"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z10883",
"Z14K3": {
"Z1K1": "Z16",
"Z16K1": "Z610",
"Z16K2": "def Z10883(Z10883K1):\n\t# Katakana Unicode block : U+3000 - U+30FF\n\treturn u'\\u3000' \u003C= Z10883K1 \u003C= u'\\u30FF'"
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "is katakana(char)"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1430",
"Z11K2": "ist Katakana in Python"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1014",
"Z11K2": "bụ katakana (char)"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1830",
"Z11K2": "Pythonで実装したカタカナ判定"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
r8gbobwwvfuyx0kz2yp3mqbmytwru9l
263878
263877
2026-04-08T06:53:50Z
A3452763492
63492
263878
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z10884"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z10883",
"Z14K3": {
"Z1K1": "Z16",
"Z16K1": "Z610",
"Z16K2": "def Z10883(Z10883K1):\n\t# Katakana Unicode block : U+0000 - U+30FF\n\treturn u'\\u0000' \u003C= Z10883K1 \u003C= u'\\u30FF'"
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "is katakana(char)"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1430",
"Z11K2": "ist Katakana in Python"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1014",
"Z11K2": "bụ katakana (char)"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1830",
"Z11K2": "Pythonで実装したカタカナ判定"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
lajnoqvvdkfd9yuyp8tgjv6e4cfkwij
Z10885
0
12661
263880
88941
2026-04-08T06:54:49Z
A3452763492
63492
263880
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z10885"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z10883",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z10883",
"Z10883K1": "A"
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z844",
"Z844K2": {
"Z1K1": "Z40",
"Z40K1": "Z42"
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "\"I\" is not katakana"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1004",
"Z11K2": "\"A\" n'est pas un katakana"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1830",
"Z11K2": "「A」は片仮名でない"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1430",
"Z11K2": "\"A\" ist nicht Katakana"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
d3mub499q29n4c1jg7r9nze1v34ax34
User talk:99of9
3
14805
263666
263628
2026-04-07T12:35:40Z
99of9
1622
/* Checking in about presentation */ Reply
263666
wikitext
text/x-wiki
{{Welcome/lang|user=99of9|welcominguser=Koavf|1=}} ―[[User:Koavf|Justin (<span style="color:grey">ko'''a'''vf</span>)]]<span style="color:red">❤[[User talk:Koavf|T]]☮[[Special:Contributions/Koavf|C]]☺[[Special:Emailuser/Koavf|M]]☯</span> 06:47, 13 September 2023 (UTC)
== Split endswith ? ==
Hi,
First thanks a lot for your help on [[Z11550]] (especially my stupid mistake of copy-paste). But I'm wondering, why split the endswith() ? (it look better and more effective with a tuple, no?)
Cheers, [[User:VIGNERON|VIGNERON]] ([[User talk:VIGNERON|talk]]) 11:55, 21 October 2023 (UTC)
:{{ping|VIGNERON}} It wasn't evaluating, so I tried to fix it. I'm no expert, but it looks like the Python function [https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/endsWith endswith] can only take one string argument (and another to optionally set the end position). I'm glad you're having a go, it will be interesting to see if we can get lots of activity in lots of languages. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 11:59, 21 October 2023 (UTC)
::{{ping|99of9}} ah! of course! thanks a lot for your comment, I made an obvious mistake (it wasn't really a tuple, so not one argument, now it's fixed).
::I'll try te create more functions for French and Breton in the coming days/weeks.
::Cheers, [[User:VIGNERON|VIGNERON]] ([[User talk:VIGNERON|talk]]) 12:16, 21 October 2023 (UTC)
:::OK! Well now I'm learning too! Thanks. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 12:20, 21 October 2023 (UTC)
== Review ==
Hi,
As I said before, I created a couple of wikifunctions for Breton. They are listed here: Wikifunctions:Catalogue#Breton_String_operations
Feel free to look at them and tell me what you think (I see you already added labels and description in English, thanks!).
Cheers, [[User:VIGNERON|VIGNERON]] ([[User talk:VIGNERON|talk]]) 11:11, 1 November 2023 (UTC)
:Hi {{ping|VIGNERON}} yes, I saw these. I think you're doing well. I'm afraid I don't know the language, so I can't be much help, but I'll try to keep adding English labels. For consistency, I suggest that all morphemes associated with a language should have the language at the start of their label, so "English plural", "Breton plural", "Breton ***". --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 11:28, 1 November 2023 (UTC)
::Ah, good point, thanks. I'll harmonize that for English labels right now. Cheers, [[User:VIGNERON|VIGNERON]] ([[User talk:VIGNERON|talk]]) 13:19, 1 November 2023 (UTC)
== [[Z12828]] ==
Hi, I was using this as a presumably simple test case to familiarize myself better with the workflows on this wiki, and I got lost in multiple ways, so thanks for chiming in. I will drop off now but will check back in tomorrow to see what you made out of it. [[User:Daniel Mietchen|Daniel Mietchen]] ([[User talk:Daniel Mietchen|talk]]) 00:28, 23 January 2024 (UTC)
:{{re|Daniel Mietchen}} I've overhauled it a bit. Denny suggested using plain strings as often as possible at first (let me know if you want me to find a link to the discussion). Apart from types, the other main thing that was stopping the python was the whitespace(!). It requires tabbed indents not single spaces. Now that it runs, have a think about what you want the output to be for the test cases I added. I put in my suggestions (which the composition implementation [[Z12834]] conforms to), but am happy to switch them if you prefer different outputs. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 02:56, 23 January 2024 (UTC)
::Oops, I didn't see your comment on capitalisation when it came up [https://www.wikifunctions.org/w/index.php?title=Z12833&diff=76274&oldid=76268]. The reason I think it should just preserve whatever the incoming capitalisation is, is so that it still works at the start of a sentence, or in a database, etc. It's also safe enough, because I imagine that the users of this function will format their input to ensure they get what they want as output. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 03:05, 23 January 2024 (UTC)
:::Thanks, this gives me some things to chew on. --[[User:Daniel Mietchen|Daniel Mietchen]] ([[User talk:Daniel Mietchen|talk]]) 23:30, 23 January 2024 (UTC)
== Comments on Type proposals ==
Hey, admin(?). You added a Comments section to the Natural number type proposal and it included a subscription widget. The blankish template at [[Wikifunctions:Type proposals/(unnamed – new)]] lost that feature and I can’t see how you did it in the first place. Maybe you can fix this for all the proposals (or share your wizardry)? [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 08:57, 13 March 2024 (UTC)
:I just tested and it appears when you sign a signature! (And disappears when you delete your signature.) So I've left a "support as proposer" in the template to prompt the creator to sign. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 00:17, 14 March 2024 (UTC)
::{{Done}} thank you. And congratulations on your elevation! [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 01:58, 14 March 2024 (UTC)
== [[Z14597]] ==
Hi 99of9,<br>
Thanks for all the wonderful work.<br>
Regarding [[Z14597]], sorry, my mistake, can the string be deleted? I created it by mistake and I don't expect it to be used.<br>
Thank you, · <b dir="ltr">[[User:מקף|<sup>מקף </sup>Hyphen]]<sub>[[User talk:מקף| ෴]]</sub></b> · 03:00, 31 March 2024 (UTC)
:Sure. Done. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 04:01, 31 March 2024 (UTC)
== English labels ==
Hi, please don’t mangle our language when labelling 😎 “English suffix word” is practically incomprehensible and “English natural number to ordinal” is positively misleading (it is the ordinal that is in English, not the Natural number). As you no doubt have a plan, perhaps you should articulate it at [[Wikifunctions:Naming conventions]] or [[Wikifunctions talk:Best practices#Wikifunctions:Naming conventions]]. Cheers! [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 07:54, 3 April 2024 (UTC)
:I see what you mean. The idea/"plan" is that with the expected proliferation of language-related functions, that the language they apply to should be ultra-prominent (i.e. first word IMO, so that searches with the language only give you a comprehensive list). Once categories are up and working, this may not matter so much. In the meantime, would colons be sufficient to achieve both goals? "English: suffix word" and "English: natural number to ordinal"? --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 00:48, 4 April 2024 (UTC)
::Yeah, I guessed 😎 It’s hard to prove the negative, but I believe that searches already return a comprehensive list if just the language is specified. My personal preference is for function names (in particular) to have a label that is as close as possible to an idiomatic phrase in the language in which it is expressed. If the natural language prefix is decided upon, I would favour “English: suffix English word” and “English: Natural number to English ordinal”. If we move further away from idiomatic names, I might prefer “English String ordinal from Natural number” and “English String from word and suffix”. This puts the function’s return type in the more prominent position that it deserves (and, yes, I would prefer a Monolingual string return type). The implication there, though, is that the function that turns 23rd to 23 should be called “Natural number from numeric ordinal with English suffix” (unlucky guess: [[Z14542]]😏). That said, “Natural number sum of two Natural numbers” does lack a degree of panache 🤷♂️ [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 21:14, 4 April 2024 (UTC)
:::Ok, I've restored them at least for now. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 01:59, 5 April 2024 (UTC)
::::Feel free to march boldly on. Your contributions are much appreciated (99% of the time) 🙏 [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 03:39, 5 April 2024 (UTC)
== Spambot block ==
Can I ask why [[Special:Redirect/logid/63908]] was only 2 hours? I was going to block them indefinitely until I saw your prior block and figured there was probably a reason. I also reported them to [[:m:SRG]] for a global lock. --[[User:DannyS712|DannyS712]] ([[User talk:DannyS712|talk]]) 19:41, 9 April 2024 (UTC)
:Since I caught them in the act, I was just trying to interrupt the next post, so they would move along. I expect they will not come back no matter how long the block. But I have no concern if you want to make it indefinite. I'm not particularly experienced with blocking. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 01:01, 10 April 2024 (UTC)
::My rule of thumb is that spam-only accounts get indefinitely blocked, but with talk page access enabled in case it turns out that they were not intending to spam or something like that (had that happen to me once I think - blocked someone who just didn't understand that it wasn't allowed and wanted to contribute positively). Anyway, the account is now globally locked so it doesn't really matter --[[User:DannyS712|DannyS712]] ([[User talk:DannyS712|talk]]) 03:46, 10 April 2024 (UTC)
== Can you have a look ==
Hi {{BASEPAGENAME}} hope you fine, I'm just working on a function called "area of a circle" that uses rational numbers. I was having problems doing arithmetic with this type of number and, since there's no documentation I can refer to, I was trying it here and there until I got to this final [[Special:PermanentLink/161945|formula]] that uses pi as input. Can you take a look and give me some suggestions? Or do it if you want. Regards --[[User:Mohanad|Mohanad]] ([[User talk:Mohanad|talk]]) 22:19, 31 January 2025 (UTC)
:Hi Mohanad. Is there a reason you want to use rational numbers as input and output? It seems a bit strange to me, because pi is an irrational number. So, at least for the output, I would suggest using float64. But anyway, I'll take a look now at what you have tried already. [[User:99of9|99of9]] ([[User talk:99of9|talk]]) 22:32, 31 January 2025 (UTC)
::I also wouldn't have a function input for pi. Since it is a constant, it doesn't make much sense for the user of the function to feed in their own personal value. [[User:99of9|99of9]] ([[User talk:99of9|talk]]) 22:42, 31 January 2025 (UTC)
:::I know, I tried to use it directly many times (22*num) & (7*dem) but didn't work for me -[[User:Mohanad|Mohanad]] ([[User talk:Mohanad|talk]]) 22:46, 31 January 2025 (UTC)
::::Ah, I see. That might be because 22 and 7 are not Bigint types. You would need 22n and 7n. But I think we should go for something more accurate than 22/7 anyway. [[User:99of9|99of9]] ([[User talk:99of9|talk]]) 22:49, 31 January 2025 (UTC)
:::::I've changed it a bit so that everything now passes. But it sounds like you're happy if I remove the pi parameter? [[User:99of9|99of9]] ([[User talk:99of9|talk]]) 22:55, 31 January 2025 (UTC)
:::::To be honest, I didn't use float64. Will it work fine with js if the input type has changed? or Or need special work around too, if 22n & 7n work arithmetically fine, then there will be no need for pi input. --[[User:Mohanad|Mohanad]] ([[User talk:Mohanad|talk]]) 23:01, 31 January 2025 (UTC)
::::::I've made [[Z22039]] which doesn't use the pi parameter, and uses 22n/7n as it's approximation for pi. But even if we stick with rational numbers, we could use a much better approximation. [[User:99of9|99of9]] ([[User talk:99of9|talk]]) 23:12, 31 January 2025 (UTC)
::::::Changing either input or output types will mean that we need to rewrite the implementations. Since we have almost completed this rational version, I suggest making a new function with float64 types instead. But yes, let's remove the pi parameter on this one too. [[User:99of9|99of9]] ([[User talk:99of9|talk]]) 23:16, 31 January 2025 (UTC)
::::::Thx for help, if there is any documentation for advanced js implementation it will be helpful, thx again --[[User:Mohanad|Mohanad]] ([[User talk:Mohanad|talk]]) 23:23, 31 January 2025 (UTC)
:The [[wf:Community portal]] is a better place to put things like this to open more participation and to not ping randomly. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 22:34, 31 January 2025 (UTC)
== Kleenean label ==
Hi {{BASEPAGENAME}}, is [[special:diff/162900|it]] wrong? --[[User:Mohanad|Mohanad]] ([[User talk:Mohanad|talk]]) 10:06, 5 February 2025 (UTC)
:Oh, sorry, I think we might have both tried to edit at the same time. I was just trying to edit the English labels. Feel free to undo my edit, or redo yours. [[User:99of9|99of9]] ([[User talk:99of9|talk]]) 10:09, 5 February 2025 (UTC)
== [[Z21949]] ==
Hey @[[User:99of9|99of9]], quick question - How is this different from just using [[Z20844]] or [[Z21939]]? Currently the above just works like the python version (only impl. is a composition referencing the python func)? Thanks! <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:<[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]></span> 14:13, 23 February 2025 (UTC)
:Sorry, my previous answer was a phone, and I didn't understand your question. I'll try again now. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 23:04, 23 February 2025 (UTC)
:[[Z21949]] is where we choose what Wikifunctions should displays by default (without language configuration). At the moment it simply copies what Python would display. But if we ever want to deviate from Python, we can code it there. In particular, I think we may want different notation for qnan and snan, since they are different special values, but show up the same in the python output. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 23:07, 23 February 2025 (UTC)
::I see, thanks for this explanation! <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:<[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]></span> 01:13, 24 February 2025 (UTC)
== Wikidata search examples ==
: [[wikidata:Special:Search/:haswbstatement:P31=Q11344|Chemical elements (P31=Q11344)]]
: [[wikidata:Special:Search/:haswbstatement:P1086 17|Items with atomic number property and 17]] It is supposed to be possible to combine properties and their values but I didn’t get to to work here.
It should be possible (and straightforward) to include something like this in the WD item selector, given prior selection of the relevant Type. (But this is also true for WF objects in the object selector, and it’s anybody’s guess why we don’t do this.) [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:36, 7 March 2025 (UTC)
== Trig functions suggestions ==
Thanks.. I'd put the constraint (or range in) based on what I'd ecnountered in typical usage, but agree with you..
It's a shame I can't use <nowiki><math></nowiki> tags, as for other functions it would make it easer to give more formalised defnitions for some functions. a Tan function would be an infinite or (Nan) at specific input values for example..
basic trig functions are something that should exist, but I am wondering if there are other trig functions that should also be supported as well.. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 18:41, 27 March 2025 (UTC)
:Yes, it would be good to get the math markup working. I think most of the trig functions do already exist. Here are [[Z12473]] and [[Z16463]]. There are plenty of others in [[Wikifunctions:Catalogue/Number_operations]]. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 01:56, 28 March 2025 (UTC)
== Day of roman year format for English ==
Hi. What is the best format for {{Z|Z20342}} in {{Z|Z1002}} and {{Z|Z1124}}? For {{Z|Z20420}}, the dmy format is used both for reading and for display functions, but I see that in {{Z|Z22940}} you print a {{Z|Z20342}} in the md format. Isn't it a bit inconsistent, or it follows an English convention that I am not aware of? What is the best format for {{Z|Z24990}}? (In other terms: how should {{Z|Z24990}} interpret the input "2/3" with {{Z|Z1002}} as the input language?) [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 09:12, 9 June 2025 (UTC)
:Yes, there is inconsistency here. It's hard because different variants of English use different formats, so "en" will never suit everyone. I'd say we should usually default to whatever the en-wiki style is. Then let the variants choose their own most appropriate format. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 14:56, 9 June 2025 (UTC)
::What is the en-wiki style for day-month display? [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 15:04, 9 June 2025 (UTC)
:::It looks like both are equally permitted by the Manual of Style [[:w:Wikipedia:Manual_of_Style/Dates_and_numbers#Dates,_months,_and_years]], and the templates appear to localise according to the citizenship of biographies. I'm not sure which is more frequent overall. So maybe this is not giving us much guidance actually. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 02:15, 10 June 2025 (UTC)
::::Perhaps it's better to extend the discussion to the wider community [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 07:12, 10 June 2025 (UTC)
== Checking in about presentation ==
Hi there! I am aware of your upcoming presentation at WikiCon Australia! Thank you, and I am excited about it! Given everything is a bit afloat again, right now, I wanted to check in if there is something that isn't working and it should. I was aware of the problems with [[Z25785]] and hope that these are resolved. I am also aware that embedded functions are currently not working, as well as issues on Abstract Wikipedia -- but I wanted to check if there is any specific function that used to work and doesn't right now? Cheers --[[User:Denny|Denny]] ([[User talk:Denny|talk]]) 11:09, 7 April 2026 (UTC)
:Hi {{ping|Denny}}. Thanks for the check in. I was hoping to show an embedded function. I picked a fairly ambitious one, but would be happy to scale back to a simpler one if some of them can work within time limits. Here is a function list:
:* [[Z28509]], relies heavily on [[Z25785]] but also on language configuration for good output display
:** status: working
:** risk: currently relying on a temporary measure described in [https://phabricator.wikimedia.org/T419789 T419789]
:** possible improvements: another language label and description would help, so I can show it without (en) everywhere
:* [[Z28005]], specifically [https://www.wikifunctions.org/view/en/Z28005?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z28005%22%2C%22Z28005K1%22%3A%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q2565882%22%7D%2C%22Z28005K2%22%3A%7B%22Z1K1%22%3A%22Z20420%22%2C%22Z20420K1%22%3A%7B%22Z1K1%22%3A%22Z20159%22%2C%22Z20159K1%22%3A%7B%22Z1K1%22%3A%22Z17813%22%2C%22Z17813K1%22%3A%22Z17814%22%7D%2C%22Z20159K2%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%222025%22%7D%7D%2C%22Z20420K2%22%3A%7B%22Z1K1%22%3A%22Z20342%22%2C%22Z20342K1%22%3A%7B%22Z1K1%22%3A%22Z16098%22%2C%22Z16098K1%22%3A%22Z16104%22%7D%2C%22Z20342K2%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%2210%22%7D%7D%7D%7D this query] and I was hoping to show it as an embedded function provisionally at [[User:99of9/sandbox3]]
:** status: function working, but embedding not per [https://phabricator.wikimedia.org/T422299 T422299]
:* [[Z32919]], called from Abstract Wikipedia at [[:abstract:Q55771891]], but also I'll create another similar suburb with a population on the spot.
:** status: needs "retry" on AW. Even works in German - danke!
:** possible improvement: the other (instantiating) sentence on that AW page doesn't work in German, because I picked {{Q|Q7632426}} as its category item which doesn't have an associated lexeme. But I don't mind showing this as a pointer to future work, because the error message is relatively clear.
:Overall I'm relatively comfortable with the current state, so I hope nothing breaks before the weekend! --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 12:35, 7 April 2026 (UTC)
8yj0b3qa2vw5gqo2j5d8u5p7x2zhmaz
263839
263666
2026-04-08T02:33:53Z
99of9
1622
/* Checking in about presentation */
263839
wikitext
text/x-wiki
{{Welcome/lang|user=99of9|welcominguser=Koavf|1=}} ―[[User:Koavf|Justin (<span style="color:grey">ko'''a'''vf</span>)]]<span style="color:red">❤[[User talk:Koavf|T]]☮[[Special:Contributions/Koavf|C]]☺[[Special:Emailuser/Koavf|M]]☯</span> 06:47, 13 September 2023 (UTC)
== Split endswith ? ==
Hi,
First thanks a lot for your help on [[Z11550]] (especially my stupid mistake of copy-paste). But I'm wondering, why split the endswith() ? (it look better and more effective with a tuple, no?)
Cheers, [[User:VIGNERON|VIGNERON]] ([[User talk:VIGNERON|talk]]) 11:55, 21 October 2023 (UTC)
:{{ping|VIGNERON}} It wasn't evaluating, so I tried to fix it. I'm no expert, but it looks like the Python function [https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/endsWith endswith] can only take one string argument (and another to optionally set the end position). I'm glad you're having a go, it will be interesting to see if we can get lots of activity in lots of languages. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 11:59, 21 October 2023 (UTC)
::{{ping|99of9}} ah! of course! thanks a lot for your comment, I made an obvious mistake (it wasn't really a tuple, so not one argument, now it's fixed).
::I'll try te create more functions for French and Breton in the coming days/weeks.
::Cheers, [[User:VIGNERON|VIGNERON]] ([[User talk:VIGNERON|talk]]) 12:16, 21 October 2023 (UTC)
:::OK! Well now I'm learning too! Thanks. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 12:20, 21 October 2023 (UTC)
== Review ==
Hi,
As I said before, I created a couple of wikifunctions for Breton. They are listed here: Wikifunctions:Catalogue#Breton_String_operations
Feel free to look at them and tell me what you think (I see you already added labels and description in English, thanks!).
Cheers, [[User:VIGNERON|VIGNERON]] ([[User talk:VIGNERON|talk]]) 11:11, 1 November 2023 (UTC)
:Hi {{ping|VIGNERON}} yes, I saw these. I think you're doing well. I'm afraid I don't know the language, so I can't be much help, but I'll try to keep adding English labels. For consistency, I suggest that all morphemes associated with a language should have the language at the start of their label, so "English plural", "Breton plural", "Breton ***". --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 11:28, 1 November 2023 (UTC)
::Ah, good point, thanks. I'll harmonize that for English labels right now. Cheers, [[User:VIGNERON|VIGNERON]] ([[User talk:VIGNERON|talk]]) 13:19, 1 November 2023 (UTC)
== [[Z12828]] ==
Hi, I was using this as a presumably simple test case to familiarize myself better with the workflows on this wiki, and I got lost in multiple ways, so thanks for chiming in. I will drop off now but will check back in tomorrow to see what you made out of it. [[User:Daniel Mietchen|Daniel Mietchen]] ([[User talk:Daniel Mietchen|talk]]) 00:28, 23 January 2024 (UTC)
:{{re|Daniel Mietchen}} I've overhauled it a bit. Denny suggested using plain strings as often as possible at first (let me know if you want me to find a link to the discussion). Apart from types, the other main thing that was stopping the python was the whitespace(!). It requires tabbed indents not single spaces. Now that it runs, have a think about what you want the output to be for the test cases I added. I put in my suggestions (which the composition implementation [[Z12834]] conforms to), but am happy to switch them if you prefer different outputs. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 02:56, 23 January 2024 (UTC)
::Oops, I didn't see your comment on capitalisation when it came up [https://www.wikifunctions.org/w/index.php?title=Z12833&diff=76274&oldid=76268]. The reason I think it should just preserve whatever the incoming capitalisation is, is so that it still works at the start of a sentence, or in a database, etc. It's also safe enough, because I imagine that the users of this function will format their input to ensure they get what they want as output. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 03:05, 23 January 2024 (UTC)
:::Thanks, this gives me some things to chew on. --[[User:Daniel Mietchen|Daniel Mietchen]] ([[User talk:Daniel Mietchen|talk]]) 23:30, 23 January 2024 (UTC)
== Comments on Type proposals ==
Hey, admin(?). You added a Comments section to the Natural number type proposal and it included a subscription widget. The blankish template at [[Wikifunctions:Type proposals/(unnamed – new)]] lost that feature and I can’t see how you did it in the first place. Maybe you can fix this for all the proposals (or share your wizardry)? [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 08:57, 13 March 2024 (UTC)
:I just tested and it appears when you sign a signature! (And disappears when you delete your signature.) So I've left a "support as proposer" in the template to prompt the creator to sign. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 00:17, 14 March 2024 (UTC)
::{{Done}} thank you. And congratulations on your elevation! [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 01:58, 14 March 2024 (UTC)
== [[Z14597]] ==
Hi 99of9,<br>
Thanks for all the wonderful work.<br>
Regarding [[Z14597]], sorry, my mistake, can the string be deleted? I created it by mistake and I don't expect it to be used.<br>
Thank you, · <b dir="ltr">[[User:מקף|<sup>מקף </sup>Hyphen]]<sub>[[User talk:מקף| ෴]]</sub></b> · 03:00, 31 March 2024 (UTC)
:Sure. Done. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 04:01, 31 March 2024 (UTC)
== English labels ==
Hi, please don’t mangle our language when labelling 😎 “English suffix word” is practically incomprehensible and “English natural number to ordinal” is positively misleading (it is the ordinal that is in English, not the Natural number). As you no doubt have a plan, perhaps you should articulate it at [[Wikifunctions:Naming conventions]] or [[Wikifunctions talk:Best practices#Wikifunctions:Naming conventions]]. Cheers! [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 07:54, 3 April 2024 (UTC)
:I see what you mean. The idea/"plan" is that with the expected proliferation of language-related functions, that the language they apply to should be ultra-prominent (i.e. first word IMO, so that searches with the language only give you a comprehensive list). Once categories are up and working, this may not matter so much. In the meantime, would colons be sufficient to achieve both goals? "English: suffix word" and "English: natural number to ordinal"? --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 00:48, 4 April 2024 (UTC)
::Yeah, I guessed 😎 It’s hard to prove the negative, but I believe that searches already return a comprehensive list if just the language is specified. My personal preference is for function names (in particular) to have a label that is as close as possible to an idiomatic phrase in the language in which it is expressed. If the natural language prefix is decided upon, I would favour “English: suffix English word” and “English: Natural number to English ordinal”. If we move further away from idiomatic names, I might prefer “English String ordinal from Natural number” and “English String from word and suffix”. This puts the function’s return type in the more prominent position that it deserves (and, yes, I would prefer a Monolingual string return type). The implication there, though, is that the function that turns 23rd to 23 should be called “Natural number from numeric ordinal with English suffix” (unlucky guess: [[Z14542]]😏). That said, “Natural number sum of two Natural numbers” does lack a degree of panache 🤷♂️ [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 21:14, 4 April 2024 (UTC)
:::Ok, I've restored them at least for now. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 01:59, 5 April 2024 (UTC)
::::Feel free to march boldly on. Your contributions are much appreciated (99% of the time) 🙏 [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 03:39, 5 April 2024 (UTC)
== Spambot block ==
Can I ask why [[Special:Redirect/logid/63908]] was only 2 hours? I was going to block them indefinitely until I saw your prior block and figured there was probably a reason. I also reported them to [[:m:SRG]] for a global lock. --[[User:DannyS712|DannyS712]] ([[User talk:DannyS712|talk]]) 19:41, 9 April 2024 (UTC)
:Since I caught them in the act, I was just trying to interrupt the next post, so they would move along. I expect they will not come back no matter how long the block. But I have no concern if you want to make it indefinite. I'm not particularly experienced with blocking. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 01:01, 10 April 2024 (UTC)
::My rule of thumb is that spam-only accounts get indefinitely blocked, but with talk page access enabled in case it turns out that they were not intending to spam or something like that (had that happen to me once I think - blocked someone who just didn't understand that it wasn't allowed and wanted to contribute positively). Anyway, the account is now globally locked so it doesn't really matter --[[User:DannyS712|DannyS712]] ([[User talk:DannyS712|talk]]) 03:46, 10 April 2024 (UTC)
== Can you have a look ==
Hi {{BASEPAGENAME}} hope you fine, I'm just working on a function called "area of a circle" that uses rational numbers. I was having problems doing arithmetic with this type of number and, since there's no documentation I can refer to, I was trying it here and there until I got to this final [[Special:PermanentLink/161945|formula]] that uses pi as input. Can you take a look and give me some suggestions? Or do it if you want. Regards --[[User:Mohanad|Mohanad]] ([[User talk:Mohanad|talk]]) 22:19, 31 January 2025 (UTC)
:Hi Mohanad. Is there a reason you want to use rational numbers as input and output? It seems a bit strange to me, because pi is an irrational number. So, at least for the output, I would suggest using float64. But anyway, I'll take a look now at what you have tried already. [[User:99of9|99of9]] ([[User talk:99of9|talk]]) 22:32, 31 January 2025 (UTC)
::I also wouldn't have a function input for pi. Since it is a constant, it doesn't make much sense for the user of the function to feed in their own personal value. [[User:99of9|99of9]] ([[User talk:99of9|talk]]) 22:42, 31 January 2025 (UTC)
:::I know, I tried to use it directly many times (22*num) & (7*dem) but didn't work for me -[[User:Mohanad|Mohanad]] ([[User talk:Mohanad|talk]]) 22:46, 31 January 2025 (UTC)
::::Ah, I see. That might be because 22 and 7 are not Bigint types. You would need 22n and 7n. But I think we should go for something more accurate than 22/7 anyway. [[User:99of9|99of9]] ([[User talk:99of9|talk]]) 22:49, 31 January 2025 (UTC)
:::::I've changed it a bit so that everything now passes. But it sounds like you're happy if I remove the pi parameter? [[User:99of9|99of9]] ([[User talk:99of9|talk]]) 22:55, 31 January 2025 (UTC)
:::::To be honest, I didn't use float64. Will it work fine with js if the input type has changed? or Or need special work around too, if 22n & 7n work arithmetically fine, then there will be no need for pi input. --[[User:Mohanad|Mohanad]] ([[User talk:Mohanad|talk]]) 23:01, 31 January 2025 (UTC)
::::::I've made [[Z22039]] which doesn't use the pi parameter, and uses 22n/7n as it's approximation for pi. But even if we stick with rational numbers, we could use a much better approximation. [[User:99of9|99of9]] ([[User talk:99of9|talk]]) 23:12, 31 January 2025 (UTC)
::::::Changing either input or output types will mean that we need to rewrite the implementations. Since we have almost completed this rational version, I suggest making a new function with float64 types instead. But yes, let's remove the pi parameter on this one too. [[User:99of9|99of9]] ([[User talk:99of9|talk]]) 23:16, 31 January 2025 (UTC)
::::::Thx for help, if there is any documentation for advanced js implementation it will be helpful, thx again --[[User:Mohanad|Mohanad]] ([[User talk:Mohanad|talk]]) 23:23, 31 January 2025 (UTC)
:The [[wf:Community portal]] is a better place to put things like this to open more participation and to not ping randomly. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 22:34, 31 January 2025 (UTC)
== Kleenean label ==
Hi {{BASEPAGENAME}}, is [[special:diff/162900|it]] wrong? --[[User:Mohanad|Mohanad]] ([[User talk:Mohanad|talk]]) 10:06, 5 February 2025 (UTC)
:Oh, sorry, I think we might have both tried to edit at the same time. I was just trying to edit the English labels. Feel free to undo my edit, or redo yours. [[User:99of9|99of9]] ([[User talk:99of9|talk]]) 10:09, 5 February 2025 (UTC)
== [[Z21949]] ==
Hey @[[User:99of9|99of9]], quick question - How is this different from just using [[Z20844]] or [[Z21939]]? Currently the above just works like the python version (only impl. is a composition referencing the python func)? Thanks! <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:<[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]></span> 14:13, 23 February 2025 (UTC)
:Sorry, my previous answer was a phone, and I didn't understand your question. I'll try again now. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 23:04, 23 February 2025 (UTC)
:[[Z21949]] is where we choose what Wikifunctions should displays by default (without language configuration). At the moment it simply copies what Python would display. But if we ever want to deviate from Python, we can code it there. In particular, I think we may want different notation for qnan and snan, since they are different special values, but show up the same in the python output. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 23:07, 23 February 2025 (UTC)
::I see, thanks for this explanation! <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:<[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]></span> 01:13, 24 February 2025 (UTC)
== Wikidata search examples ==
: [[wikidata:Special:Search/:haswbstatement:P31=Q11344|Chemical elements (P31=Q11344)]]
: [[wikidata:Special:Search/:haswbstatement:P1086 17|Items with atomic number property and 17]] It is supposed to be possible to combine properties and their values but I didn’t get to to work here.
It should be possible (and straightforward) to include something like this in the WD item selector, given prior selection of the relevant Type. (But this is also true for WF objects in the object selector, and it’s anybody’s guess why we don’t do this.) [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 10:36, 7 March 2025 (UTC)
== Trig functions suggestions ==
Thanks.. I'd put the constraint (or range in) based on what I'd ecnountered in typical usage, but agree with you..
It's a shame I can't use <nowiki><math></nowiki> tags, as for other functions it would make it easer to give more formalised defnitions for some functions. a Tan function would be an infinite or (Nan) at specific input values for example..
basic trig functions are something that should exist, but I am wondering if there are other trig functions that should also be supported as well.. [[User:ShakespeareFan00|ShakespeareFan00]] ([[User talk:ShakespeareFan00|talk]]) 18:41, 27 March 2025 (UTC)
:Yes, it would be good to get the math markup working. I think most of the trig functions do already exist. Here are [[Z12473]] and [[Z16463]]. There are plenty of others in [[Wikifunctions:Catalogue/Number_operations]]. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 01:56, 28 March 2025 (UTC)
== Day of roman year format for English ==
Hi. What is the best format for {{Z|Z20342}} in {{Z|Z1002}} and {{Z|Z1124}}? For {{Z|Z20420}}, the dmy format is used both for reading and for display functions, but I see that in {{Z|Z22940}} you print a {{Z|Z20342}} in the md format. Isn't it a bit inconsistent, or it follows an English convention that I am not aware of? What is the best format for {{Z|Z24990}}? (In other terms: how should {{Z|Z24990}} interpret the input "2/3" with {{Z|Z1002}} as the input language?) [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 09:12, 9 June 2025 (UTC)
:Yes, there is inconsistency here. It's hard because different variants of English use different formats, so "en" will never suit everyone. I'd say we should usually default to whatever the en-wiki style is. Then let the variants choose their own most appropriate format. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 14:56, 9 June 2025 (UTC)
::What is the en-wiki style for day-month display? [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 15:04, 9 June 2025 (UTC)
:::It looks like both are equally permitted by the Manual of Style [[:w:Wikipedia:Manual_of_Style/Dates_and_numbers#Dates,_months,_and_years]], and the templates appear to localise according to the citizenship of biographies. I'm not sure which is more frequent overall. So maybe this is not giving us much guidance actually. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 02:15, 10 June 2025 (UTC)
::::Perhaps it's better to extend the discussion to the wider community [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 07:12, 10 June 2025 (UTC)
== Checking in about presentation ==
Hi there! I am aware of your upcoming presentation at WikiCon Australia! Thank you, and I am excited about it! Given everything is a bit afloat again, right now, I wanted to check in if there is something that isn't working and it should. I was aware of the problems with [[Z25785]] and hope that these are resolved. I am also aware that embedded functions are currently not working, as well as issues on Abstract Wikipedia -- but I wanted to check if there is any specific function that used to work and doesn't right now? Cheers --[[User:Denny|Denny]] ([[User talk:Denny|talk]]) 11:09, 7 April 2026 (UTC)
:Hi {{ping|Denny}}. Thanks for the check in. I was hoping to show an embedded function. I picked a fairly ambitious one, but would be happy to scale back to a simpler one if some of them can work within time limits. Here is a function list:
:* [[Z28509]], relies heavily on [[Z25785]] but also on language configuration for good output display
:** status: working
:** risk: currently relying on a temporary measure described in [https://phabricator.wikimedia.org/T419789 T419789]
:** possible improvements: another language label and description would help, so I can show it without (en) everywhere
:* [[Z28005]], specifically [https://www.wikifunctions.org/view/en/Z28005?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z28005%22%2C%22Z28005K1%22%3A%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q2565882%22%7D%2C%22Z28005K2%22%3A%7B%22Z1K1%22%3A%22Z20420%22%2C%22Z20420K1%22%3A%7B%22Z1K1%22%3A%22Z20159%22%2C%22Z20159K1%22%3A%7B%22Z1K1%22%3A%22Z17813%22%2C%22Z17813K1%22%3A%22Z17814%22%7D%2C%22Z20159K2%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%222025%22%7D%7D%2C%22Z20420K2%22%3A%7B%22Z1K1%22%3A%22Z20342%22%2C%22Z20342K1%22%3A%7B%22Z1K1%22%3A%22Z16098%22%2C%22Z16098K1%22%3A%22Z16104%22%7D%2C%22Z20342K2%22%3A%7B%22Z1K1%22%3A%22Z13518%22%2C%22Z13518K1%22%3A%2210%22%7D%7D%7D%7D this query] and I was hoping to show it as an embedded function provisionally at [[User:99of9/sandbox3]]
:** status: function working, but embedding not per [https://phabricator.wikimedia.org/T422299 T422299]
:* [[Z32919]], called from Abstract Wikipedia at [[:abstract:Q55771891]], but also I'll create another similar suburb with a population on the spot.
:** status: needs "retry" on AW. Even works in German - danke!
:** possible improvement: the other (instantiating) sentence on that AW page doesn't work in German, because I picked {{Q|Q7632426}} as its category item which doesn't have an associated lexeme. But I don't mind showing this as a pointer to future work, because the error message is relatively clear.
:Overall I'm relatively comfortable with the current state, so I hope nothing breaks before the weekend! --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 12:35, 7 April 2026 (UTC)
:{{ping|Denny}} Another high priority for live demonstrations would be [https://phabricator.wikimedia.org/T406784 T406784]. It is likely to trip me up if someone asks to see how to make an implementation (if I don't get it right first time). But I imagine this is a much harder one to solve quickly. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 02:33, 8 April 2026 (UTC)
7cduwer1iwbgu6khs9okcp3qpopju0z
Z12696
0
20537
263649
237305
2026-04-07T12:26:11Z
Patsagorn Y.
738
+th labels
263649
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z12696"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": {
"Z1K1": "Z7",
"Z7K1": "Z881",
"Z881K1": "Z1"
},
"Z17K2": "Z12696K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "list"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1014",
"Z11K2": "ndepụta: Edepụtara ndepụta ( Ihe )"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1430",
"Z11K2": "Liste"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1004",
"Z11K2": "liste"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "lista"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1078",
"Z11K2": "daftar"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1709",
"Z11K2": "saraksts"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1851",
"Z11K2": "รายการ"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z1",
"Z17K2": "Z12696K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "element"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1014",
"Z11K2": "mmewere : ihe"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1430",
"Z11K2": "Element"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1004",
"Z11K2": "élément"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "elemento"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1078",
"Z11K2": "elemen"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1709",
"Z11K2": "elements"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1851",
"Z11K2": "องค์ประกอบ"
}
]
}
}
],
"Z8K2": "Z40",
"Z8K3": [
"Z20",
"Z12697",
"Z12718",
"Z12862",
"Z12872",
"Z13757",
"Z13758",
"Z13759",
"Z13761",
"Z16538",
"Z16559",
"Z16953",
"Z17616",
"Z20216",
"Z20235",
"Z24321",
"Z24323",
"Z24844",
"Z27440",
"Z29964"
],
"Z8K4": [
"Z14",
"Z12863",
"Z24324",
"Z12711",
"Z14207"
],
"Z8K5": "Z12696"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "contains"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1014",
"Z11K2": "nwere"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1430",
"Z11K2": "enthält"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1013",
"Z11K2": "Akwai"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1827",
"Z11K2": "περιέχει "
},
{
"Z1K1": "Z11",
"Z11K1": "Z1004",
"Z11K2": "cet élément est-il contenu dans la liste ?"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "contiene"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1078",
"Z11K2": "memuat"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1709",
"Z11K2": "satur"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1851",
"Z11K2": "มี"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31",
{
"Z1K1": "Z31",
"Z31K1": "Z1002",
"Z31K2": [
"Z6",
"includes",
"lists",
"has the element",
"element in list",
"element is in the list",
"in"
]
},
{
"Z1K1": "Z31",
"Z31K1": "Z1430",
"Z31K2": [
"Z6",
"beinhaltet",
"zählt auf",
"hat das Element"
]
},
{
"Z1K1": "Z31",
"Z31K1": "Z1787",
"Z31K2": [
"Z6",
"include",
"lista contiene",
"lista ha l'elemento",
"elemento in lista"
]
},
{
"Z1K1": "Z31",
"Z31K1": "Z1709",
"Z31K2": [
"Z6",
"satur elementu"
]
},
{
"Z1K1": "Z31",
"Z31K1": "Z1851",
"Z31K2": [
"Z6",
"ประกอบด้วย",
"มีส่วนประกอบ",
"มีอยู่ใน"
]
}
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "test whether a list contains a certain element"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1014",
"Z11K2": "lee ma ndepụta onwere ụfọdụ mmewere"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1430",
"Z11K2": "prüft, ob eine Liste ein bestimmtes Element enthält"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1013",
"Z11K2": "Doba ko sunaye yana de wansu ábobowa"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1827",
"Z11K2": "ελέγχει εάν ένας κατάλογος περιέχει ένα συγκεκριμένο στοιχείο"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1004",
"Z11K2": "renvoie \"vrai\" si l'élément donné est contenu dans la liste, sinon \"faux\""
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "Controlla se una lista contiene un certo elemento"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1078",
"Z11K2": "uji jika sebuat daftar memuat beberapa elemen"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1709",
"Z11K2": "pārbaude, vai sarakst satur konkrētu elementu"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1851",
"Z11K2": "ตรวจสอบว่าในรายการมีองค์ประกอบที่ระบุหรือไม่"
}
]
}
}
d3x9zadnfeuel4oqu4lm5w1r1p458dv
Wikifunctions:Type proposals
4
24480
263701
263620
2026-04-07T12:58:25Z
Dv103
11127
/* Lightweight Wikidata enumerations */
263701
wikitext
text/x-wiki
{{see also|d:Special:ListDatatypes}}
{{shortcut|[[WF:TP]]}}
This page is to discuss and decide on proposals for new [[WF:types|Types]], and for changing existing ones.
Before proposing, you should familiarize yourself with the [[WF:Function model|Function model]].
Types are currently being created by Wikifunctions staff. Over time these rights will be handed over to the community.
== Proposals for new types to be created ==
=== Implementation in progress ===
=== In discussion ===
* [[WF:type proposals/complex128|complex128]]
* [[WF:type proposals/SI units|SI units]]
* [[WF:type proposals/Unit of measurement|Unit of measurement]]
* [[WF:type proposals/Moment in time|Moment in time]]
* [[WF:type proposals/Julian calendar date|Julian calendar date]]
* [[WF:type proposals/Grapheme|Grapheme]]
* [[WF:type proposals/Wikifunctions object reference|Wikifunctions object reference]]
* [[WF:type proposals/Value with error|Value with error]]
* [[WF:type proposals/configuration of functions for given types|configuration of functions for given types]]
* [[WF:type proposals/Geometrical point|Geometrical point]]
* [[WF:type proposals/Currency|Currency]]
* [[WF:type proposals/Named parameters list|Named parameters list]]
* [[WF:type proposal/Syntactic table|Syntactic table]]
* [[WF:type proposals/Syntactic unit|Syntactic unit]]
* [[WF:type proposals/Semantic unit|Semantic unit]]
* [[WF:type proposals/Abstract sentence|Abstract sentence]]
==== Lightweight Wikidata enumerations ====
* [[WF:type proposals/French tenses|French tenses]]
* [[WF:type proposals/French subjects|French subjects]]
* [[WF:type proposals/Timezone|Timezone]]
* [[WF:type proposals/Italian auxiliary verb|Italian auxiliary verb]]
* [[WF:type proposals/Italian simple preposition|Italian simple preposition]]
* [[WF:type proposals/Italian tense|Italian tense]]
* [[WF:type proposals/Unicode General Category|Unicode General Category]]
* [[WF:type proposals/Taxon rank|Taxon rank]]
* [[WF:type proposals/Word order|Word order]]
* [[WF:Type_proposals/IPA_phone_base_glyph|IPA phone]]
* [[WF:Type_proposals/Season|Season]]
* [[WF:Type_proposals/Zodiac sign|Zodiac sign]]
* [[WF:Type_proposals/Simple temporal entity|Simple temporal entity]]
* [[WF:Type_proposals/Japanese verb conjugation class|Japanese verb conjugation class]]
* [[WF:Type_proposals/Topic-comment|Topic-comment]]
=== Being prepared ===
=== Stalled ===
* [[WF:type proposals/Typed string|Typed string]]
* [[WF:type proposals/Wikidata value|Wikidata value]]
* [[WF:type proposals/Wikidata string-based value|Wikidata string-based value]]
* [[WF:type proposals/bytes|bytes]]
* [[WF:type proposals/Percentage|Percentage]]
=== Something to think about ===
* Symbol and expression (as in a [[w:computer algebra system|computer algebra system]]) - currently no idea yet
* [[WF:type proposals/Alphabet|Alphabet]]
* [[WF:type proposals/Context|Context]]
* [[WF:type proposals/Imperial Units|Imperial Units]]
* months in calendars
** [[WF:type proposals/Bengali month|Bengali month]]
** [[WF:type proposals/Darian month|Darian month]]
** [[WF:type proposals/Hebrew month|Hebrew month]]
** [[WF:type proposals/Hindu month|Hindu month]]
** [[WF:type proposals/Nepali month|Nepali month]]
** [[WF:type proposals/Sindhi month|Sindhi month]]
** [[WF:type proposals/Tamil month|Tamil month]]
* [[WF:type proposals/Multilingual gloss|Multilingual gloss]]
* [[WF:type proposals/Position on Earth|Position on Earth]]
* [[WF:type proposals/URL|URL]]
==== Wikidata integration ====
(These are just the types we will need that are not listed somewhere else)
* Wikidata qualifier
* Wikidata Data type
* Wikidata sitelink
* Unknown value
* Entity schema
==== "Heavy" data ====
Heavy data is those that can be more than 1.5MB (where medium data are between 60KB and 1.5MB). This includes most real-world files (jpg, mp3, pdf, zip, exe) and raw forms of data containing in such files (e.g. 1024*768 RGB image has 2359296 bytes in raw form). Wikifunctions currently have limited support for medium data and little support for heavy data (and neither support file uploading for computation). See [[WF:type proposals/bytes#Uses|bytes § Uses]] for more information.
* Image (raster): basically, a 2D or 3D array of number (though we ''do'' need a type to represent both the array and image mode)
* Audio and signal: basically, one number (sampling rate) and one or more (1D) arrays of number, one per channel (though we ''do'' need a type to represent all of them)
* Video: audio plus series of image
=== Unclear necessity / probably unnecessary ===
* Multidimensional array: can be represented as list of lists, but a dedicated edit interface would be nice (and way to enforce an array not to be jagged)
* Typed tuple: can be represented as nested [[Z882]]
* Set: use list instead
* Multiset: use list instead
* Multimap: use list of [[Z882]] instead (see also simple map [[Z883]])
* [[WF:type proposals/Syntactic type|Syntactic type]]
== Types that have already been Implemented ==
{{main|WF:type}}
* [[WF:type proposals/Grammatical voice (a/m/p)|Grammatical voice (a/m/p)]]
* [[WF:type proposals/Grammatical voice (a/mp)|Grammatical voice (a/mp)]]
* [[WF:type proposals/RGBA color|RGBA color]]
* [[WF:type proposals/Grammatical number (singular/paucal/multal)|Grammatical number (singular/paucal/multal)]]
* [[WF:type proposals/Grammatical definiteness|Grammatical definiteness]]
* [[WF:type proposals/Grammatical voice (a/p)|Grammatical voice (a/p)]]
* [[WF:type proposals/Grammatical affirmation and negation|Grammatical affirmation and negation]]
* [[WF:type proposals/Grammatical cases (n/g/d/a)|Grammatical cases (n/g/d/a)]]
* [[WF:type proposals/Grammatical degree of comparison (p/c/s)|Grammatical degree of comparison (p/c/s)]]
* [[WF:type proposals/Chemical element|Chemical element]]
* [[WF:type proposals/Wikidata based types|Wikidata based types]] as {{Z|Z6001}}, {{Z|Z6002}}, {{Z|Z6003}}, {{Z|Z6004}}, {{Z|Z6005}}
** [[WF:type proposals/Wikidata lexeme senses|Wikidata lexeme senses]] as {{Z|Z6006}}
** [[WF:type proposals/Wikidata time|Wikidata time]] as {{Z|Z6064}}
** [[WF:type proposals/Wikidata quantity|Wikidata quantity]] as {{Z|Z6010}}
** [[WF:type proposals/Wikidata geocoordinates|Wikidata geocoordinates]] as {{Z|Z6011}}
* [[WF:type proposals/Grammatical number (singular/dual/plural)|Grammatical number (singular/dual/plural)]] as {{Z|Z28215}}
* [[WF:type proposals/Breton mutation|Breton mutation]] as {{Z|Z27971}}
* [[WF:type proposals/Grammatical person (1/2/3)|Grammatical person (1/2/3)]] as {{Z|Z27970}}
* [[WF:type proposals/Grammatical gender (a/i)|Grammatical gender (a/i)]] as {{Z|Z26935}}
* [[WF:type proposals/Grammatical number (s/p)|Grammatical number (s/p)]] as {{Z|Z26934}}
* [[WF:type proposals/Hijri calendar month|Hijri calendar month]] as {{Z|Z26582}}
* [[WF:type proposals/Grammatical gender (m/f)|Grammatical gender (m/f)]] as {{Z|Z25340}}
* [[WF:type proposals/Grammatical gender (m/f/n)|Grammatical gender (m/f/n)]] as {{Z|Z25501}}
* [[WF:type proposals/Grammatical gender (c/n)|Grammatical gender (c/n)]] as {{Z|Z25502}}
* [[WF:type proposals/Natural number|Natural number]] as {{Z|Z13518}}
* [[WF:type_proposals/Gregorian calendar month|Gregorian calendar month]] as {{Z|Z16098}}
* [[WF:type proposals/Sign|Sign]] as {{Z|Z16659}}
* [[WF:type proposals/Igbo calendar month|Igbo calendar month]] as {{Z|Z16927}}
* [[WF:type proposals/Integer|Integer]] as {{Z|Z16683}}
* [[WF:type proposals/Day of the week|Day of the week]] as {{Z|Z17402}}
* [[WF:type proposals/Gregorian era|Gregorian era]] as {{Z|Z17813}}
* [[WF:type proposals/Rational number|Rational number]] as {{Z|Z19677}}
* [[WF:type proposals/Gregorian year|Gregorian year]] as {{Z|Z20159}}
* [[WF:type proposals/Day of Roman year|Day of Roman year]] as {{Z|Z20342}}
* [[WF:type proposals/Gregorian calendar date|Gregorian calendar date]] as {{Z|Z20420}}
* [[WF:type proposals/float64|float64]] as {{Z|Z20838}}
* [[WF:type proposals/Kleenean|Kleenean]] as {{Z|Z22112}}
* [[WF:type proposals/Byte|Byte]] as {{Z|Z80}}
* [[WF:type proposals/Unicode codepoint|Unicode codepoint]] as {{Z|Z86}}
== Proposals for changing existing types ==
=== Changes to existing types ===
* ...
== Templates ==
* [[WF:type proposals/(unnamed – new Type)|unnamed – new Type]]
* [[WF:type proposals/(unnamed – new lightweight Wikidata enumeration)|unnamed – new lightweight Wikidata enumeration]]
* [[WF:type proposals/(unnamed – modification of an existing Type)|unnamed – modification of an existing Type]]
[[category:project concept]]
9y03h1h6n3tvmei6iun62yxmtpa2nyc
263711
263701
2026-04-07T13:08:33Z
DVrandecic (WMF)
7
263711
wikitext
text/x-wiki
{{see also|d:Special:ListDatatypes}}
{{shortcut|[[WF:TP]]}}
This page is to discuss and decide on proposals for new [[WF:types|Types]], and for changing existing ones.
Before proposing, you should familiarize yourself with the [[WF:Function model|Function model]].
Types are currently being created by Wikifunctions staff. Over time these rights will be handed over to the community.
== Proposals for new types to be created ==
=== Implementation in progress ===
=== In discussion ===
* [[WF:type proposals/SI units|SI units]]
* [[WF:type proposals/Unit of measurement|Unit of measurement]]
* [[WF:type proposals/Moment in time|Moment in time]]
* [[WF:type proposals/Julian calendar date|Julian calendar date]]
* [[WF:type proposals/Grapheme|Grapheme]]
* [[WF:type proposals/Wikifunctions object reference|Wikifunctions object reference]]
* [[WF:type proposals/Value with error|Value with error]]
* [[WF:type proposals/configuration of functions for given types|configuration of functions for given types]]
* [[WF:type proposals/Geometrical point|Geometrical point]]
* [[WF:type proposals/Currency|Currency]]
* [[WF:type proposals/Named parameters list|Named parameters list]]
* [[WF:type proposal/Syntactic table|Syntactic table]]
* [[WF:type proposals/Syntactic unit|Syntactic unit]]
* [[WF:type proposals/Semantic unit|Semantic unit]]
* [[WF:type proposals/Abstract sentence|Abstract sentence]]
==== Lightweight Wikidata enumerations ====
* [[WF:type proposals/French tenses|French tenses]]
* [[WF:type proposals/French subjects|French subjects]]
* [[WF:type proposals/Timezone|Timezone]]
* [[WF:type proposals/Italian auxiliary verb|Italian auxiliary verb]]
* [[WF:type proposals/Italian simple preposition|Italian simple preposition]]
* [[WF:type proposals/Italian tense|Italian tense]]
* [[WF:type proposals/Unicode General Category|Unicode General Category]]
* [[WF:type proposals/Taxon rank|Taxon rank]]
* [[WF:type proposals/Word order|Word order]]
* [[WF:Type_proposals/IPA_phone_base_glyph|IPA phone]]
* [[WF:Type_proposals/Season|Season]]
* [[WF:Type_proposals/Zodiac sign|Zodiac sign]]
* [[WF:Type_proposals/Simple temporal entity|Simple temporal entity]]
* [[WF:Type_proposals/Japanese verb conjugation class|Japanese verb conjugation class]]
=== Being prepared ===
=== Stalled ===
* [[WF:type proposals/Typed string|Typed string]]
* [[WF:type proposals/Wikidata value|Wikidata value]]
* [[WF:type proposals/Wikidata string-based value|Wikidata string-based value]]
* [[WF:type proposals/bytes|bytes]]
* [[WF:type proposals/Percentage|Percentage]]
=== Something to think about ===
* Symbol and expression (as in a [[w:computer algebra system|computer algebra system]]) - currently no idea yet
* [[WF:type proposals/Alphabet|Alphabet]]
* [[WF:type proposals/Context|Context]]
* [[WF:type proposals/Imperial Units|Imperial Units]]
* months in calendars
** [[WF:type proposals/Bengali month|Bengali month]]
** [[WF:type proposals/Darian month|Darian month]]
** [[WF:type proposals/Hebrew month|Hebrew month]]
** [[WF:type proposals/Hindu month|Hindu month]]
** [[WF:type proposals/Nepali month|Nepali month]]
** [[WF:type proposals/Sindhi month|Sindhi month]]
** [[WF:type proposals/Tamil month|Tamil month]]
* [[WF:type proposals/Multilingual gloss|Multilingual gloss]]
* [[WF:type proposals/Position on Earth|Position on Earth]]
* [[WF:type proposals/URL|URL]]
==== Wikidata integration ====
(These are just the types we will need that are not listed somewhere else)
* Wikidata qualifier
* Wikidata Data type
* Wikidata sitelink
* Unknown value
* Entity schema
==== "Heavy" data ====
Heavy data is those that can be more than 1.5MB (where medium data are between 60KB and 1.5MB). This includes most real-world files (jpg, mp3, pdf, zip, exe) and raw forms of data containing in such files (e.g. 1024*768 RGB image has 2359296 bytes in raw form). Wikifunctions currently have limited support for medium data and little support for heavy data (and neither support file uploading for computation). See [[WF:type proposals/bytes#Uses|bytes § Uses]] for more information.
* Image (raster): basically, a 2D or 3D array of number (though we ''do'' need a type to represent both the array and image mode)
* Audio and signal: basically, one number (sampling rate) and one or more (1D) arrays of number, one per channel (though we ''do'' need a type to represent all of them)
* Video: audio plus series of image
=== Unclear necessity / probably unnecessary ===
* Multidimensional array: can be represented as list of lists, but a dedicated edit interface would be nice (and way to enforce an array not to be jagged)
* Typed tuple: can be represented as nested [[Z882]]
* Set: use list instead
* Multiset: use list instead
* Multimap: use list of [[Z882]] instead (see also simple map [[Z883]])
* [[WF:type proposals/Syntactic type|Syntactic type]]
== Types that have already been Implemented ==
{{main|WF:type}}
* [[WF:type proposals/complex128|complex128]]
* [[WF:type proposals/Grammatical voice (a/m/p)|Grammatical voice (a/m/p)]]
* [[WF:type proposals/Grammatical voice (a/mp)|Grammatical voice (a/mp)]]
* [[WF:type proposals/RGBA color|RGBA color]]
* [[WF:type proposals/Grammatical number (singular/paucal/multal)|Grammatical number (singular/paucal/multal)]]
* [[WF:type proposals/Grammatical definiteness|Grammatical definiteness]]
* [[WF:type proposals/Grammatical voice (a/p)|Grammatical voice (a/p)]]
* [[WF:type proposals/Grammatical affirmation and negation|Grammatical affirmation and negation]]
* [[WF:type proposals/Grammatical cases (n/g/d/a)|Grammatical cases (n/g/d/a)]]
* [[WF:type proposals/Grammatical degree of comparison (p/c/s)|Grammatical degree of comparison (p/c/s)]]
* [[WF:type proposals/Chemical element|Chemical element]]
* [[WF:type proposals/Wikidata based types|Wikidata based types]] as {{Z|Z6001}}, {{Z|Z6002}}, {{Z|Z6003}}, {{Z|Z6004}}, {{Z|Z6005}}
** [[WF:type proposals/Wikidata lexeme senses|Wikidata lexeme senses]] as {{Z|Z6006}}
** [[WF:type proposals/Wikidata time|Wikidata time]] as {{Z|Z6064}}
** [[WF:type proposals/Wikidata quantity|Wikidata quantity]] as {{Z|Z6010}}
** [[WF:type proposals/Wikidata geocoordinates|Wikidata geocoordinates]] as {{Z|Z6011}}
* [[WF:type proposals/Grammatical number (singular/dual/plural)|Grammatical number (singular/dual/plural)]] as {{Z|Z28215}}
* [[WF:type proposals/Breton mutation|Breton mutation]] as {{Z|Z27971}}
* [[WF:type proposals/Grammatical person (1/2/3)|Grammatical person (1/2/3)]] as {{Z|Z27970}}
* [[WF:type proposals/Grammatical gender (a/i)|Grammatical gender (a/i)]] as {{Z|Z26935}}
* [[WF:type proposals/Grammatical number (s/p)|Grammatical number (s/p)]] as {{Z|Z26934}}
* [[WF:type proposals/Hijri calendar month|Hijri calendar month]] as {{Z|Z26582}}
* [[WF:type proposals/Grammatical gender (m/f)|Grammatical gender (m/f)]] as {{Z|Z25340}}
* [[WF:type proposals/Grammatical gender (m/f/n)|Grammatical gender (m/f/n)]] as {{Z|Z25501}}
* [[WF:type proposals/Grammatical gender (c/n)|Grammatical gender (c/n)]] as {{Z|Z25502}}
* [[WF:type proposals/Natural number|Natural number]] as {{Z|Z13518}}
* [[WF:type_proposals/Gregorian calendar month|Gregorian calendar month]] as {{Z|Z16098}}
* [[WF:type proposals/Sign|Sign]] as {{Z|Z16659}}
* [[WF:type proposals/Igbo calendar month|Igbo calendar month]] as {{Z|Z16927}}
* [[WF:type proposals/Integer|Integer]] as {{Z|Z16683}}
* [[WF:type proposals/Day of the week|Day of the week]] as {{Z|Z17402}}
* [[WF:type proposals/Gregorian era|Gregorian era]] as {{Z|Z17813}}
* [[WF:type proposals/Rational number|Rational number]] as {{Z|Z19677}}
* [[WF:type proposals/Gregorian year|Gregorian year]] as {{Z|Z20159}}
* [[WF:type proposals/Day of Roman year|Day of Roman year]] as {{Z|Z20342}}
* [[WF:type proposals/Gregorian calendar date|Gregorian calendar date]] as {{Z|Z20420}}
* [[WF:type proposals/float64|float64]] as {{Z|Z20838}}
* [[WF:type proposals/Kleenean|Kleenean]] as {{Z|Z22112}}
* [[WF:type proposals/Byte|Byte]] as {{Z|Z80}}
* [[WF:type proposals/Unicode codepoint|Unicode codepoint]] as {{Z|Z86}}
== Proposals for changing existing types ==
=== Changes to existing types ===
* ...
== Templates ==
* [[WF:type proposals/(unnamed – new Type)|unnamed – new Type]]
* [[WF:type proposals/(unnamed – new lightweight Wikidata enumeration)|unnamed – new lightweight Wikidata enumeration]]
* [[WF:type proposals/(unnamed – modification of an existing Type)|unnamed – modification of an existing Type]]
[[category:project concept]]
7f0q8kv137972bcucimowfbtlu2kyg6
263732
263711
2026-04-07T13:44:03Z
Dv103
11127
263732
wikitext
text/x-wiki
{{see also|d:Special:ListDatatypes}}
{{shortcut|[[WF:TP]]}}
This page is to discuss and decide on proposals for new [[WF:types|Types]], and for changing existing ones.
Before proposing, you should familiarize yourself with the [[WF:Function model|Function model]].
Types are currently being created by Wikifunctions staff. Over time these rights will be handed over to the community.
== Proposals for new types to be created ==
=== Implementation in progress ===
=== In discussion ===
* [[WF:type proposals/SI units|SI units]]
* [[WF:type proposals/Unit of measurement|Unit of measurement]]
* [[WF:type proposals/Moment in time|Moment in time]]
* [[WF:type proposals/Julian calendar date|Julian calendar date]]
* [[WF:type proposals/Grapheme|Grapheme]]
* [[WF:type proposals/Wikifunctions object reference|Wikifunctions object reference]]
* [[WF:type proposals/Value with error|Value with error]]
* [[WF:type proposals/configuration of functions for given types|configuration of functions for given types]]
* [[WF:type proposals/Geometrical point|Geometrical point]]
* [[WF:type proposals/Currency|Currency]]
* [[WF:type proposals/Named parameters list|Named parameters list]]
* [[WF:type proposal/Syntactic table|Syntactic table]]
* [[WF:type proposals/Syntactic unit|Syntactic unit]]
* [[WF:type proposals/Semantic unit|Semantic unit]]
* [[WF:type proposals/Abstract sentence|Abstract sentence]]
==== Lightweight Wikidata enumerations ====
* [[WF:type proposals/French tenses|French tenses]]
* [[WF:type proposals/French subjects|French subjects]]
* [[WF:type proposals/Timezone|Timezone]]
* [[WF:type proposals/Italian auxiliary verb|Italian auxiliary verb]]
* [[WF:type proposals/Italian simple preposition|Italian simple preposition]]
* [[WF:type proposals/Italian tense|Italian tense]]
* [[WF:type proposals/Unicode General Category|Unicode General Category]]
* [[WF:type proposals/Taxon rank|Taxon rank]]
* [[WF:type proposals/Word order|Word order]]
* [[WF:Type_proposals/IPA_phone_base_glyph|IPA phone]]
* [[WF:Type_proposals/Season|Season]]
* [[WF:Type_proposals/Zodiac sign|Zodiac sign]]
* [[WF:Type_proposals/Simple temporal entity|Simple temporal entity]]
* [[WF:Type_proposals/Japanese verb conjugation class|Japanese verb conjugation class]]
* [[WF:Type_proposals/Topic-comment|Topic-comment]]
=== Being prepared ===
=== Stalled ===
* [[WF:type proposals/Typed string|Typed string]]
* [[WF:type proposals/Wikidata value|Wikidata value]]
* [[WF:type proposals/Wikidata string-based value|Wikidata string-based value]]
* [[WF:type proposals/bytes|bytes]]
* [[WF:type proposals/Percentage|Percentage]]
=== Something to think about ===
* Symbol and expression (as in a [[w:computer algebra system|computer algebra system]]) - currently no idea yet
* [[WF:type proposals/Alphabet|Alphabet]]
* [[WF:type proposals/Context|Context]]
* [[WF:type proposals/Imperial Units|Imperial Units]]
* months in calendars
** [[WF:type proposals/Bengali month|Bengali month]]
** [[WF:type proposals/Darian month|Darian month]]
** [[WF:type proposals/Hebrew month|Hebrew month]]
** [[WF:type proposals/Hindu month|Hindu month]]
** [[WF:type proposals/Nepali month|Nepali month]]
** [[WF:type proposals/Sindhi month|Sindhi month]]
** [[WF:type proposals/Tamil month|Tamil month]]
* [[WF:type proposals/Multilingual gloss|Multilingual gloss]]
* [[WF:type proposals/Position on Earth|Position on Earth]]
* [[WF:type proposals/URL|URL]]
==== Wikidata integration ====
(These are just the types we will need that are not listed somewhere else)
* Wikidata qualifier
* Wikidata Data type
* Wikidata sitelink
* Unknown value
* Entity schema
==== "Heavy" data ====
Heavy data is those that can be more than 1.5MB (where medium data are between 60KB and 1.5MB). This includes most real-world files (jpg, mp3, pdf, zip, exe) and raw forms of data containing in such files (e.g. 1024*768 RGB image has 2359296 bytes in raw form). Wikifunctions currently have limited support for medium data and little support for heavy data (and neither support file uploading for computation). See [[WF:type proposals/bytes#Uses|bytes § Uses]] for more information.
* Image (raster): basically, a 2D or 3D array of number (though we ''do'' need a type to represent both the array and image mode)
* Audio and signal: basically, one number (sampling rate) and one or more (1D) arrays of number, one per channel (though we ''do'' need a type to represent all of them)
* Video: audio plus series of image
=== Unclear necessity / probably unnecessary ===
* Multidimensional array: can be represented as list of lists, but a dedicated edit interface would be nice (and way to enforce an array not to be jagged)
* Typed tuple: can be represented as nested [[Z882]]
* Set: use list instead
* Multiset: use list instead
* Multimap: use list of [[Z882]] instead (see also simple map [[Z883]])
* [[WF:type proposals/Syntactic type|Syntactic type]]
== Types that have already been Implemented ==
{{main|WF:type}}
* [[WF:type proposals/complex128|complex128]]
* [[WF:type proposals/Grammatical voice (a/m/p)|Grammatical voice (a/m/p)]]
* [[WF:type proposals/Grammatical voice (a/mp)|Grammatical voice (a/mp)]]
* [[WF:type proposals/RGBA color|RGBA color]]
* [[WF:type proposals/Grammatical number (singular/paucal/multal)|Grammatical number (singular/paucal/multal)]]
* [[WF:type proposals/Grammatical definiteness|Grammatical definiteness]]
* [[WF:type proposals/Grammatical voice (a/p)|Grammatical voice (a/p)]]
* [[WF:type proposals/Grammatical affirmation and negation|Grammatical affirmation and negation]]
* [[WF:type proposals/Grammatical cases (n/g/d/a)|Grammatical cases (n/g/d/a)]]
* [[WF:type proposals/Grammatical degree of comparison (p/c/s)|Grammatical degree of comparison (p/c/s)]]
* [[WF:type proposals/Chemical element|Chemical element]]
* [[WF:type proposals/Wikidata based types|Wikidata based types]] as {{Z|Z6001}}, {{Z|Z6002}}, {{Z|Z6003}}, {{Z|Z6004}}, {{Z|Z6005}}
** [[WF:type proposals/Wikidata lexeme senses|Wikidata lexeme senses]] as {{Z|Z6006}}
** [[WF:type proposals/Wikidata time|Wikidata time]] as {{Z|Z6064}}
** [[WF:type proposals/Wikidata quantity|Wikidata quantity]] as {{Z|Z6010}}
** [[WF:type proposals/Wikidata geocoordinates|Wikidata geocoordinates]] as {{Z|Z6011}}
* [[WF:type proposals/Grammatical number (singular/dual/plural)|Grammatical number (singular/dual/plural)]] as {{Z|Z28215}}
* [[WF:type proposals/Breton mutation|Breton mutation]] as {{Z|Z27971}}
* [[WF:type proposals/Grammatical person (1/2/3)|Grammatical person (1/2/3)]] as {{Z|Z27970}}
* [[WF:type proposals/Grammatical gender (a/i)|Grammatical gender (a/i)]] as {{Z|Z26935}}
* [[WF:type proposals/Grammatical number (s/p)|Grammatical number (s/p)]] as {{Z|Z26934}}
* [[WF:type proposals/Hijri calendar month|Hijri calendar month]] as {{Z|Z26582}}
* [[WF:type proposals/Grammatical gender (m/f)|Grammatical gender (m/f)]] as {{Z|Z25340}}
* [[WF:type proposals/Grammatical gender (m/f/n)|Grammatical gender (m/f/n)]] as {{Z|Z25501}}
* [[WF:type proposals/Grammatical gender (c/n)|Grammatical gender (c/n)]] as {{Z|Z25502}}
* [[WF:type proposals/Natural number|Natural number]] as {{Z|Z13518}}
* [[WF:type_proposals/Gregorian calendar month|Gregorian calendar month]] as {{Z|Z16098}}
* [[WF:type proposals/Sign|Sign]] as {{Z|Z16659}}
* [[WF:type proposals/Igbo calendar month|Igbo calendar month]] as {{Z|Z16927}}
* [[WF:type proposals/Integer|Integer]] as {{Z|Z16683}}
* [[WF:type proposals/Day of the week|Day of the week]] as {{Z|Z17402}}
* [[WF:type proposals/Gregorian era|Gregorian era]] as {{Z|Z17813}}
* [[WF:type proposals/Rational number|Rational number]] as {{Z|Z19677}}
* [[WF:type proposals/Gregorian year|Gregorian year]] as {{Z|Z20159}}
* [[WF:type proposals/Day of Roman year|Day of Roman year]] as {{Z|Z20342}}
* [[WF:type proposals/Gregorian calendar date|Gregorian calendar date]] as {{Z|Z20420}}
* [[WF:type proposals/float64|float64]] as {{Z|Z20838}}
* [[WF:type proposals/Kleenean|Kleenean]] as {{Z|Z22112}}
* [[WF:type proposals/Byte|Byte]] as {{Z|Z80}}
* [[WF:type proposals/Unicode codepoint|Unicode codepoint]] as {{Z|Z86}}
== Proposals for changing existing types ==
=== Changes to existing types ===
* ...
== Templates ==
* [[WF:type proposals/(unnamed – new Type)|unnamed – new Type]]
* [[WF:type proposals/(unnamed – new lightweight Wikidata enumeration)|unnamed – new lightweight Wikidata enumeration]]
* [[WF:type proposals/(unnamed – modification of an existing Type)|unnamed – modification of an existing Type]]
[[category:project concept]]
e4dwv1cwmjl544vaxwn47zcrc4fy3p9
263749
263732
2026-04-07T14:11:05Z
Feeglgeef
8776
/* Proposals for new types to be created */
263749
wikitext
text/x-wiki
{{see also|d:Special:ListDatatypes}}
{{shortcut|[[WF:TP]]}}
This page is to discuss and decide on proposals for new [[WF:types|Types]], and for changing existing ones.
Before proposing, you should familiarize yourself with the [[WF:Function model|Function model]].
Types are currently being created by Wikifunctions staff. Over time these rights will be handed over to the community.
== Proposals for new types to be created ==
=== In discussion ===
* [[WF:type proposals/SI units|SI units]]
* [[WF:type proposals/Unit of measurement|Unit of measurement]]
* [[WF:type proposals/Moment in time|Moment in time]]
* [[WF:type proposals/Julian calendar date|Julian calendar date]]
* [[WF:type proposals/Grapheme|Grapheme]]
* [[WF:type proposals/Wikifunctions object reference|Wikifunctions object reference]]
* [[WF:type proposals/Value with error|Value with error]]
* [[WF:type proposals/configuration of functions for given types|configuration of functions for given types]]
* [[WF:type proposals/Geometrical point|Geometrical point]]
* [[WF:type proposals/Currency|Currency]]
=== Representing content ===
* [[WF:type proposal/Syntactic table|Syntactic table]]
* [[WF:type proposals/Syntactic unit|Syntactic unit]]
* [[WF:type proposals/Semantic unit|Semantic unit]]
* [[WF:type proposals/Abstract sentence|Abstract sentence]]
==== Lightweight Wikidata enumerations ====
* [[WF:type proposals/French tenses|French tenses]]
* [[WF:type proposals/French subjects|French subjects]]
* [[WF:type proposals/Timezone|Timezone]]
* [[WF:type proposals/Italian auxiliary verb|Italian auxiliary verb]]
* [[WF:type proposals/Italian simple preposition|Italian simple preposition]]
* [[WF:type proposals/Italian tense|Italian tense]]
* [[WF:type proposals/Unicode General Category|Unicode General Category]]
* [[WF:type proposals/Taxon rank|Taxon rank]]
* [[WF:type proposals/Word order|Word order]]
* [[WF:Type_proposals/IPA_phone_base_glyph|IPA phone]]
* [[WF:Type_proposals/Season|Season]]
* [[WF:Type_proposals/Zodiac sign|Zodiac sign]]
* [[WF:Type_proposals/Simple temporal entity|Simple temporal entity]]
* [[WF:Type_proposals/Japanese verb conjugation class|Japanese verb conjugation class]]
* [[WF:Type_proposals/Topic-comment|Topic-comment]]
=== Being prepared ===
=== Stalled ===
* [[WF:type proposals/Typed string|Typed string]]
* [[WF:type proposals/Wikidata value|Wikidata value]]
* [[WF:type proposals/Wikidata string-based value|Wikidata string-based value]]
* [[WF:type proposals/bytes|bytes]]
* [[WF:type proposals/Percentage|Percentage]]
* [[WF:type proposals/Named parameters list|Named parameters list]]
=== Something to think about ===
* Symbol and expression (as in a [[w:computer algebra system|computer algebra system]]) - currently no idea yet
* [[WF:type proposals/Alphabet|Alphabet]]
* [[WF:type proposals/Context|Context]]
* [[WF:type proposals/Imperial Units|Imperial Units]]
* months in calendars
** [[WF:type proposals/Bengali month|Bengali month]]
** [[WF:type proposals/Darian month|Darian month]]
** [[WF:type proposals/Hebrew month|Hebrew month]]
** [[WF:type proposals/Hindu month|Hindu month]]
** [[WF:type proposals/Nepali month|Nepali month]]
** [[WF:type proposals/Sindhi month|Sindhi month]]
** [[WF:type proposals/Tamil month|Tamil month]]
* [[WF:type proposals/Multilingual gloss|Multilingual gloss]]
* [[WF:type proposals/Position on Earth|Position on Earth]]
* [[WF:type proposals/URL|URL]]
==== Wikidata integration ====
(These are just the types we will need that are not listed somewhere else)
* Wikidata qualifier
* Wikidata Data type
* Wikidata sitelink
* Unknown value
* Entity schema
==== "Heavy" data ====
Heavy data is those that can be more than 1.5MB (where medium data are between 60KB and 1.5MB). This includes most real-world files (jpg, mp3, pdf, zip, exe) and raw forms of data containing in such files (e.g. 1024*768 RGB image has 2359296 bytes in raw form). Wikifunctions currently have limited support for medium data and little support for heavy data (and neither support file uploading for computation). See [[WF:type proposals/bytes#Uses|bytes § Uses]] for more information.
* Image (raster): basically, a 2D or 3D array of number (though we ''do'' need a type to represent both the array and image mode)
* Audio and signal: basically, one number (sampling rate) and one or more (1D) arrays of number, one per channel (though we ''do'' need a type to represent all of them)
* Video: audio plus series of image
=== Unclear necessity / probably unnecessary ===
* Multidimensional array: can be represented as list of lists, but a dedicated edit interface would be nice (and way to enforce an array not to be jagged)
* Typed tuple: can be represented as nested [[Z882]]
* Set: use list instead
* Multiset: use list instead
* Multimap: use list of [[Z882]] instead (see also simple map [[Z883]])
* [[WF:type proposals/Syntactic type|Syntactic type]]
== Types that have already been Implemented ==
{{main|WF:type}}
* [[WF:type proposals/complex128|complex128]]
* [[WF:type proposals/Grammatical voice (a/m/p)|Grammatical voice (a/m/p)]]
* [[WF:type proposals/Grammatical voice (a/mp)|Grammatical voice (a/mp)]]
* [[WF:type proposals/RGBA color|RGBA color]]
* [[WF:type proposals/Grammatical number (singular/paucal/multal)|Grammatical number (singular/paucal/multal)]]
* [[WF:type proposals/Grammatical definiteness|Grammatical definiteness]]
* [[WF:type proposals/Grammatical voice (a/p)|Grammatical voice (a/p)]]
* [[WF:type proposals/Grammatical affirmation and negation|Grammatical affirmation and negation]]
* [[WF:type proposals/Grammatical cases (n/g/d/a)|Grammatical cases (n/g/d/a)]]
* [[WF:type proposals/Grammatical degree of comparison (p/c/s)|Grammatical degree of comparison (p/c/s)]]
* [[WF:type proposals/Chemical element|Chemical element]]
* [[WF:type proposals/Wikidata based types|Wikidata based types]] as {{Z|Z6001}}, {{Z|Z6002}}, {{Z|Z6003}}, {{Z|Z6004}}, {{Z|Z6005}}
** [[WF:type proposals/Wikidata lexeme senses|Wikidata lexeme senses]] as {{Z|Z6006}}
** [[WF:type proposals/Wikidata time|Wikidata time]] as {{Z|Z6064}}
** [[WF:type proposals/Wikidata quantity|Wikidata quantity]] as {{Z|Z6010}}
** [[WF:type proposals/Wikidata geocoordinates|Wikidata geocoordinates]] as {{Z|Z6011}}
* [[WF:type proposals/Grammatical number (singular/dual/plural)|Grammatical number (singular/dual/plural)]] as {{Z|Z28215}}
* [[WF:type proposals/Breton mutation|Breton mutation]] as {{Z|Z27971}}
* [[WF:type proposals/Grammatical person (1/2/3)|Grammatical person (1/2/3)]] as {{Z|Z27970}}
* [[WF:type proposals/Grammatical gender (a/i)|Grammatical gender (a/i)]] as {{Z|Z26935}}
* [[WF:type proposals/Grammatical number (s/p)|Grammatical number (s/p)]] as {{Z|Z26934}}
* [[WF:type proposals/Hijri calendar month|Hijri calendar month]] as {{Z|Z26582}}
* [[WF:type proposals/Grammatical gender (m/f)|Grammatical gender (m/f)]] as {{Z|Z25340}}
* [[WF:type proposals/Grammatical gender (m/f/n)|Grammatical gender (m/f/n)]] as {{Z|Z25501}}
* [[WF:type proposals/Grammatical gender (c/n)|Grammatical gender (c/n)]] as {{Z|Z25502}}
* [[WF:type proposals/Natural number|Natural number]] as {{Z|Z13518}}
* [[WF:type_proposals/Gregorian calendar month|Gregorian calendar month]] as {{Z|Z16098}}
* [[WF:type proposals/Sign|Sign]] as {{Z|Z16659}}
* [[WF:type proposals/Igbo calendar month|Igbo calendar month]] as {{Z|Z16927}}
* [[WF:type proposals/Integer|Integer]] as {{Z|Z16683}}
* [[WF:type proposals/Day of the week|Day of the week]] as {{Z|Z17402}}
* [[WF:type proposals/Gregorian era|Gregorian era]] as {{Z|Z17813}}
* [[WF:type proposals/Rational number|Rational number]] as {{Z|Z19677}}
* [[WF:type proposals/Gregorian year|Gregorian year]] as {{Z|Z20159}}
* [[WF:type proposals/Day of Roman year|Day of Roman year]] as {{Z|Z20342}}
* [[WF:type proposals/Gregorian calendar date|Gregorian calendar date]] as {{Z|Z20420}}
* [[WF:type proposals/float64|float64]] as {{Z|Z20838}}
* [[WF:type proposals/Kleenean|Kleenean]] as {{Z|Z22112}}
* [[WF:type proposals/Byte|Byte]] as {{Z|Z80}}
* [[WF:type proposals/Unicode codepoint|Unicode codepoint]] as {{Z|Z86}}
== Proposals for changing existing types ==
=== Changes to existing types ===
* ...
== Templates ==
* [[WF:type proposals/(unnamed – new Type)|unnamed – new Type]]
* [[WF:type proposals/(unnamed – new lightweight Wikidata enumeration)|unnamed – new lightweight Wikidata enumeration]]
* [[WF:type proposals/(unnamed – modification of an existing Type)|unnamed – modification of an existing Type]]
[[category:project concept]]
gs6x6sm3tszbmukqq9bjsjr37p499f5
263751
263749
2026-04-07T14:11:54Z
Feeglgeef
8776
/* Proposals for new types to be created */
263751
wikitext
text/x-wiki
{{see also|d:Special:ListDatatypes}}
{{shortcut|[[WF:TP]]}}
This page is to discuss and decide on proposals for new [[WF:types|Types]], and for changing existing ones.
Before proposing, you should familiarize yourself with the [[WF:Function model|Function model]].
Types are currently being created by Wikifunctions staff. Over time these rights will be handed over to the community.
== Proposals for new types to be created ==
=== In discussion ===
* [[WF:type proposals/SI units|SI units]]
* [[WF:type proposals/Unit of measurement|Unit of measurement]]
* [[WF:type proposals/Moment in time|Moment in time]]
* [[WF:type proposals/Julian calendar date|Julian calendar date]]
* [[WF:type proposals/Grapheme|Grapheme]]
* [[WF:type proposals/Wikifunctions object reference|Wikifunctions object reference]]
* [[WF:type proposals/Value with error|Value with error]]
* [[WF:type proposals/configuration of functions for given types|configuration of functions for given types]]
* [[WF:type proposals/Geometrical point|Geometrical point]]
* [[WF:type proposals/Currency|Currency]]
==== Representing content ====
* [[WF:type proposal/Syntactic table|Syntactic table]]
* [[WF:type proposals/Syntactic unit|Syntactic unit]]
* [[WF:type proposals/Semantic unit|Semantic unit]]
* [[WF:type proposals/Abstract sentence|Abstract sentence]]
==== Lightweight Wikidata enumerations ====
* [[WF:type proposals/French tenses|French tenses]]
* [[WF:type proposals/French subjects|French subjects]]
* [[WF:type proposals/Timezone|Timezone]]
* [[WF:type proposals/Italian auxiliary verb|Italian auxiliary verb]]
* [[WF:type proposals/Italian simple preposition|Italian simple preposition]]
* [[WF:type proposals/Italian tense|Italian tense]]
* [[WF:type proposals/Unicode General Category|Unicode General Category]]
* [[WF:type proposals/Taxon rank|Taxon rank]]
* [[WF:type proposals/Word order|Word order]]
* [[WF:Type_proposals/IPA_phone_base_glyph|IPA phone]]
* [[WF:Type_proposals/Season|Season]]
* [[WF:Type_proposals/Zodiac sign|Zodiac sign]]
* [[WF:Type_proposals/Simple temporal entity|Simple temporal entity]]
* [[WF:Type_proposals/Japanese verb conjugation class|Japanese verb conjugation class]]
* [[WF:Type_proposals/Topic-comment|Topic-comment]]
=== Being prepared ===
=== Stalled ===
* [[WF:type proposals/Typed string|Typed string]]
* [[WF:type proposals/Wikidata value|Wikidata value]]
* [[WF:type proposals/Wikidata string-based value|Wikidata string-based value]]
* [[WF:type proposals/bytes|bytes]]
* [[WF:type proposals/Percentage|Percentage]]
* [[WF:type proposals/Named parameters list|Named parameters list]]
=== Something to think about ===
* Symbol and expression (as in a [[w:computer algebra system|computer algebra system]]) - currently no idea yet
* [[WF:type proposals/Alphabet|Alphabet]]
* [[WF:type proposals/Context|Context]]
* [[WF:type proposals/Imperial Units|Imperial Units]]
* months in calendars
** [[WF:type proposals/Bengali month|Bengali month]]
** [[WF:type proposals/Darian month|Darian month]]
** [[WF:type proposals/Hebrew month|Hebrew month]]
** [[WF:type proposals/Hindu month|Hindu month]]
** [[WF:type proposals/Nepali month|Nepali month]]
** [[WF:type proposals/Sindhi month|Sindhi month]]
** [[WF:type proposals/Tamil month|Tamil month]]
* [[WF:type proposals/Multilingual gloss|Multilingual gloss]]
* [[WF:type proposals/Position on Earth|Position on Earth]]
* [[WF:type proposals/URL|URL]]
==== Wikidata integration ====
(These are just the types we will need that are not listed somewhere else)
* Wikidata qualifier
* Wikidata Data type
* Wikidata sitelink
* Unknown value
* Entity schema
==== "Heavy" data ====
Heavy data is those that can be more than 1.5MB (where medium data are between 60KB and 1.5MB). This includes most real-world files (jpg, mp3, pdf, zip, exe) and raw forms of data containing in such files (e.g. 1024*768 RGB image has 2359296 bytes in raw form). Wikifunctions currently have limited support for medium data and little support for heavy data (and neither support file uploading for computation). See [[WF:type proposals/bytes#Uses|bytes § Uses]] for more information.
* Image (raster): basically, a 2D or 3D array of number (though we ''do'' need a type to represent both the array and image mode)
* Audio and signal: basically, one number (sampling rate) and one or more (1D) arrays of number, one per channel (though we ''do'' need a type to represent all of them)
* Video: audio plus series of image
=== Unclear necessity / probably unnecessary ===
* Multidimensional array: can be represented as list of lists, but a dedicated edit interface would be nice (and way to enforce an array not to be jagged)
* Typed tuple: can be represented as nested [[Z882]]
* Set: use list instead
* Multiset: use list instead
* Multimap: use list of [[Z882]] instead (see also simple map [[Z883]])
* [[WF:type proposals/Syntactic type|Syntactic type]]
== Types that have already been Implemented ==
{{main|WF:type}}
* [[WF:type proposals/complex128|complex128]]
* [[WF:type proposals/Grammatical voice (a/m/p)|Grammatical voice (a/m/p)]]
* [[WF:type proposals/Grammatical voice (a/mp)|Grammatical voice (a/mp)]]
* [[WF:type proposals/RGBA color|RGBA color]]
* [[WF:type proposals/Grammatical number (singular/paucal/multal)|Grammatical number (singular/paucal/multal)]]
* [[WF:type proposals/Grammatical definiteness|Grammatical definiteness]]
* [[WF:type proposals/Grammatical voice (a/p)|Grammatical voice (a/p)]]
* [[WF:type proposals/Grammatical affirmation and negation|Grammatical affirmation and negation]]
* [[WF:type proposals/Grammatical cases (n/g/d/a)|Grammatical cases (n/g/d/a)]]
* [[WF:type proposals/Grammatical degree of comparison (p/c/s)|Grammatical degree of comparison (p/c/s)]]
* [[WF:type proposals/Chemical element|Chemical element]]
* [[WF:type proposals/Wikidata based types|Wikidata based types]] as {{Z|Z6001}}, {{Z|Z6002}}, {{Z|Z6003}}, {{Z|Z6004}}, {{Z|Z6005}}
** [[WF:type proposals/Wikidata lexeme senses|Wikidata lexeme senses]] as {{Z|Z6006}}
** [[WF:type proposals/Wikidata time|Wikidata time]] as {{Z|Z6064}}
** [[WF:type proposals/Wikidata quantity|Wikidata quantity]] as {{Z|Z6010}}
** [[WF:type proposals/Wikidata geocoordinates|Wikidata geocoordinates]] as {{Z|Z6011}}
* [[WF:type proposals/Grammatical number (singular/dual/plural)|Grammatical number (singular/dual/plural)]] as {{Z|Z28215}}
* [[WF:type proposals/Breton mutation|Breton mutation]] as {{Z|Z27971}}
* [[WF:type proposals/Grammatical person (1/2/3)|Grammatical person (1/2/3)]] as {{Z|Z27970}}
* [[WF:type proposals/Grammatical gender (a/i)|Grammatical gender (a/i)]] as {{Z|Z26935}}
* [[WF:type proposals/Grammatical number (s/p)|Grammatical number (s/p)]] as {{Z|Z26934}}
* [[WF:type proposals/Hijri calendar month|Hijri calendar month]] as {{Z|Z26582}}
* [[WF:type proposals/Grammatical gender (m/f)|Grammatical gender (m/f)]] as {{Z|Z25340}}
* [[WF:type proposals/Grammatical gender (m/f/n)|Grammatical gender (m/f/n)]] as {{Z|Z25501}}
* [[WF:type proposals/Grammatical gender (c/n)|Grammatical gender (c/n)]] as {{Z|Z25502}}
* [[WF:type proposals/Natural number|Natural number]] as {{Z|Z13518}}
* [[WF:type_proposals/Gregorian calendar month|Gregorian calendar month]] as {{Z|Z16098}}
* [[WF:type proposals/Sign|Sign]] as {{Z|Z16659}}
* [[WF:type proposals/Igbo calendar month|Igbo calendar month]] as {{Z|Z16927}}
* [[WF:type proposals/Integer|Integer]] as {{Z|Z16683}}
* [[WF:type proposals/Day of the week|Day of the week]] as {{Z|Z17402}}
* [[WF:type proposals/Gregorian era|Gregorian era]] as {{Z|Z17813}}
* [[WF:type proposals/Rational number|Rational number]] as {{Z|Z19677}}
* [[WF:type proposals/Gregorian year|Gregorian year]] as {{Z|Z20159}}
* [[WF:type proposals/Day of Roman year|Day of Roman year]] as {{Z|Z20342}}
* [[WF:type proposals/Gregorian calendar date|Gregorian calendar date]] as {{Z|Z20420}}
* [[WF:type proposals/float64|float64]] as {{Z|Z20838}}
* [[WF:type proposals/Kleenean|Kleenean]] as {{Z|Z22112}}
* [[WF:type proposals/Byte|Byte]] as {{Z|Z80}}
* [[WF:type proposals/Unicode codepoint|Unicode codepoint]] as {{Z|Z86}}
== Proposals for changing existing types ==
=== Changes to existing types ===
* ...
== Templates ==
* [[WF:type proposals/(unnamed – new Type)|unnamed – new Type]]
* [[WF:type proposals/(unnamed – new lightweight Wikidata enumeration)|unnamed – new lightweight Wikidata enumeration]]
* [[WF:type proposals/(unnamed – modification of an existing Type)|unnamed – modification of an existing Type]]
[[category:project concept]]
ny972pvcnnn5qvffsmlrn1diokiz8uk
263875
263751
2026-04-08T06:12:52Z
Dv103
11127
/* Representing content */
263875
wikitext
text/x-wiki
{{see also|d:Special:ListDatatypes}}
{{shortcut|[[WF:TP]]}}
This page is to discuss and decide on proposals for new [[WF:types|Types]], and for changing existing ones.
Before proposing, you should familiarize yourself with the [[WF:Function model|Function model]].
Types are currently being created by Wikifunctions staff. Over time these rights will be handed over to the community.
== Proposals for new types to be created ==
=== In discussion ===
* [[WF:type proposals/SI units|SI units]]
* [[WF:type proposals/Unit of measurement|Unit of measurement]]
* [[WF:type proposals/Moment in time|Moment in time]]
* [[WF:type proposals/Julian calendar date|Julian calendar date]]
* [[WF:type proposals/Grapheme|Grapheme]]
* [[WF:type proposals/Wikifunctions object reference|Wikifunctions object reference]]
* [[WF:type proposals/Value with error|Value with error]]
* [[WF:type proposals/configuration of functions for given types|configuration of functions for given types]]
* [[WF:type proposals/Geometrical point|Geometrical point]]
* [[WF:type proposals/Currency|Currency]]
==== Representing abstract content ====
* [[WF:type proposal/Syntactic table|Syntactic table]]
* [[WF:type proposals/Syntactic unit|Syntactic unit]]
* [[WF:type proposals/Semantic unit|Semantic unit]]
* [[WF:type proposals/Abstract sentence|Abstract sentence]]
==== Lightweight Wikidata enumerations ====
* [[WF:type proposals/French tenses|French tenses]]
* [[WF:type proposals/French subjects|French subjects]]
* [[WF:type proposals/Timezone|Timezone]]
* [[WF:type proposals/Italian auxiliary verb|Italian auxiliary verb]]
* [[WF:type proposals/Italian simple preposition|Italian simple preposition]]
* [[WF:type proposals/Italian tense|Italian tense]]
* [[WF:type proposals/Unicode General Category|Unicode General Category]]
* [[WF:type proposals/Taxon rank|Taxon rank]]
* [[WF:type proposals/Word order|Word order]]
* [[WF:Type_proposals/IPA_phone_base_glyph|IPA phone]]
* [[WF:Type_proposals/Season|Season]]
* [[WF:Type_proposals/Zodiac sign|Zodiac sign]]
* [[WF:Type_proposals/Simple temporal entity|Simple temporal entity]]
* [[WF:Type_proposals/Japanese verb conjugation class|Japanese verb conjugation class]]
* [[WF:Type_proposals/Topic-comment|Topic-comment]]
=== Being prepared ===
=== Stalled ===
* [[WF:type proposals/Typed string|Typed string]]
* [[WF:type proposals/Wikidata value|Wikidata value]]
* [[WF:type proposals/Wikidata string-based value|Wikidata string-based value]]
* [[WF:type proposals/bytes|bytes]]
* [[WF:type proposals/Percentage|Percentage]]
* [[WF:type proposals/Named parameters list|Named parameters list]]
=== Something to think about ===
* Symbol and expression (as in a [[w:computer algebra system|computer algebra system]]) - currently no idea yet
* [[WF:type proposals/Alphabet|Alphabet]]
* [[WF:type proposals/Context|Context]]
* [[WF:type proposals/Imperial Units|Imperial Units]]
* months in calendars
** [[WF:type proposals/Bengali month|Bengali month]]
** [[WF:type proposals/Darian month|Darian month]]
** [[WF:type proposals/Hebrew month|Hebrew month]]
** [[WF:type proposals/Hindu month|Hindu month]]
** [[WF:type proposals/Nepali month|Nepali month]]
** [[WF:type proposals/Sindhi month|Sindhi month]]
** [[WF:type proposals/Tamil month|Tamil month]]
* [[WF:type proposals/Multilingual gloss|Multilingual gloss]]
* [[WF:type proposals/Position on Earth|Position on Earth]]
* [[WF:type proposals/URL|URL]]
==== Wikidata integration ====
(These are just the types we will need that are not listed somewhere else)
* Wikidata qualifier
* Wikidata Data type
* Wikidata sitelink
* Unknown value
* Entity schema
==== "Heavy" data ====
Heavy data is those that can be more than 1.5MB (where medium data are between 60KB and 1.5MB). This includes most real-world files (jpg, mp3, pdf, zip, exe) and raw forms of data containing in such files (e.g. 1024*768 RGB image has 2359296 bytes in raw form). Wikifunctions currently have limited support for medium data and little support for heavy data (and neither support file uploading for computation). See [[WF:type proposals/bytes#Uses|bytes § Uses]] for more information.
* Image (raster): basically, a 2D or 3D array of number (though we ''do'' need a type to represent both the array and image mode)
* Audio and signal: basically, one number (sampling rate) and one or more (1D) arrays of number, one per channel (though we ''do'' need a type to represent all of them)
* Video: audio plus series of image
=== Unclear necessity / probably unnecessary ===
* Multidimensional array: can be represented as list of lists, but a dedicated edit interface would be nice (and way to enforce an array not to be jagged)
* Typed tuple: can be represented as nested [[Z882]]
* Set: use list instead
* Multiset: use list instead
* Multimap: use list of [[Z882]] instead (see also simple map [[Z883]])
* [[WF:type proposals/Syntactic type|Syntactic type]]
== Types that have already been Implemented ==
{{main|WF:type}}
* [[WF:type proposals/complex128|complex128]]
* [[WF:type proposals/Grammatical voice (a/m/p)|Grammatical voice (a/m/p)]]
* [[WF:type proposals/Grammatical voice (a/mp)|Grammatical voice (a/mp)]]
* [[WF:type proposals/RGBA color|RGBA color]]
* [[WF:type proposals/Grammatical number (singular/paucal/multal)|Grammatical number (singular/paucal/multal)]]
* [[WF:type proposals/Grammatical definiteness|Grammatical definiteness]]
* [[WF:type proposals/Grammatical voice (a/p)|Grammatical voice (a/p)]]
* [[WF:type proposals/Grammatical affirmation and negation|Grammatical affirmation and negation]]
* [[WF:type proposals/Grammatical cases (n/g/d/a)|Grammatical cases (n/g/d/a)]]
* [[WF:type proposals/Grammatical degree of comparison (p/c/s)|Grammatical degree of comparison (p/c/s)]]
* [[WF:type proposals/Chemical element|Chemical element]]
* [[WF:type proposals/Wikidata based types|Wikidata based types]] as {{Z|Z6001}}, {{Z|Z6002}}, {{Z|Z6003}}, {{Z|Z6004}}, {{Z|Z6005}}
** [[WF:type proposals/Wikidata lexeme senses|Wikidata lexeme senses]] as {{Z|Z6006}}
** [[WF:type proposals/Wikidata time|Wikidata time]] as {{Z|Z6064}}
** [[WF:type proposals/Wikidata quantity|Wikidata quantity]] as {{Z|Z6010}}
** [[WF:type proposals/Wikidata geocoordinates|Wikidata geocoordinates]] as {{Z|Z6011}}
* [[WF:type proposals/Grammatical number (singular/dual/plural)|Grammatical number (singular/dual/plural)]] as {{Z|Z28215}}
* [[WF:type proposals/Breton mutation|Breton mutation]] as {{Z|Z27971}}
* [[WF:type proposals/Grammatical person (1/2/3)|Grammatical person (1/2/3)]] as {{Z|Z27970}}
* [[WF:type proposals/Grammatical gender (a/i)|Grammatical gender (a/i)]] as {{Z|Z26935}}
* [[WF:type proposals/Grammatical number (s/p)|Grammatical number (s/p)]] as {{Z|Z26934}}
* [[WF:type proposals/Hijri calendar month|Hijri calendar month]] as {{Z|Z26582}}
* [[WF:type proposals/Grammatical gender (m/f)|Grammatical gender (m/f)]] as {{Z|Z25340}}
* [[WF:type proposals/Grammatical gender (m/f/n)|Grammatical gender (m/f/n)]] as {{Z|Z25501}}
* [[WF:type proposals/Grammatical gender (c/n)|Grammatical gender (c/n)]] as {{Z|Z25502}}
* [[WF:type proposals/Natural number|Natural number]] as {{Z|Z13518}}
* [[WF:type_proposals/Gregorian calendar month|Gregorian calendar month]] as {{Z|Z16098}}
* [[WF:type proposals/Sign|Sign]] as {{Z|Z16659}}
* [[WF:type proposals/Igbo calendar month|Igbo calendar month]] as {{Z|Z16927}}
* [[WF:type proposals/Integer|Integer]] as {{Z|Z16683}}
* [[WF:type proposals/Day of the week|Day of the week]] as {{Z|Z17402}}
* [[WF:type proposals/Gregorian era|Gregorian era]] as {{Z|Z17813}}
* [[WF:type proposals/Rational number|Rational number]] as {{Z|Z19677}}
* [[WF:type proposals/Gregorian year|Gregorian year]] as {{Z|Z20159}}
* [[WF:type proposals/Day of Roman year|Day of Roman year]] as {{Z|Z20342}}
* [[WF:type proposals/Gregorian calendar date|Gregorian calendar date]] as {{Z|Z20420}}
* [[WF:type proposals/float64|float64]] as {{Z|Z20838}}
* [[WF:type proposals/Kleenean|Kleenean]] as {{Z|Z22112}}
* [[WF:type proposals/Byte|Byte]] as {{Z|Z80}}
* [[WF:type proposals/Unicode codepoint|Unicode codepoint]] as {{Z|Z86}}
== Proposals for changing existing types ==
=== Changes to existing types ===
* ...
== Templates ==
* [[WF:type proposals/(unnamed – new Type)|unnamed – new Type]]
* [[WF:type proposals/(unnamed – new lightweight Wikidata enumeration)|unnamed – new lightweight Wikidata enumeration]]
* [[WF:type proposals/(unnamed – modification of an existing Type)|unnamed – modification of an existing Type]]
[[category:project concept]]
o4nxxo8wq2ox4k5jebujenpigzm5vw2
263896
263875
2026-04-08T07:46:27Z
Dv103
11127
/* Lightweight Wikidata enumerations */
263896
wikitext
text/x-wiki
{{see also|d:Special:ListDatatypes}}
{{shortcut|[[WF:TP]]}}
This page is to discuss and decide on proposals for new [[WF:types|Types]], and for changing existing ones.
Before proposing, you should familiarize yourself with the [[WF:Function model|Function model]].
Types are currently being created by Wikifunctions staff. Over time these rights will be handed over to the community.
== Proposals for new types to be created ==
=== In discussion ===
* [[WF:type proposals/SI units|SI units]]
* [[WF:type proposals/Unit of measurement|Unit of measurement]]
* [[WF:type proposals/Moment in time|Moment in time]]
* [[WF:type proposals/Julian calendar date|Julian calendar date]]
* [[WF:type proposals/Grapheme|Grapheme]]
* [[WF:type proposals/Wikifunctions object reference|Wikifunctions object reference]]
* [[WF:type proposals/Value with error|Value with error]]
* [[WF:type proposals/configuration of functions for given types|configuration of functions for given types]]
* [[WF:type proposals/Geometrical point|Geometrical point]]
* [[WF:type proposals/Currency|Currency]]
==== Representing abstract content ====
* [[WF:type proposal/Syntactic table|Syntactic table]]
* [[WF:type proposals/Syntactic unit|Syntactic unit]]
* [[WF:type proposals/Semantic unit|Semantic unit]]
* [[WF:type proposals/Abstract sentence|Abstract sentence]]
==== Lightweight Wikidata enumerations ====
* [[WF:type proposals/French tenses|French tenses]]
* [[WF:type proposals/French subjects|French subjects]]
* [[WF:type proposals/Timezone|Timezone]]
* [[WF:type proposals/Italian auxiliary verb|Italian auxiliary verb]]
* [[WF:type proposals/Italian simple preposition|Italian simple preposition]]
* [[WF:type proposals/Italian tense|Italian tense]]
* [[WF:type proposals/Unicode General Category|Unicode General Category]]
* [[WF:type proposals/Taxon rank|Taxon rank]]
* [[WF:type proposals/Word order|Word order]]
* [[WF:Type_proposals/IPA_phone_base_glyph|IPA phone]]
* [[WF:Type_proposals/Season|Season]]
* [[WF:Type_proposals/Zodiac sign|Zodiac sign]]
* [[WF:Type_proposals/Simple temporal entity|Simple temporal entity]]
* [[WF:Type_proposals/Japanese verb conjugation class|Japanese verb conjugation class]]
* [[WF:Type_proposals/Topic-comment|Topic-comment]]
* [[WF:Type_proposals/Grammatical specificity|Grammatical specificity]]
=== Being prepared ===
=== Stalled ===
* [[WF:type proposals/Typed string|Typed string]]
* [[WF:type proposals/Wikidata value|Wikidata value]]
* [[WF:type proposals/Wikidata string-based value|Wikidata string-based value]]
* [[WF:type proposals/bytes|bytes]]
* [[WF:type proposals/Percentage|Percentage]]
* [[WF:type proposals/Named parameters list|Named parameters list]]
=== Something to think about ===
* Symbol and expression (as in a [[w:computer algebra system|computer algebra system]]) - currently no idea yet
* [[WF:type proposals/Alphabet|Alphabet]]
* [[WF:type proposals/Context|Context]]
* [[WF:type proposals/Imperial Units|Imperial Units]]
* months in calendars
** [[WF:type proposals/Bengali month|Bengali month]]
** [[WF:type proposals/Darian month|Darian month]]
** [[WF:type proposals/Hebrew month|Hebrew month]]
** [[WF:type proposals/Hindu month|Hindu month]]
** [[WF:type proposals/Nepali month|Nepali month]]
** [[WF:type proposals/Sindhi month|Sindhi month]]
** [[WF:type proposals/Tamil month|Tamil month]]
* [[WF:type proposals/Multilingual gloss|Multilingual gloss]]
* [[WF:type proposals/Position on Earth|Position on Earth]]
* [[WF:type proposals/URL|URL]]
==== Wikidata integration ====
(These are just the types we will need that are not listed somewhere else)
* Wikidata qualifier
* Wikidata Data type
* Wikidata sitelink
* Unknown value
* Entity schema
==== "Heavy" data ====
Heavy data is those that can be more than 1.5MB (where medium data are between 60KB and 1.5MB). This includes most real-world files (jpg, mp3, pdf, zip, exe) and raw forms of data containing in such files (e.g. 1024*768 RGB image has 2359296 bytes in raw form). Wikifunctions currently have limited support for medium data and little support for heavy data (and neither support file uploading for computation). See [[WF:type proposals/bytes#Uses|bytes § Uses]] for more information.
* Image (raster): basically, a 2D or 3D array of number (though we ''do'' need a type to represent both the array and image mode)
* Audio and signal: basically, one number (sampling rate) and one or more (1D) arrays of number, one per channel (though we ''do'' need a type to represent all of them)
* Video: audio plus series of image
=== Unclear necessity / probably unnecessary ===
* Multidimensional array: can be represented as list of lists, but a dedicated edit interface would be nice (and way to enforce an array not to be jagged)
* Typed tuple: can be represented as nested [[Z882]]
* Set: use list instead
* Multiset: use list instead
* Multimap: use list of [[Z882]] instead (see also simple map [[Z883]])
* [[WF:type proposals/Syntactic type|Syntactic type]]
== Types that have already been Implemented ==
{{main|WF:type}}
* [[WF:type proposals/complex128|complex128]]
* [[WF:type proposals/Grammatical voice (a/m/p)|Grammatical voice (a/m/p)]]
* [[WF:type proposals/Grammatical voice (a/mp)|Grammatical voice (a/mp)]]
* [[WF:type proposals/RGBA color|RGBA color]]
* [[WF:type proposals/Grammatical number (singular/paucal/multal)|Grammatical number (singular/paucal/multal)]]
* [[WF:type proposals/Grammatical definiteness|Grammatical definiteness]]
* [[WF:type proposals/Grammatical voice (a/p)|Grammatical voice (a/p)]]
* [[WF:type proposals/Grammatical affirmation and negation|Grammatical affirmation and negation]]
* [[WF:type proposals/Grammatical cases (n/g/d/a)|Grammatical cases (n/g/d/a)]]
* [[WF:type proposals/Grammatical degree of comparison (p/c/s)|Grammatical degree of comparison (p/c/s)]]
* [[WF:type proposals/Chemical element|Chemical element]]
* [[WF:type proposals/Wikidata based types|Wikidata based types]] as {{Z|Z6001}}, {{Z|Z6002}}, {{Z|Z6003}}, {{Z|Z6004}}, {{Z|Z6005}}
** [[WF:type proposals/Wikidata lexeme senses|Wikidata lexeme senses]] as {{Z|Z6006}}
** [[WF:type proposals/Wikidata time|Wikidata time]] as {{Z|Z6064}}
** [[WF:type proposals/Wikidata quantity|Wikidata quantity]] as {{Z|Z6010}}
** [[WF:type proposals/Wikidata geocoordinates|Wikidata geocoordinates]] as {{Z|Z6011}}
* [[WF:type proposals/Grammatical number (singular/dual/plural)|Grammatical number (singular/dual/plural)]] as {{Z|Z28215}}
* [[WF:type proposals/Breton mutation|Breton mutation]] as {{Z|Z27971}}
* [[WF:type proposals/Grammatical person (1/2/3)|Grammatical person (1/2/3)]] as {{Z|Z27970}}
* [[WF:type proposals/Grammatical gender (a/i)|Grammatical gender (a/i)]] as {{Z|Z26935}}
* [[WF:type proposals/Grammatical number (s/p)|Grammatical number (s/p)]] as {{Z|Z26934}}
* [[WF:type proposals/Hijri calendar month|Hijri calendar month]] as {{Z|Z26582}}
* [[WF:type proposals/Grammatical gender (m/f)|Grammatical gender (m/f)]] as {{Z|Z25340}}
* [[WF:type proposals/Grammatical gender (m/f/n)|Grammatical gender (m/f/n)]] as {{Z|Z25501}}
* [[WF:type proposals/Grammatical gender (c/n)|Grammatical gender (c/n)]] as {{Z|Z25502}}
* [[WF:type proposals/Natural number|Natural number]] as {{Z|Z13518}}
* [[WF:type_proposals/Gregorian calendar month|Gregorian calendar month]] as {{Z|Z16098}}
* [[WF:type proposals/Sign|Sign]] as {{Z|Z16659}}
* [[WF:type proposals/Igbo calendar month|Igbo calendar month]] as {{Z|Z16927}}
* [[WF:type proposals/Integer|Integer]] as {{Z|Z16683}}
* [[WF:type proposals/Day of the week|Day of the week]] as {{Z|Z17402}}
* [[WF:type proposals/Gregorian era|Gregorian era]] as {{Z|Z17813}}
* [[WF:type proposals/Rational number|Rational number]] as {{Z|Z19677}}
* [[WF:type proposals/Gregorian year|Gregorian year]] as {{Z|Z20159}}
* [[WF:type proposals/Day of Roman year|Day of Roman year]] as {{Z|Z20342}}
* [[WF:type proposals/Gregorian calendar date|Gregorian calendar date]] as {{Z|Z20420}}
* [[WF:type proposals/float64|float64]] as {{Z|Z20838}}
* [[WF:type proposals/Kleenean|Kleenean]] as {{Z|Z22112}}
* [[WF:type proposals/Byte|Byte]] as {{Z|Z80}}
* [[WF:type proposals/Unicode codepoint|Unicode codepoint]] as {{Z|Z86}}
== Proposals for changing existing types ==
=== Changes to existing types ===
* ...
== Templates ==
* [[WF:type proposals/(unnamed – new Type)|unnamed – new Type]]
* [[WF:type proposals/(unnamed – new lightweight Wikidata enumeration)|unnamed – new lightweight Wikidata enumeration]]
* [[WF:type proposals/(unnamed – modification of an existing Type)|unnamed – modification of an existing Type]]
[[category:project concept]]
e91pzh581hyibryezce3gbkcllipczm
Wikifunctions:Type proposals/complex128
4
25558
263710
231491
2026-04-07T13:07:44Z
DVrandecic (WMF)
7
263710
wikitext
text/x-wiki
: {{Done}} as {{Z+|Z33198}} --[[User:DVrandecic (WMF)|DVrandecic (WMF)]] ([[User talk:DVrandecic (WMF)|talk]]) 13:07, 7 April 2026 (UTC)
== Summary ==
A complex128 is simply a pair of float64.
== Uses ==
== Structure ==
Either stored as a pair of float64, or as a string. If the latter, we also need to consider whether to use i or j to represent the imaginary unit.
=== Example values ===
Value 0
{|class="wikitable" style="margin:.6em 1.6em"
|-
| <syntaxhighlight lang="json" line="line">{
"type": "complex128",
"real part": {
"type": "float64",
"value": "0.0"
},
"imaginary part": {
"type": "float64",
"value": "0.0"
}
}</syntaxhighlight>
| <syntaxhighlight lang="json">{
"Z1K1": "Zxx",
"ZxxK1": {
"Z1K1": "Zyy",
"ZyyK1": "0.0"
},
"ZxxK2": {
"Z1K1": "Zyy",
"ZyyK1": "0.0"
}
}</syntaxhighlight>
|}
== Persistent objects ==
At least we should have an object for i.
== Validator ==
The validator ensures that:
* real part and imaginary part are valid float64
== Identity ==
Similar to [[Wikifunctions:Type proposals/float64]]
== Converting to code ==
=== Python ===
For example: (3+5j).imag=5.0
=== JavaScript ===
JavaScript does not natively support complex number, so we have to represent it as an object.
== Renderer ==
We can display it as a+bj format.
== Parsers ==
First extract a and b (we may also have a-bj or only bj), then parse a and b as float64.
== Alternatives ==
*We can have a general type for complex number whose real and imaginary part are specific number type. This can be used to express e.g. Gaussian integer.
*Another common representation of a general complex number is with a modulus (distance from 0 on the imaginary plane) and an argument (angle from 0 to 2pi, going anticlockwise from the real axis). This would suit some applications better.
== Comments ==
*{{s}} Useful, <s>but let's revisit this once we have float64 working well.</s> --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 02:38, 19 June 2024 (UTC)
*:Updating this to say that while float64 is generally working, it still has two changes that should be made before other types like this one rely on it: dealing with subnormals, and matching the IEEE values for the ignored keys of special values. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 03:35, 17 June 2025 (UTC)
*::The reason I still strongly favour the float64 version first is because almost anything calculated with complex number involves irrationals. Switching to polar form uses an exponential. Even finding the complex roots of a rational polynomial requires radicals (e.g. square roots in the quadratic equation). So rational pairs are not suitable for this. I could possibly be convinced to go with an ordered pair of any numeric type, but that sounds very challenging to write functions for. But I also restate my issue above, we should fully fix float before using it in complex types. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 00:06, 26 September 2025 (UTC)
*:::Now float64 all works, this has my full support. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 11:45, 27 October 2025 (UTC)
*<s>{{o}}, see my comment on the float type proposal. Basically, I'd like to find a way to represent these all-in-one. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 00:51, 1 December 2024 (UTC)</s>. I've long been partial to the rational type, I would prefer having a complex rational type first, as more numbers can be represented this way. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 02:35, 1 March 2025 (UTC)
* I think it's a good time to restart this conversation, since floats now here. My question is: do we prefer to have float-based complex numbers or rational-based complex numbers, or both? --[[User:Denny|Denny]] ([[User talk:Denny|talk]]) 14:34, 7 February 2025 (UTC)
* {{S}} complex numbers --[[User:Ameisenigel|Ameisenigel]] ([[User talk:Ameisenigel|talk]]) 20:08, 7 February 2025 (UTC)
*:Thanks, agreed, but with two {{Z|Z20838}} or two {{Z|Z19677}}? --[[User:Denny|Denny]] ([[User talk:Denny|talk]]) 07:31, 8 February 2025 (UTC)
*::Not sure about this, both have pros and cons. --[[User:Ameisenigel|Ameisenigel]] ([[User talk:Ameisenigel|talk]]) 18:56, 8 February 2025 (UTC)
*{{s}} This should be useful. I think float64 is a decent type for this, using rational numbers seems like it would be situational. Also, not sure about displaying i as j. I know Python does it that way and it's some engineering notation but practically everything everywhere uses i. Looking around, people seeing i displayed as j in Python seems to elicit confused reactions ("why is the suffix j instead of i?") because everyone familiar with imaginary numbers knows that it's not ''usually'' represented that way. I'm aware that Python is one of the languages this would be implemented in, but I'd much prefer if we went with the most consistent and highly-used notation rather than one that aligns with the syntax of one language. On the subject of having a type-independent implementation that has number types specified manually; this ''could'' be useful, but I think the tedium of specifying the type for each operation outweighs any drawbacks of just assuming the best type (float64, IMHO) and sticking to that consistently. — [[User:Theki|rae]] <[[User talk:Theki|talk]]> 17:13, 28 February 2025 (UTC)
*:I definitely agree it should be a+bi, the Wikipedias definitely have a very strong consensus that i is correct here. I disagree that float is better because float64 is very arbitrary and IIRC the consensus at the time was that float64 should only be used if a) the function needs to use irrational numbers, b) it was a technical function related to float64. Additionally, the long-held consensus has been that we don't bend to arbitrary limits, we've ignored the Javascript maximum safe integer, ignored the python date limit, and always gone with the solution that gives greater support. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 02:39, 1 March 2025 (UTC)
*::To be frank, I am just not very used to the concept of representing numbers in computers fractionally at all, and I apologize for being ignorant and choosing the "safe" option that I'm more familiar with. I'm aware you probably could represent any decimal without loss of precision with rational numbers up to a certain point by just writing out the decimal as the numerator and having the denominator be some multiple of ten, but the concept still feels unusual to me from a UX standpoint; although, if I had to decide on the question of which number type to use a month before now when you had to manually specify every parameter of floats yourself, I definitely would have argued for rational numbers. I am assuming that the operations done on these rational numbers are just basic maths to the point where they don't need to be converted to anything as an intermediary value and can have operations done on them atomically just as with any other type of number. My only concern is any extra overhead spent on the software/display strings simplifying the fractions and converting to them from decimal. I think most users, seeing a complex datatype, will want to use decimal input which ''is'' fortunately allowed in rational number inputs. However, I suspect those same people will likewise expect a decimal ''output'', unless either half is an irrational number, like one-third and &c; although, judging from what you said, I don't know if rational numbers can even handle that sort of thing? Of course, as you said, we don't have to bend to arbitrary limits, and I would want to use a decimal number type that can represent precise numbers without loss of precision, but the n/d system of rational numbers is not something I'm familiar with, having always opted solely for double-precision and fixed-point numbers/arithmetic whenever I would need to represent fractional values in my code. This is just speaking from personal experience, though, and I'm not opposed to opting for this even if it's different in certain ways. — [[User:Theki|rae<sup>5e</sup>]] <[[User talk:Theki|talk]]>
*{{s}} but point out that a complex number can have a polar form: the absolute value and the angle. Should we include it in this type somehow, or create a separate type? --[[User:Tohaomg|Tohaomg]] ([[User talk:Tohaomg|talk]]) 08:38, 3 May 2025 (UTC)
*:If it's just another representation it would be better served as a function that converts. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 22:54, 3 May 2025 (UTC)
* {{support}} per [[User:99of9|99of9]]. ℚ×ℚ is not useful; f64×f64 approximates ℂ. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 19:11, 27 November 2025 (UTC)
fpst53zv8ihtyhipidi4dum4aqhflw7
Z15708
0
29011
263916
231685
2026-04-08T10:41:56Z
WikiLambda system
3
Updated the implementation list (see [[Help:Wikifunctions/Implementation_ordering_and_choosing|About implementation selection]])
263916
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z15708"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z6",
"Z17K2": "Z15708K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "character"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1014",
"Z11K2": "agwa"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1430",
"Z11K2": "Zeichen"
}
]
}
}
],
"Z8K2": "Z40",
"Z8K3": [
"Z20",
"Z15710",
"Z15711",
"Z15712",
"Z15713",
"Z15714"
],
"Z8K4": [
"Z14",
"Z15715",
"Z15709"
],
"Z8K5": "Z15708"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "is hangul"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1014",
"Z11K2": "bụ hangul"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1430",
"Z11K2": "ist Hangul"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "check if the given character is hangul"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1014",
"Z11K2": "lelee ma agwa nyere bụ hangul"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1430",
"Z11K2": "prüft, ob das angegebene Zeichen in Hangul ist"
}
]
}
}
cub64rwbgyml7yu9c3lv9h9133jxqpv
Wikifunctions:Type/de
4
35272
263812
263526
2026-04-07T21:21:40Z
Ameisenigel
44
Created page with "leichtgewichtige Aufzählung"
263812
wikitext
text/x-wiki
<languages/>{{Technical documentation navbox}}
Jedes Objekt in Wikifunctions gehört zu einem Typ. Typen bestimmen, wie Objekte dieses Typs strukturiert sind und was sie bedeuten. Typen werden auch verwendet, um die Argumente einer Funktion anzugeben und was eine Funktion zurückgibt.
Derzeit stehen {{NUMBEROFTYPES}} Typen zum Angeben der Argumente und des Rückgabetyps einer Funktion zur Verfügung:
* {{Z+|Z1}}
* {{Z+|Z4}}
* {{Z+|Z8}}
* {{Z+|Z23}}
* {{Z+|Z21}}
* {{Z+|Z40}}
* {{Z+|Z22112}}
* {{Z+|Z881}} (dies ist parametrisiert, d.h. es handelt sich um eine Funktion, die einen Typ zurückgibt)
* {{Z+|Z882}} (parametrisiert)
* {{Z+|Z883}} (parametrisiert)
* {{Z+|Z6884}} (parametrisiert, verwendet zur Definition von [[Special:MyLanguage/WF:Function_model#Lightweight_enumerations|leichtgewichtigen Aufzählungstypen]])
<span id="Numeric_types"></span>
=== Numerische Typen ===
* {{Z+|Z80}}
* {{Z+|Z13518}}
* {{Z+|Z16659}}
* {{Z+|Z16683}}
* {{Z+|Z19677}}
* {{Z+|Z20825}}
* {{Z+|Z20838}}
<span id="Language_and_text_types"></span>
=== Sprach- und Texttypen ===
* {{Z+|Z86}}
* {{Z+|Z6}}
* {{Z+|Z60}}
* {{Z+|Z11}}
* {{Z+|Z31}}
* {{Z+|Z12}}
* {{Z+|Z32}}
* {{Z+|Z89}}
* {{Z+|Z14293}}
* {{Z+|Z14294}}
<span id="Grammatical_feature_enums"></span>
==== Aufzählungen grammatikalischer Funktionen ====
* {{Z+|Z28516}} (leichtgewichtige Aufzählung)
* {{Z+|Z28519}} (leichtgewichtige Aufzählung)
* {{Z+|Z25502}} (leichtgewichtige Aufzählung)
* {{Z+|Z25340}} (leichtgewichtige Aufzählung)
* {{Z+|Z25501}} (leichtgewichtige Aufzählung)
* {{Z+|Z26935}} (leichtgewichtige Aufzählung)
* {{Z+|Z26934}} (leichtgewichtige Aufzählung)
* {{Z+|Z28215}} (leichtgewichtige Aufzählung)
* {{Z+|Z28515}} (leichtgewichtige Aufzählung)
* {{Z+|Z28517}} (leichtgewichtige Aufzählung)
* {{Z+|Z32792}} (leichtgewichtige Aufzählung)
* {{Z+|Z32789}} (<span lang="en" dir="ltr" class="mw-content-ltr">lightweight enum</span>)
* {{Z+|Z27970}} (leichtgewichtige Aufzählung)
* {{Z+|Z28518}} (leichtgewichtige Aufzählung)
* {{Z+|Z28520}} (leichtgewichtige Aufzählung)
* {{Z+|Z27971}} (leichtgewichtige Aufzählung)
<span id="Calendar_types"></span>
=== Kalendertypen ===
<span id="Gregorian_calendar"></span>
==== Gregorianischer Kalender ====
* {{Z+|Z17402}}
* {{Z+|Z16098}}
* {{Z+|Z17813}}
* {{Z+|Z20159}}
* {{Z+|Z20342}}
* {{Z+|Z20420}}
<span id="Hijri_(Islamic)_calendar"></span>
==== Islamischer Kalender ====
* {{Z+|Z26582}} (leichtgewichtige Aufzählung)
<span id="Igbo_calendar"></span>
==== Igbo-Kalender ====
* {{Z+|Z16927}}
<span id="Wikidata_types"></span>
=== Wikidata-Typen ===
{{see also|Help:Wikidata#Statement model}}
* {{Z+|Z6030}}
<span id="Wikidata_entities"></span>
==== Wikidata-Entitäten ====
* {{Z+|Z6001}}
* {{Z+|Z6002}}
* {{Z+|Z6004}}
* {{Z+|Z6005}}
* {{Z+|Z6006}}
<span id="Wikidata_references"></span>
==== Wikidata-Referenzen ====
* {{Z+|Z6091}}
* {{Z+|Z6092}}
* {{Z+|Z6094}}
* {{Z+|Z6095}}
* {{Z+|Z6096}}
<span id="Wikidata_statements"></span>
==== Wikidata-Aussagen ====
* {{Z+|Z6020}}
* {{Z+|Z6007}}
* {{Z+|Z6003}}
* {{Z+|Z6040}}
* {{Z+|Z6008}}
<span id="Wikidata_datatypes"></span>
==== Wikidata-Datentypen ====
* {{Z+|Z6010}}
* {{Z+|Z6011}}
* {{Z+|Z6060}}
* {{Z+|Z6061}}
* {{Z+|Z6062}} (leichtgewichtige Aufzählung)
* {{Z+|Z6063}} (leichtgewichtige Aufzählung)
* {{Z+|Z6064}}
<span id="Miscellaneous"></span>
=== Verschiedenes ===
* {{Z+|Z27951}} (leichtgewichtige Aufzählung)
* {{Z+|Z28579}}
<span id="WikiLambda_structure"></span>
=== WikiLambda-Struktur ===
* {{Z+|Z2}}
* {{Z+|Z9}}
* {{Z+|Z3}}
* {{Z+|Z39}}
* {{Z+|Z46}}
* {{Z+|Z64}}
* {{Z+|Z17}}
* {{Z+|Z18}}
* {{Z+|Z20}}
* {{Z+|Z14}}
* {{Z+|Z16}}
* {{Z+|Z61}}
<span id="Evaluation"></span>
==== Auswertung ====
* {{Z+|Z7}}
* {{Z+|Z22}}
* {{Z+|Z5}}
* {{Z+|Z50}}
* {{Z+|Z99}}
Andere Typen können verwendet werden, es können jedoch Fehler auftreten. Für eine Liste aller Typen siehe [[Special:ListObjectsByType/Z4|Liste aller Typen]] (wobei dies weder [[Special:ListObjectsByType/Z7|persistente Aufrufe]] einschließt, die Typen wie die leichtgewichtigen Aufzählungen zurückgeben, noch parametrisierte Typen wie {{Z|881}}).
Neue Typen können auf [[Wikifunctions:Type proposals]] vorgeschlagen werden.
<span id="See_also"></span>
== Siehe auch ==
* {{ll|Wikifunctions:Function model}}
[[Category:Technical documentation{{#translation:}}|Type]]
edjzs27fbutqy3j0oj71lbygkjdt0j0
263814
263812
2026-04-07T21:21:46Z
Ameisenigel
44
Created page with "leichtgewichtige Aufzählung"
263814
wikitext
text/x-wiki
<languages/>{{Technical documentation navbox}}
Jedes Objekt in Wikifunctions gehört zu einem Typ. Typen bestimmen, wie Objekte dieses Typs strukturiert sind und was sie bedeuten. Typen werden auch verwendet, um die Argumente einer Funktion anzugeben und was eine Funktion zurückgibt.
Derzeit stehen {{NUMBEROFTYPES}} Typen zum Angeben der Argumente und des Rückgabetyps einer Funktion zur Verfügung:
* {{Z+|Z1}}
* {{Z+|Z4}}
* {{Z+|Z8}}
* {{Z+|Z23}}
* {{Z+|Z21}}
* {{Z+|Z40}}
* {{Z+|Z22112}}
* {{Z+|Z881}} (dies ist parametrisiert, d.h. es handelt sich um eine Funktion, die einen Typ zurückgibt)
* {{Z+|Z882}} (parametrisiert)
* {{Z+|Z883}} (parametrisiert)
* {{Z+|Z6884}} (parametrisiert, verwendet zur Definition von [[Special:MyLanguage/WF:Function_model#Lightweight_enumerations|leichtgewichtigen Aufzählungstypen]])
<span id="Numeric_types"></span>
=== Numerische Typen ===
* {{Z+|Z80}}
* {{Z+|Z13518}}
* {{Z+|Z16659}}
* {{Z+|Z16683}}
* {{Z+|Z19677}}
* {{Z+|Z20825}}
* {{Z+|Z20838}}
<span id="Language_and_text_types"></span>
=== Sprach- und Texttypen ===
* {{Z+|Z86}}
* {{Z+|Z6}}
* {{Z+|Z60}}
* {{Z+|Z11}}
* {{Z+|Z31}}
* {{Z+|Z12}}
* {{Z+|Z32}}
* {{Z+|Z89}}
* {{Z+|Z14293}}
* {{Z+|Z14294}}
<span id="Grammatical_feature_enums"></span>
==== Aufzählungen grammatikalischer Funktionen ====
* {{Z+|Z28516}} (leichtgewichtige Aufzählung)
* {{Z+|Z28519}} (leichtgewichtige Aufzählung)
* {{Z+|Z25502}} (leichtgewichtige Aufzählung)
* {{Z+|Z25340}} (leichtgewichtige Aufzählung)
* {{Z+|Z25501}} (leichtgewichtige Aufzählung)
* {{Z+|Z26935}} (leichtgewichtige Aufzählung)
* {{Z+|Z26934}} (leichtgewichtige Aufzählung)
* {{Z+|Z28215}} (leichtgewichtige Aufzählung)
* {{Z+|Z28515}} (leichtgewichtige Aufzählung)
* {{Z+|Z28517}} (leichtgewichtige Aufzählung)
* {{Z+|Z32792}} (leichtgewichtige Aufzählung)
* {{Z+|Z32789}} (leichtgewichtige Aufzählung)
* {{Z+|Z27970}} (leichtgewichtige Aufzählung)
* {{Z+|Z28518}} (leichtgewichtige Aufzählung)
* {{Z+|Z28520}} (leichtgewichtige Aufzählung)
* {{Z+|Z27971}} (leichtgewichtige Aufzählung)
<span id="Calendar_types"></span>
=== Kalendertypen ===
<span id="Gregorian_calendar"></span>
==== Gregorianischer Kalender ====
* {{Z+|Z17402}}
* {{Z+|Z16098}}
* {{Z+|Z17813}}
* {{Z+|Z20159}}
* {{Z+|Z20342}}
* {{Z+|Z20420}}
<span id="Hijri_(Islamic)_calendar"></span>
==== Islamischer Kalender ====
* {{Z+|Z26582}} (leichtgewichtige Aufzählung)
<span id="Igbo_calendar"></span>
==== Igbo-Kalender ====
* {{Z+|Z16927}}
<span id="Wikidata_types"></span>
=== Wikidata-Typen ===
{{see also|Help:Wikidata#Statement model}}
* {{Z+|Z6030}}
<span id="Wikidata_entities"></span>
==== Wikidata-Entitäten ====
* {{Z+|Z6001}}
* {{Z+|Z6002}}
* {{Z+|Z6004}}
* {{Z+|Z6005}}
* {{Z+|Z6006}}
<span id="Wikidata_references"></span>
==== Wikidata-Referenzen ====
* {{Z+|Z6091}}
* {{Z+|Z6092}}
* {{Z+|Z6094}}
* {{Z+|Z6095}}
* {{Z+|Z6096}}
<span id="Wikidata_statements"></span>
==== Wikidata-Aussagen ====
* {{Z+|Z6020}}
* {{Z+|Z6007}}
* {{Z+|Z6003}}
* {{Z+|Z6040}}
* {{Z+|Z6008}}
<span id="Wikidata_datatypes"></span>
==== Wikidata-Datentypen ====
* {{Z+|Z6010}}
* {{Z+|Z6011}}
* {{Z+|Z6060}}
* {{Z+|Z6061}}
* {{Z+|Z6062}} (leichtgewichtige Aufzählung)
* {{Z+|Z6063}} (leichtgewichtige Aufzählung)
* {{Z+|Z6064}}
<span id="Miscellaneous"></span>
=== Verschiedenes ===
* {{Z+|Z27951}} (leichtgewichtige Aufzählung)
* {{Z+|Z28579}}
<span id="WikiLambda_structure"></span>
=== WikiLambda-Struktur ===
* {{Z+|Z2}}
* {{Z+|Z9}}
* {{Z+|Z3}}
* {{Z+|Z39}}
* {{Z+|Z46}}
* {{Z+|Z64}}
* {{Z+|Z17}}
* {{Z+|Z18}}
* {{Z+|Z20}}
* {{Z+|Z14}}
* {{Z+|Z16}}
* {{Z+|Z61}}
<span id="Evaluation"></span>
==== Auswertung ====
* {{Z+|Z7}}
* {{Z+|Z22}}
* {{Z+|Z5}}
* {{Z+|Z50}}
* {{Z+|Z99}}
Andere Typen können verwendet werden, es können jedoch Fehler auftreten. Für eine Liste aller Typen siehe [[Special:ListObjectsByType/Z4|Liste aller Typen]] (wobei dies weder [[Special:ListObjectsByType/Z7|persistente Aufrufe]] einschließt, die Typen wie die leichtgewichtigen Aufzählungen zurückgeben, noch parametrisierte Typen wie {{Z|881}}).
Neue Typen können auf [[Wikifunctions:Type proposals]] vorgeschlagen werden.
<span id="See_also"></span>
== Siehe auch ==
* {{ll|Wikifunctions:Function model}}
[[Category:Technical documentation{{#translation:}}|Type]]
6tw5imen8pp016b6i0tya58yh9otkz1
Z18522
0
35694
263815
120388
2026-04-07T21:26:09Z
Ameisenigel
44
de
263815
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z18522"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z6",
"Z17K2": "Z18522K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "text"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1592",
"Z11K2": "text"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1430",
"Z11K2": "Text"
}
]
}
}
],
"Z8K2": {
"Z1K1": "Z7",
"Z7K1": "Z881",
"Z881K1": "Z6"
},
"Z8K3": [
"Z20"
],
"Z8K4": [
"Z14"
],
"Z8K5": "Z18522"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "segment sentences"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1592",
"Z11K2": "segmentera meningar"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1430",
"Z11K2": "Sätze trennen"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Split a text into sentences."
},
{
"Z1K1": "Z11",
"Z11K1": "Z1592",
"Z11K2": "Dela upp en text i meningar."
},
{
"Z1K1": "Z11",
"Z11K1": "Z1430",
"Z11K2": "teilt einen Text in Sätze auf"
}
]
}
}
4h20gnb5trimky0sx5coyp6se2zgiwx
Z18523
0
35695
263816
237263
2026-04-07T21:26:57Z
Ameisenigel
44
de
263816
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z18523"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z15567",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z15567",
"Z15567K1": {
"Z1K1": "Z13518",
"Z13518K1": "1"
}
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z866",
"Z866K2": "satu"
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "1 = \"satu\" "
},
{
"Z1K1": "Z11",
"Z11K1": "Z1004",
"Z11K2": "1 = \"satu\""
},
{
"Z1K1": "Z11",
"Z11K1": "Z1078",
"Z11K2": "1 = \"satu\""
},
{
"Z1K1": "Z11",
"Z11K1": "Z1430",
"Z11K2": "1 ist satu"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1078",
"Z11K2": "1 = \"satu\""
}
]
}
}
m1tbf8zd6me3uw1b8nyt4ywvt4pg11n
Z18524
0
35696
263817
120474
2026-04-07T21:27:47Z
Ameisenigel
44
de
263817
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z18524"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z6",
"Z17K2": "Z18524K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "String "
},
{
"Z1K1": "Z11",
"Z11K1": "Z1818",
"Z11K2": "String"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1430",
"Z11K2": "Zeichenkette"
}
]
}
}
],
"Z8K2": "Z6",
"Z8K3": [
"Z20"
],
"Z8K4": [
"Z14"
],
"Z8K5": "Z18524"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Yoruba plural "
},
{
"Z1K1": "Z11",
"Z11K1": "Z1818",
"Z11K2": "Yoruba plural"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1430",
"Z11K2": "Yoruba-Plural"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Convert English plural to Yoruba plural"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1818",
"Z11K2": "Convert English plural to Yoruba plural"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1430",
"Z11K2": "wandelt einen englischen Plural in den Plural in Yoruba um"
}
]
}
}
7hl25k9f0jtfm2nwzdxkp4ko1e5r82y
Z18525
0
35697
263818
120441
2026-04-07T21:29:04Z
Ameisenigel
44
de
263818
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z18525"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z18522",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z18522",
"Z18522K1": "Apan läser en bok. Pingvninen åker skridskor."
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z889",
"Z889K2": [
"Z6",
"Apan läser en bok.",
"Pingvninen åker skridskor."
],
"Z889K3": "Z866"
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1592",
"Z11K2": "Två meningar"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1430",
"Z11K2": "Apan läser en bok. Pingvninen åker skridskor."
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
dohwse6muk08sn3x19ii366tipxgxn4
Z18526
0
35698
263819
147892
2026-04-07T21:29:27Z
Ameisenigel
44
de
263819
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z18526"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z15567",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z15567",
"Z15567K1": {
"Z1K1": "Z13518",
"Z13518K1": "20"
}
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z866",
"Z866K2": "dua puluh"
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "20 = \"dua puluh\""
},
{
"Z1K1": "Z11",
"Z11K1": "Z1004",
"Z11K2": "20 = \"dua puluh\""
},
{
"Z1K1": "Z11",
"Z11K1": "Z1430",
"Z11K2": "20 ist dua puluh"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
rgbxsn0yh75pbdqd4ijhj312xzqzi9s
Z18527
0
35699
263820
120380
2026-04-07T21:30:01Z
Ameisenigel
44
de
263820
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z18527"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z18515",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z18515",
"Z18515K1": "ΗΗΗΗ"
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z13522",
"Z13522K2": {
"Z1K1": "Z13518",
"Z13518K1": "400"
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "\"ΗΗΗΗ\" = 400"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1430",
"Z11K2": "ΗΗΗΗ → 400"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
puzw0aoph8h04mb12hbrygj6hudfopa
Z18528
0
35700
263821
120438
2026-04-07T21:30:18Z
Ameisenigel
44
de
263821
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z18528"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z18522",
"Z14K3": {
"Z1K1": "Z16",
"Z16K1": "Z610",
"Z16K2": "def Z18522(Z18522K1):\n\treturn [s.strip() for s in Z18522K1.split(\".\") if s]"
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1592",
"Z11K2": "Segmentera svensk text"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1430",
"Z11K2": "Sätze trennen in Python"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
q2k05km6by81eh4tjrzyvepnam921ac
Z18530
0
35702
263822
120529
2026-04-07T21:30:57Z
Ameisenigel
44
de
263822
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z18530"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z18529",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z18529",
"Z18529K1": {
"Z1K1": "Z13518",
"Z13518K1": "1"
}
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z866",
"Z866K2": "១"
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "1 = \"១\""
},
{
"Z1K1": "Z11",
"Z11K1": "Z1430",
"Z11K2": "1 → ១"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
cgm03gwpt6ecpwjdq2lbrm6r5ykpz55
Z18867
0
38027
263831
124693
2026-04-08T02:04:52Z
Hakimi97
198
263831
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z18867"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z6",
"Z17K2": "Z18867K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Malay numeral (cardinal)"
}
]
}
}
],
"Z8K2": "Z13518",
"Z8K3": [
"Z20"
],
"Z8K4": [
"Z14"
],
"Z8K5": "Z18867"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Malay natural number transcription"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31",
{
"Z1K1": "Z31",
"Z31K1": "Z1002",
"Z31K2": [
"Z6",
"Malay cardinal to Natural number"
]
}
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Generates transcription of natural numbers in Malay, up to hundreds of undecillion."
}
]
}
}
2izkd8d193z4w1jr44iyc0785xce7te
Wikifunctions:Catalogue/Natural language operations/Bangla
4
41927
263783
263211
2026-04-07T15:20:15Z
Asked42
932
/* Sentence generating */
263783
wikitext
text/x-wiki
== General ==
* {{Z+|Z10587}}
* {{Z+|Z12678}}
* {{Z+|Z12892}}
* {{Z+|Z13151}}
* {{Z+|Z14260}}
* {{Z+|Z16150}}
* {{Z+|Z16904}}
* {{Z+|Z17526}}
* {{Z+|Z17530}}
* {{Z+|Z17563}}
* {{Z+|Z17564}}
* {{Z+|Z17599}}
* {{Z+|Z21572}}
==Grammatical & Morphological==
* {{Z+|Z10591}}
* {{Z+|Z11077}}
* {{Z+|Z12919}}
* {{Z+|Z13156}}
* {{Z+|Z13195}}
* {{Z+|Z13238}}
* {{Z+|Z13270}}
* {{Z+|Z18831}}
* {{Z+|Z18837}}
* {{Z+|Z18881}}
== Sentence generating ==
* {{Z+|Z26572}}
* {{Z+|Z26707}}
* {{Z+|Z28049}}
* {{Z+|Z33079}}
* {{Z+|Z27502}}
* {{Z+|Z32973}}
[[Category:Lists of functions]]
7vo6tm6odx4i2i6oeempdzk1wq2gso4
263784
263783
2026-04-07T15:24:30Z
Asked42
932
/* Sentence generating */
263784
wikitext
text/x-wiki
== General ==
* {{Z+|Z10587}}
* {{Z+|Z12678}}
* {{Z+|Z12892}}
* {{Z+|Z13151}}
* {{Z+|Z14260}}
* {{Z+|Z16150}}
* {{Z+|Z16904}}
* {{Z+|Z17526}}
* {{Z+|Z17530}}
* {{Z+|Z17563}}
* {{Z+|Z17564}}
* {{Z+|Z17599}}
* {{Z+|Z21572}}
==Grammatical & Morphological==
* {{Z+|Z10591}}
* {{Z+|Z11077}}
* {{Z+|Z12919}}
* {{Z+|Z13156}}
* {{Z+|Z13195}}
* {{Z+|Z13238}}
* {{Z+|Z13270}}
* {{Z+|Z18831}}
* {{Z+|Z18837}}
* {{Z+|Z18881}}
== Sentence generating ==
=== Helper functions to create sentence fragments ===
* {{Z+|Z33238}}
* {{Z+|Z33172}}
=== Available sentence generation functions ===
* {{Z+|Z26572}}
* {{Z+|Z26707}}
* {{Z+|Z28049}}
* {{Z+|Z33079}}
* {{Z+|Z27502}}
* {{Z+|Z32973}}
[[Category:Lists of functions]]
nfs5joddhn0nbv7e1tgeorzuoh0btj6
Wikifunctions:Catalogue/Number operations
4
41957
263707
258697
2026-04-07T13:03:39Z
DVrandecic (WMF)
7
263707
wikitext
text/x-wiki
== 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===
* {{Z+|Z13522}}
** {{Z+|Z15849}}
* {{Z+|Z13676}}
* {{Z+|Z13682}}
* {{Z+|Z13689}}
* {{Z+|Z13695}}
* {{Z+|Z16731}}
* {{Z+|Z13701}}
* {{Z+|Z13740}}
* {{Z+|Z20266}}
* {{Z+|Z13555}}
* {{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 ====
===== 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 ==
* {{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}}
===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}}
===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==
=== Comparison ===
* {{Z+|Z19686}}
* {{Z+|Z24506}}
* {{Z+|Z19751}}
* {{Z+|Z19752}}
* {{Z+|Z19753}}
* {{Z+|Z19754}}
* {{Z+|Z24403}}
* {{Z+|Z19806}}
===Properties===
* {{Z+|Z20065}}
* {{Z+|Z21702}}
* {{Z+|Z19922}}
* {{Z+|Z21714}}
* {{Z+|Z21721}}
* {{Z+|Z19583}}
* {{Z+|Z25642}}
** {{Z+|Z25647}}
=== Transformation and conversion ===
* {{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}}
=== 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+|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==
===Conversions===
*{{Z+|Z21136}}
*{{Z+|Z21139}}
*{{Z+|Z21142}}
*{{Z+|Z21145}}
*{{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}}
===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+|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}}
=== Constructor and deconstructors ===
* {{Z+|Z33227}}
* {{Z+|Z33214}}
* {{Z+|Z33221}}
=== Comparison ===
* {{Z+|Z33202}}
=== Arithmetics ===
* {{Z+|Z33201}}
== 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]]
5lga9hs2v2ty5jhdqwelxkpfr6rm3vs
Wikifunctions:Type proposals/Moment in time
4
42314
263745
215096
2026-04-07T14:02:04Z
Feeglgeef
8776
/* Comments */ Reply
263745
wikitext
text/x-wiki
== Use/Why ==
This type would allow for the representation of a moment in time, something critical for many functions. It would allow infinite resolution. Some examples:
* Moment in time to Unix time
* Add to Moment in time.
* Distance between the Earth and Moon at a given moment.
== Type ==
The type created by this proposal would consist of two keys:
# One key would represent the date of the moment in time, of the Gregorian Calendar Date type
# one to represent the fraction of the day completed, represented by the Rational number type.
== Renderer/Parser ==
The renderer should display the ISO 8601 representation of the time. The parser should accept and convert one.
== Converting to code ==
This would convert as a 6 key object:
*K1: the year in ISO 8601, int in Python, BigInt in JavaScript
*K2: the month, 1-12 in python and 0-11 in JavaScript
*K3: the day of the month
*K4: the hour of the day, 0-23
*K5: the minute of the hour, 0-59
*K6: the second of the minute, 0-59 (ignore leap seconds, this type implements the "Feeglian calendar" (as named by [[User:99of9]])), would be represented by a rational for infinite resolution.
== Timezones ==
This proposal '''would not support different timezones''', only UTC, because the use cases for timezones should be fulfilled by a different type. This is to provide an objective, accurate, and universal description of time. In the future, a type should be created to handle standard times, instead of moments in time. As such, this type is for representing moments in time, ''not'' a time relative to the Earth's rotation or position relative to the sun
== Alternatives ==
*We could replace K4-K7 with one rational number, but this might make it hard to interact with native time types
*We could not use the "Feeglian calendar", but the date type effectively does use the "Feeglian calendar", so we'd be inconsistent with that.
== Comments ==
* {{s}} as proposer [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 03:17, 26 November 2024 (UTC)
* {{support}} [[User:Jérémy-Günther-Heinz Jähnick|Jérémy-Günther-Heinz Jähnick]] ([[User talk:Jérémy-Günther-Heinz Jähnick|talk]]) 22:51, 19 January 2025 (UTC)
* My dispute here is not with the format but the interpretation of it. Anything with a Gregorian date, I will interpret as being on the Earth's (sun-based) day matching the one used on Gregorian calendar. Then if leap seconds are added, we do not have to worry that we no longer match with UTC. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 09:33, 7 February 2025 (UTC)
* I am in general good with this type, but wonder if it would make more sense to have type for the time of day (since that seems to be a sensible type as well, as it could also be used for other calendars who have a 24 hour time), and then combine this one from Gregorian calendar date and time of day? --[[User:Denny|Denny]] ([[User talk:Denny|talk]]) 14:31, 7 February 2025 (UTC)
*:I mean, the time of day might just be a wrapper around a single key with a rational number. --[[User:Denny|Denny]] ([[User talk:Denny|talk]]) 14:33, 7 February 2025 (UTC)
*:Wouldn't this be better as a 0 <= x <= 1 rational type? I see that as very useful. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 15:08, 7 February 2025 (UTC)
*::I am not sure I understand. Do you mean a new rational type restricted to 0 <= x <= 1? --[[User:Denny|Denny]] ([[User talk:Denny|talk]]) 07:33, 8 February 2025 (UTC)
*:::Yes, @[[User:Feeglgeef|Feeglgeef]] has proposed exactly that at [[Wikifunctions:Type proposals/Percentage]]. As I said there, I think we first need to know if there is a better way to constrain input ranges than to make a whole new type. [[User:99of9|99of9]] ([[User talk:99of9|talk]]) 08:59, 8 February 2025 (UTC)
* {{S}} --[[User:Ameisenigel|Ameisenigel]] ([[User talk:Ameisenigel|talk]]) 20:25, 7 February 2025 (UTC)
* {{o}} Would become a duplicate of {{Z|Z6064}}. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 12:55, 6 July 2025 (UTC)
*:No, no it wouldn't. Wikidata time is limited to seconds, there are many applications where you would want to go down to the Millisecond or Microsecond or even Planck time. Additionally, Wikidata time supports time zones, whereas this one intentionally does not. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:02, 7 April 2026 (UTC)
* [[w:relativity of simultaneity#Description]] seems to challenge the premise of this type proposal. [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 21:30, 5 September 2025 (UTC)
*:As long as we just consider time on earth with objects going in a non-relativistic speeds, I think for practical purposes we can ignore this effect. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 21:34, 5 September 2025 (UTC)
mar40z3bkznuh0euywux0aqfsw0pyna
Z20896
0
45699
263869
261895
2026-04-08T05:50:04Z
Higa4
889
+ ja
263869
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z20896"
},
"Z2K2": {
"Z1K1": "Z14294",
"Z14294K1": [
"Z14293",
{
"Z1K1": "Z14293",
"Z14293K1": "Z20597",
"Z14293K2": [
"Z60",
"Z1002",
"Z1689",
"Z1113",
"Z1199",
"Z1437"
]
},
{
"Z1K1": "Z14293",
"Z14293K1": "Z20727",
"Z14293K2": [
"Z60",
"Z1430"
]
},
{
"Z1K1": "Z14293",
"Z14293K1": "Z20767",
"Z14293K2": [
"Z60",
"Z1015"
]
},
{
"Z1K1": "Z14293",
"Z14293K1": "Z21590",
"Z14293K2": [
"Z60",
"Z1237"
]
},
{
"Z1K1": "Z14293",
"Z14293K1": "Z28378",
"Z14293K2": [
"Z60",
"Z1011"
]
},
{
"Z1K1": "Z14293",
"Z14293K1": "Z30306",
"Z14293K2": [
"Z60",
"Z1181",
"Z1158"
]
},
{
"Z1K1": "Z14293",
"Z14293K1": "Z31322",
"Z14293K2": [
"Z60",
"Z1157",
"Z1774",
"Z1517"
]
},
{
"Z1K1": "Z14293",
"Z14293K1": "Z31572",
"Z14293K2": [
"Z60",
"Z1001"
]
},
{
"Z1K1": "Z14293",
"Z14293K1": "Z30638",
"Z14293K2": [
"Z60",
"Z1531"
]
},
{
"Z1K1": "Z14293",
"Z14293K1": "Z32588",
"Z14293K2": [
"Z60",
"Z1062"
]
},
{
"Z1K1": "Z14293",
"Z14293K1": "Z33245",
"Z14293K2": [
"Z60",
"Z1830",
"Z1326",
"Z1171",
"Z1736"
]
}
],
"Z14294K2": "Z28154"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "config for intro for year"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1004",
"Z11K2": "fonctions d'introduction pour une année"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1062",
"Z11K2": "konfigurace pro úvod k roku"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
5lscazzjk22tvstlrpyvyayf4rcyni0
Wikifunctions:Type proposals/Value with error
4
54123
263729
182847
2026-04-07T13:39:18Z
99of9
1622
/* Comments */
263729
wikitext
text/x-wiki
== Summary ==
Two rational numbers representing the value and the error.
== Uses ==
To represent and handle errors and their propagation in mathematical operations. They could also be useful to represent Wikidata values with errors.
== Structure ==
It should consist in two values of type [[Z19677]]: the value (here represented with key ZnnnK1) and the error (here represented with key ZnnnK2). The error should be interpreted as a casual error.
=== Example values ===
15.6 ± 0.3
{|class="wikitable" style="margin:.6em 1.6em"
|-
| <syntaxhighlight lang="json" line="line">{
"type": "Value with error",
"value": {
"type": "Rational number",
"sign": "positive",
"numerator": {
"type": "Natural number",
"value": "156"
},
"denominator": {
"type": "Natural number",
"value": "10"
}
},
"error": {
"type": "Rational number",
"sign": "positive",
"numerator": {
"type": "Natural number",
"value": "3"
},
"denominator": {
"type": "Natural number",
"value": "10"
}
}
}</syntaxhighlight>
| <syntaxhighlight lang="json">{
"Z1K1": "Znnn",
"ZnnnK1": {
"Z1K1": "Z19677",
"Z19677K1": "Z16660",
"Z19677K2": {
"Z1K1": "Z13518",
"Z13518K1": "156"
},
"Z19677K3": {
"Z1K1": "Z13518",
"Z13518K1": "10"
}
},
"ZnnnK2": {
"Z1K1": "Z19677",
"Z19677K1": "Z16660",
"Z19677K2": {
"Z1K1": "Z13518",
"Z13518K1": "3"
},
"Z19677K3": {
"Z1K1": "Z13518",
"Z13518K1": "10"
}
}
}</syntaxhighlight>
|}
== Validator ==
The validator ensures that:
* both values are valid
* the error is positive (or zero)
== Identity ==
Two values with error are the same if both the values and the errors are the same.
== Converting to code ==
=== Python ===
As a Dictionary containing the value and the error (in the form of Fractions).
=== JavaScript ===
As an Object containing the value and the error.
== Display function ==
The display function should first display the value in decimal representation, then the character "±" and then the error, also in decimal representation. Further discussion is needed on how to handle the number of meaningful digits.
== Read function ==
It should just read the two values as two rationals.
== Alternatives ==
Values could be of type [[Z20838]], but it seems to me that there is building consensus that [[Z19677]] should be viewed as the default type for scientific calculations.
== Comments ==
* {{s}} as proposer. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 19:27, 11 April 2025 (UTC)
* I'm not sure we need this (yet?) given that [[Z6010]] has the lower and upper bounds which effectively express uncertainties. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 13:39, 7 April 2026 (UTC)
1y02tgg8zc6l8nv7w18tkfgk75uiwud
Wikifunctions:Type proposals/Geometrical point
4
56108
263746
246934
2026-04-07T14:03:06Z
Feeglgeef
8776
forgot to sign somehow
263746
wikitext
text/x-wiki
== Summary ==
A big field of functions currently is absent from Wikifunctions - geometrical functions. We already have number functions and trigonometrical functions, but not geometrical.
This type could be used in such functions as, for example, rotate point relative to another point by given angle; get the angle between three points; get the middle point between two points.
Further object types could be created based on this one: segment, polygon, circle, surface, sphere. Other types to be created after this one: vector, line, curve, plane.
== Structure ==
This object type should consist of two real numbers, maybe three: representing a position along x, y and z axis.
=== Example values ===
Value …
{|class="wikitable" style="margin:.6em 1.6em"
|-
| <syntaxhighlight lang="json" line="line">{
"type": "point",
"value": "x"
{
"type": "float64"
},
"value": "y"
{
"type": "float64"
},
"value": "z"
{
"type": "float64"
},
}</syntaxhighlight>
|}
== Identity ==
Two points are the same if each of their coordinates (x, y, z) are the same
== Display function ==
''How would a value of this type be displayed on Wikifunctions''
<code>Point(12.34, -56.78)</code>
== Comments ==
* {{s}} as proposer. --[[User:Tohaomg|Tohaomg]] ([[User talk:Tohaomg|talk]]) 16:33, 3 May 2025 (UTC)--sign here
* {{s}} integral for many potential future functions. [[User:Diamondarmorstev|Diamondarmorstev]] ([[User talk:Diamondarmorstev|talk]]) 00:59, 30 September 2025 (UTC)
* If the type is limited to 2D, it would be better served by [[WF:Type_proposals/complex128]]. If it's N-dimensional, just use lists like the few vector (matrix) functions that already exist. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 19:15, 27 November 2025 (UTC)
* {{o}} on the basis of strong preference towards the use of rational numbers [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:02, 7 April 2026 (UTC)
a51zp4s65987yn7c4vx24o1qluymafx
263750
263746
2026-04-07T14:11:48Z
JJPMaster
6409
/* Comments */ o
263750
wikitext
text/x-wiki
== Summary ==
A big field of functions currently is absent from Wikifunctions - geometrical functions. We already have number functions and trigonometrical functions, but not geometrical.
This type could be used in such functions as, for example, rotate point relative to another point by given angle; get the angle between three points; get the middle point between two points.
Further object types could be created based on this one: segment, polygon, circle, surface, sphere. Other types to be created after this one: vector, line, curve, plane.
== Structure ==
This object type should consist of two real numbers, maybe three: representing a position along x, y and z axis.
=== Example values ===
Value …
{|class="wikitable" style="margin:.6em 1.6em"
|-
| <syntaxhighlight lang="json" line="line">{
"type": "point",
"value": "x"
{
"type": "float64"
},
"value": "y"
{
"type": "float64"
},
"value": "z"
{
"type": "float64"
},
}</syntaxhighlight>
|}
== Identity ==
Two points are the same if each of their coordinates (x, y, z) are the same
== Display function ==
''How would a value of this type be displayed on Wikifunctions''
<code>Point(12.34, -56.78)</code>
== Comments ==
* {{s}} as proposer. --[[User:Tohaomg|Tohaomg]] ([[User talk:Tohaomg|talk]]) 16:33, 3 May 2025 (UTC)--sign here
* {{s}} integral for many potential future functions. [[User:Diamondarmorstev|Diamondarmorstev]] ([[User talk:Diamondarmorstev|talk]]) 00:59, 30 September 2025 (UTC)
* If the type is limited to 2D, it would be better served by [[WF:Type_proposals/complex128]]. If it's N-dimensional, just use lists like the few vector (matrix) functions that already exist. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 19:15, 27 November 2025 (UTC)
* {{o}} on the basis of strong preference towards the use of rational numbers [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:02, 7 April 2026 (UTC)
: {{o}} per YoshiRulz. [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 14:11, 7 April 2026 (UTC)
a1td528y77x47895grbvp7lcx65b48n
Wikifunctions:Type proposals/Unit of measurement
4
59368
263747
212069
2026-04-07T14:04:46Z
Feeglgeef
8776
/* Comments */
263747
wikitext
text/x-wiki
== Summary ==
This proposal introduces two new types in order to represent units of measurements (the definition of unitful values is left for a future proposal).
This proposal is meant to compete with [[Wikifunctions:Type_proposals/SI_units]], while still being heavily inspired by it. The main difference between these two models is that this proposal wants to handle all the units at the same time.
While {{Z|Z6010}} is already able to encode quantities, it is not able to encode for all the possible derived units and it is not practical to use for mathematical calculations (mainly due to the fact that the unit is encoded just by a Wikidata reference). This proposal wants to overcome all these difficulties.
== Uses ==
These types should make possible to handle operations with units, like unit conversions and multiplications.
== Structure ==
==== Unit dimensions ====
This type encodes for the physical dimensions of a unit. It contains 7 values, all of type {{Z|Z19677}}, corresponding to the SI fundamental dimensions. Those values represent the exponents of said fundamental dimentions.
==== Unit of measurement ====
This type represent a Unit. Assuming it has the ZID "Znnnn", its keys should be:
* ZnnnnK1: "dimension" of type Unit dimensions: encodes for the physical dimension of the physical value represented by the unit
* ZnnnnK2: "conversion to SI" of type {{Z|Z19677}}: represents the factor to use to convert this unit to the corresponding SI unit with the same dimensions
* ZnnnnK3: "offset with SI" of type {{Z|Z19677}}: represents the offset (in SI units) between this unit 0 and the SI unit 0. This value is included mainly to properly handle temperature units.
* ZnnnnK4: "Wikidata representation" of type list of pairs of {{Z|Z6091}} and {{Z|Z19677}}: contains the units that compose this unit, with the first element of the pair being the reference to the Wikidata item representing the unit, and the second element representing the exponent said unit must be raised to. All the units of the list should be multiplied to obtain the unit represented by the entire type. This is to remember the symbol that should be used to display the unit.
Calling <math>SI</math> the value in SI unit and <math>x</math> the value in the represented unit, the following relation should be valid:
: <math>SI = K_2 x + K_3</math>
=== Example values ===
==== Unit dimensions ====
Example: speed
* ZmmmmK1 (time): -1/1
* ZmmmmK2 (length): 1/1
* ZmmmmK3 (mass): 0/1
* ZmmmmK4 (current): 0/1
* ZmmmmK5 (temperature): 0/1
* ZmmmmK6 (luminous intensity): 0/1
* ZmmmmK7 (amount of substance): 0/1
==== Unit of measurement ====
Example: miles/minute
* ZnnnnK1 (dimension): Unit dimensions(-1,1,0,0,0,0,0)
* ZnnnnK2 (conversion to SI): 16764/625
* ZnnnnK3 (offset with SI): 0/1
* ZnnnnK4 (Wikidata representation): list:
** pair({{Q|Q253276}}, 1/1)
** pair({{Q|Q7727}}, -1/1)
In alternative:
:* pair({{Q|Q106611642}}, 1/1)
Note: in general, multiple values for ZnnnnK4 are possible.
<!--
{|class="wikitable" style="margin:.6em 1.6em"
|-
| <syntaxhighlight lang="json" line="line">{
"type": "…",
"value": "…"
}</syntaxhighlight>
| <syntaxhighlight lang="json">{
"Z1K1": "Zxyz",
"ZxyzK1": "…"
}</syntaxhighlight>
|}
-->
== Validator ==
=== Unit dimensions ===
The validator ensures that:
* All the keys are valid
=== Measurement unit ===
The validator ensures that:
* All the keys are valid
* The conversion factor with SI is different from 0/1
* All the Wikidata representation exponents are different from 0/1
* The Wikidata representation is made of references to measurement units
* The Wikidata representation is coherent with all the other values
== Identity ==
=== Unit dimensions ===
Two unit dimensions are the same if all the values are the same
=== Measurement unit ===
Two units are the same if:
* the unit dimensions are the same
* the conversion factors to SI are the same
* the offsets with SI are the same
Considering that the same unit could have different Wikidata representations, the last key shouldn't be considered in the standard comparing function; it is stil possible to implement a stricter equality function (similar to how {{Z|Z19677}} has {{Z|Z19686}} as the standard comparing function but {{Z|Z19892}} still exists).
== Converting to code ==
=== Python ===
==== Unit dimensions ====
As a dictionary, with the values in keys from K1 to K7.
==== Measurement unit ====
As a dictionary, with keys from K1 to K4. The K4 key should be a list of tuples with two values, the first being a string (representing the QID) and the second being a Fraction.
=== JavaScript ===
Similar to Python, with Objects instead of dictionaries and with Arrays instead of tuples.
== Display function ==
=== Measurement unit ===
Just the symbol (according to the Wikidata representation).
== Read function ==
=== Measurement unit ===
Should read the symbol (supporting also exponents, multiplications and divisions of units). It should also accept the QID of the Wikidata item representing the unit.
== Alternatives ==
=== Support for logarithmic units ===
To support a logarithmic unit, it would be necessary to only add a key (ZnnnnK5, type of unit) indicating whether it's a logaritmic or a linear unit (possibly a lightweight Wikidata enumeration of {{Q|Q1914828}} and {{Q|Q17342348}} or {{Q|Q937378}}).
In fact, given a logarithmic unit <math>y</math> derived from a linear unit <math>x</math>, if it's derived from an expression like <math>y = a+b\log_f(cx)</math>, it can also be expressed in the form of <math>y=\alpha' + \beta'\log(x)</math>, with <math>\alpha' = a+\frac{b\log c}{\log f}</math> and <math>\beta' = \frac{b}{\log f}</math>. For consistency, we should instead express in terms of <math>\log(x)</math>:
:<math>\log(x) = \beta y + \alpha</math>
with <math>\beta=\frac{1}{\beta'} = \frac{\log f}{b}</math> and <math>\alpha=-\frac{\alpha'}{\beta'}= -\frac{a\log f}{b} - \log c</math>.
<math>\alpha</math> and <math>\beta</math> could be stored in the fields ZnnnnK3 and ZnnnnK2 respectively, with the convention that <math>x</math> is in SI units. ZnnnnK1 would represent the dimentions of the original linear unit <math>x</math>, considering that the logaritmic unit itself whould always be adimensional. We should also choose the conventional basis for the logarithm; my proposal would be to choose basis 10, since the most used logarithmic units use basis 10.
For example, the decibel used for sound intensity, given by the formula <math> \mathit{IL} = 10 \, \log_{10} \left(\frac{I}{I_0} \right)</math>, with <math>I_{0} = 10^{-12} W/m^2</math>
should be represented as:
* ZnnnnK1 (dimensions): Unit dimensions (-3,0,1,0,0,0,0)
* ZnnnnK2 (conversion to SI): 1/10
* ZnnnnK3 (offset with SI): -12/1
* ZnnnnK4 (Wikidata representation): list:
** pair({{Q|Q5329}}, 1/1)
* ZnnnnK5 (type of unit): {{Q|Q937378}}
In alternative, logarithmic units could be a separated type (considering that common operations with linear units, like multiplication and additions of unitful values, are not uniquely defined with logarithmic units).
== Comments ==
''For general comments, please reply to the proposer.''
* {{s}} as proposer. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 16:42, 22 June 2025 (UTC)
:{{neutral|Uncertain}} for the logarithmic units, as the proposer. Probably it's better to create a separate type for them, considering that they would be a useless bloat for functions dealing with linear units. Units like decibels would still be able to be represented in the Unit of measurement type as dimensionless units (so that we can also create composite units, like decibel/second, or even decibel/decade). [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 16:14, 29 July 2025 (UTC)
*Provisional {{support}}. Thanks for this proposal. I like it a lot. At this stage I even support the logarithmic version. I'll dwell on it for a while longer before removing the "provisional". --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 07:49, 21 August 2025 (UTC)
*{{o}} on preference to SI units. I don't think more abstraction is helpful here. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 14:04, 7 April 2026 (UTC)
70w24dnwuaqju6s5zz343q72u3v96hp
Z26708
0
62074
263774
258325
2026-04-07T14:49:33Z
Asked42
932
263774
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z26708"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z26707",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z26707",
"Z26707K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q1348"
},
"Z26707K2": {
"Z1K1": "Z6091",
"Z6091K1": "Q515"
},
"Z26707K3": {
"Z1K1": "Z6091",
"Z6091K1": "Q1356"
}
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z14392",
"Z14392K2": {
"Z1K1": "Z11",
"Z11K1": "Z1011",
"Z11K2": "কলকাতা পশ্চিমবঙ্গের একটি নগর।"
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Q1348 Q1356-এর একটি Q515"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1011",
"Z11K2": "কলকাতা পশ্চিমবঙ্গের একটি নগর"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
ntpy6jdlkdp6o9wg5xh12xxhv3lh3ez
Z26709
0
62075
263761
258328
2026-04-07T14:24:03Z
Asked42
932
263761
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z26709"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z26707",
"Z14K2": {
"Z1K1": "Z7",
"Z7K1": "Z26107",
"Z26107K1": "Z1011",
"Z26107K2": {
"Z1K1": "Z7",
"Z7K1": "Z22504",
"Z22504K1": [
"Z6",
{
"Z1K1": "Z7",
"Z7K1": "Z26785",
"Z26785K1": {
"Z1K1": "Z7",
"Z7K1": "Z33172",
"Z33172K1": {
"Z1K1": "Z7",
"Z7K1": "Z6821",
"Z6821K1": {
"Z1K1": "Z18",
"Z18K1": "Z26707K1"
}
}
},
"Z26785K2": {
"Z1K1": "Z7",
"Z7K1": "Z33172",
"Z33172K1": {
"Z1K1": "Z7",
"Z7K1": "Z6821",
"Z6821K1": {
"Z1K1": "Z18",
"Z18K1": "Z26707K2"
}
}
}
},
{
"Z1K1": "Z7",
"Z7K1": "Z18831",
"Z18831K1": {
"Z1K1": "Z7",
"Z7K1": "Z33172",
"Z33172K1": {
"Z1K1": "Z7",
"Z7K1": "Z6821",
"Z6821K1": {
"Z1K1": "Z18",
"Z18K1": "Z26707K3"
}
}
}
},
"একটি",
{
"Z1K1": "Z7",
"Z7K1": "Z33172",
"Z33172K1": {
"Z1K1": "Z7",
"Z7K1": "Z6821",
"Z6821K1": {
"Z1K1": "Z18",
"Z18K1": "Z26707K2"
}
}
}
]
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "State location using entity and class, BN (comp)"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
5z4wraxl6s07ee4t4h0tikvm9rssyj5
263773
263761
2026-04-07T14:48:49Z
Asked42
932
263773
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z26709"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z26707",
"Z14K2": {
"Z1K1": "Z7",
"Z7K1": "Z33238",
"Z33238K1": [
"Z6",
{
"Z1K1": "Z7",
"Z7K1": "Z26785",
"Z26785K1": {
"Z1K1": "Z7",
"Z7K1": "Z33172",
"Z33172K1": {
"Z1K1": "Z7",
"Z7K1": "Z6821",
"Z6821K1": {
"Z1K1": "Z18",
"Z18K1": "Z26707K1"
}
}
},
"Z26785K2": {
"Z1K1": "Z7",
"Z7K1": "Z33172",
"Z33172K1": {
"Z1K1": "Z7",
"Z7K1": "Z6821",
"Z6821K1": {
"Z1K1": "Z18",
"Z18K1": "Z26707K2"
}
}
}
},
{
"Z1K1": "Z7",
"Z7K1": "Z18831",
"Z18831K1": {
"Z1K1": "Z7",
"Z7K1": "Z33172",
"Z33172K1": {
"Z1K1": "Z7",
"Z7K1": "Z6821",
"Z6821K1": {
"Z1K1": "Z18",
"Z18K1": "Z26707K3"
}
}
}
},
"একটি",
{
"Z1K1": "Z7",
"Z7K1": "Z33172",
"Z33172K1": {
"Z1K1": "Z7",
"Z7K1": "Z6821",
"Z6821K1": {
"Z1K1": "Z18",
"Z18K1": "Z26707K2"
}
}
}
]
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "State location using entity and class, BN (comp)"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
7z0enbx2v014yabe2u8nss0qu2r24j8
Z26710
0
62076
263775
258326
2026-04-07T14:49:49Z
Asked42
932
263775
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z26710"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z26707",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z26707",
"Z26707K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q2093352"
},
"Z26707K2": {
"Z1K1": "Z6091",
"Z6091K1": "Q149621"
},
"Z26707K3": {
"Z1K1": "Z6091",
"Z6091K1": "Q902"
}
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z14392",
"Z14392K2": {
"Z1K1": "Z11",
"Z11K1": "Z1011",
"Z11K2": "সিলেট বাংলাদেশের একটি জেলা।"
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1011",
"Z11K2": "সিলেট বাংলাদেশের একটি জেলা"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Q2093352 Q902-এর একটি Q149621"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
4w17r5l1o31rmmpk2qobddlke18js17
Z27243
0
63223
263913
263440
2026-04-08T10:21:28Z
Mormegil
150
+cs
263913
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z27243"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z6091",
"Z17K2": "Z27243K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "entity"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1004",
"Z11K2": "entité"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1062",
"Z11K2": "entita"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z6091",
"Z17K2": "Z27243K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "adjective"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1004",
"Z11K2": "adjectif"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1062",
"Z11K2": "adjektivum"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z6091",
"Z17K2": "Z27243K3",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "class"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1004",
"Z11K2": "classe"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1062",
"Z11K2": "třída"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z6091",
"Z17K2": "Z27243K4",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "location"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1004",
"Z11K2": "localisation"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1062",
"Z11K2": "místo"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z60",
"Z17K2": "Z27243K5",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "language"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1004",
"Z11K2": "langue"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1062",
"Z11K2": "jazyk"
}
]
}
}
],
"Z8K2": "Z11",
"Z8K3": [
"Z20",
"Z27248",
"Z27256",
"Z32233"
],
"Z8K4": [
"Z14",
"Z29842"
],
"Z8K5": "Z27243"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Superlative definition"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1004",
"Z11K2": "Définition d'un superlatif"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1062",
"Z11K2": "definice superlativem"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31",
{
"Z1K1": "Z31",
"Z31K1": "Z1062",
"Z31K2": [
"Z6",
"superlativní definice"
]
}
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Topic definition in the form of \"\u003CX\u003E is the \u003CCest\u003E \u003CY\u003E in \u003CZ\u003E.\""
},
{
"Z1K1": "Z11",
"Z11K1": "Z1004",
"Z11K2": "Définition d'un sujet sous la forme « \u003CX\u003E est le \u003CY\u003E le plus \u003CC\u003E de \u003CZ\u003E. »"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1062",
"Z11K2": "sestaví větu definující téma superlativem ve formě „\u003Centita\u003E je \u003Csuperlativum\u003E \u003Ctřída\u003E v \u003Cmísto\u003E.“"
}
]
}
}
n56w7ka72943m8fq0bemz44km1yorot
Z27503
0
63935
263778
263544
2026-04-07T15:10:06Z
Asked42
932
263778
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z27503"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z27502",
"Z14K2": {
"Z1K1": "Z7",
"Z7K1": "Z33238",
"Z33238K1": [
"Z6",
{
"Z1K1": "Z7",
"Z7K1": "Z33172",
"Z33172K1": {
"Z1K1": "Z7",
"Z7K1": "Z6821",
"Z6821K1": {
"Z1K1": "Z18",
"Z18K1": "Z27502K1"
}
}
},
"একধরনের",
{
"Z1K1": "Z7",
"Z7K1": "Z33172",
"Z33172K1": {
"Z1K1": "Z7",
"Z7K1": "Z6821",
"Z6821K1": {
"Z1K1": "Z18",
"Z18K1": "Z27502K2"
}
}
}
]
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "composition for Z27502"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
2p3pwfciz9xxf340jekuzhgjyzqkbs7
Z27504
0
63936
263779
211652
2026-04-07T15:10:36Z
Asked42
932
263779
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z27504"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z27502",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z27502",
"Z27502K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q164"
},
"Z27502K2": {
"Z1K1": "Z6091",
"Z6091K1": "Q209"
}
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z14392",
"Z14392K2": {
"Z1K1": "Z11",
"Z11K1": "Z1011",
"Z11K2": "বর্গক্ষেত্র একধরনের আয়তক্ষেত্র।"
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Q164 একধরনের Q209"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
1p7uiz9w34ixo6cq83uc32igqeagdrw
Z27505
0
63937
263780
211655
2026-04-07T15:10:54Z
Asked42
932
263780
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z27505"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z27502",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z27502",
"Z27502K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q2"
},
"Z27502K2": {
"Z1K1": "Z6091",
"Z6091K1": "Q6999"
}
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z14392",
"Z14392K2": {
"Z1K1": "Z11",
"Z11K1": "Z1011",
"Z11K2": "পৃথিবী একধরনের জ্যোতির্বৈজ্ঞানিক বস্তু।"
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Q2 একধরনের Q6999"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
rilr9znvnvoihwrmeaoxcvcvk8lredu
Z28051
0
65139
263776
263270
2026-04-07T14:59:36Z
Asked42
932
263776
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z28051"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z28049",
"Z14K2": {
"Z1K1": "Z7",
"Z7K1": "Z33238",
"Z33238K1": [
"Z6",
{
"Z1K1": "Z7",
"Z7K1": "Z33172",
"Z33172K1": {
"Z1K1": "Z7",
"Z7K1": "Z6821",
"Z6821K1": {
"Z1K1": "Z18",
"Z18K1": "Z28049K1"
}
}
},
{
"Z1K1": "Z7",
"Z7K1": "Z18831",
"Z18831K1": {
"Z1K1": "Z7",
"Z7K1": "Z33172",
"Z33172K1": {
"Z1K1": "Z7",
"Z7K1": "Z6821",
"Z6821K1": {
"Z1K1": "Z18",
"Z18K1": "Z28049K3"
}
}
}
},
{
"Z1K1": "Z7",
"Z7K1": "Z33172",
"Z33172K1": {
"Z1K1": "Z7",
"Z7K1": "Z6821",
"Z6821K1": {
"Z1K1": "Z18",
"Z18K1": "Z28049K2"
}
}
}
]
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "defining role sentence in Bangla, comp"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
24wxqx0hlgthilnx5q7r3rv0rc97g77
Z28056
0
65144
263777
261779
2026-04-07T15:04:53Z
Asked42
932
263777
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z28056"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z28049",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z28049",
"Z28049K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q7241"
},
"Z28049K2": {
"Z1K1": "Z6091",
"Z6091K1": "Q177232"
},
"Z28049K3": {
"Z1K1": "Z6091",
"Z6091K1": "Q3020852"
},
"Z28049K4": "Z1011"
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z14392",
"Z14392K2": {
"Z1K1": "Z11",
"Z11K1": "Z1011",
"Z11K2": "রবীন্দ্রনাথ ঠাকুর দেবেন্দ্রনাথ ঠাকুরের পুত্র।"
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1011",
"Z11K2": "রবীন্দ্রনাথ ঠাকুর দেবেন্দ্রনাথ ঠাকুরের পুত্র"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
i62w5df9csb5c24m7m946mm71158frq
Z29588
0
68788
263907
256229
2026-04-08T09:40:21Z
Mormegil
150
+cs
263907
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z29588"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z60",
"Z17K2": "Z29588K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "target site language"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1062",
"Z11K2": "cílový jazyk"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z6091",
"Z17K2": "Z29588K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Item"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1062",
"Z11K2": "položka Wikidat"
}
]
}
}
],
"Z8K2": "Z89",
"Z8K3": [
"Z20",
"Z29590"
],
"Z8K4": [
"Z14",
"Z29739",
"Z31876"
],
"Z8K5": "Z29588"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "HTML link to Wikipedia article about Wikidata Item"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1062",
"Z11K2": "HTML odkaz na článek Wikipedie o položce Wikidat"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31",
{
"Z1K1": "Z31",
"Z31K1": "Z1002",
"Z31K2": [
"Z6",
"sitelink"
]
},
{
"Z1K1": "Z31",
"Z31K1": "Z1062",
"Z31K2": [
"Z6",
"článek Wikipedie",
"odkaz na článek"
]
}
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "uses label from Wikidata, compare Z31697"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1062",
"Z11K2": "vytvoří HTML odkaz na článek Wikipedie v daném jazyce odkazovaný v dané položce Wikidat, jako text použije štítek položky Wikidat (srov. Z31697)"
}
]
}
}
9dtj7gpbtfxje1qjqdoji6erg60josh
263920
263907
2026-04-08T10:52:25Z
GrounderUK
50
[[Z1002]] label and aliases
263920
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z29588"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z60",
"Z17K2": "Z29588K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "target site language"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1062",
"Z11K2": "cílový jazyk"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z6091",
"Z17K2": "Z29588K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Item"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1062",
"Z11K2": "položka Wikidat"
}
]
}
}
],
"Z8K2": "Z89",
"Z8K3": [
"Z20",
"Z29590"
],
"Z8K4": [
"Z14",
"Z29739",
"Z31876"
],
"Z8K5": "Z29588"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "link Wikidata label to Wikipedia article"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1062",
"Z11K2": "HTML odkaz na článek Wikipedie o položce Wikidat"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31",
{
"Z1K1": "Z31",
"Z31K1": "Z1002",
"Z31K2": [
"Z6",
"sitelink",
"HTML link to Wikipedia article about Wikidata Item",
"link Wikidata label to Wikipedia article in the same language",
"article link",
"Wikipedia article for language label"
]
},
{
"Z1K1": "Z31",
"Z31K1": "Z1062",
"Z31K2": [
"Z6",
"článek Wikipedie",
"odkaz na článek"
]
}
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "uses label from Wikidata, compare Z31697"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1062",
"Z11K2": "vytvoří HTML odkaz na článek Wikipedie v daném jazyce odkazovaný v dané položce Wikidat, jako text použije štítek položky Wikidat (srov. Z31697)"
}
]
}
}
tjrwfy7ju9wye7844j1hdz7j5z98k28
Wikifunctions:Type proposals/Word order
4
68947
263901
256935
2026-04-08T08:38:40Z
ChaoticVermillion
31127
/* Comments */ s
263901
wikitext
text/x-wiki
== Summary ==
Represents how a particular natural language is structured in terms of [[w:en:word order]].
Like [[Z29654|NAdj/AdjN]], this information is encoded on Wikidata with {{P|4132}}.
== Uses ==
This could be used in "fallback" NLG functions (such as [[Z28019]]) to make a best effort at structuring a grammatical sentence.
== Elements of the enumeration ==
<gallery>
SOV.gif|subject–object–verb ([https://cals.info/language/tag/sov CALS])
svo.gif|subject–verb–object ([https://cals.info/language/tag/svo CALS])
VSO.gif|verb–subject–object ([https://cals.info/language/tag/vso CALS])
voS.gif|verb–object–subject ([https://cals.info/language/tag/vos CALS])
ovs.gif|object–verb–subject ([https://cals.info/language/tag/ovs CALS])
OSV.png|object–subject–verb ([https://cals.info/language/tag/osv CALS])
</gallery>
The 6 permutations [[w:en:template:language word order frequency|by frequency of occurrence]] in [https://wals.info/chapter/81 languages worldwide] are: {{Q|539808}}, {{Q|651641}}, {{Q|166097}}, {{Q|568140}}, {{Q|989463}}, and {{Q|1417850}}, and possibly {{Q|33129605}} since that's listed as a 7th part on [[d:Q257885#P527]].
== Alternatives ==
none considered
== Comments ==
''For general comments, please reply to the proposer.''
* {{s}} as proposer. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 08:37, 21 November 2025 (UTC)
* {{s}} [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 22:29, 22 November 2025 (UTC)
* Can we call it something more specific, e.g. "subject/object/verb order". --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 03:56, 23 November 2025 (UTC)
*:The roles of the subject, the object, and the verb are [[w:syntactic category#Lexical categories vs. functional categories|syntactic]], so maybe 'syntactic order' or 'syntax order'? But SOV aren't the only categories to analyze syntax by, see for example the [[w:en:predicate (grammar)|two distinct usages]] of 'predicate'. [[User:Arlo Barnes|Arlo Barnes]] ([[User talk:Arlo Barnes|talk]]) 04:33, 23 November 2025 (UTC)
*::Then it's clearest and unambiguous if we call it the specific "subject/object/verb order"? --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 05:18, 11 March 2026 (UTC)
* {{S}} --[[User:Ameisenigel|Ameisenigel]] ([[User talk:Ameisenigel|talk]]) 19:47, 27 November 2025 (UTC)
* {{s}} [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 21:51, 27 November 2025 (UTC)
* {{s}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:38, 8 April 2026 (UTC)
nfvtea99wkslzsn3jbm75tuupo43gjv
Z29841
0
69316
263914
262380
2026-04-08T10:21:55Z
Mormegil
150
+cs
263914
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z29841"
},
"Z2K2": {
"Z1K1": "Z14294",
"Z14294K1": [
"Z14293",
{
"Z1K1": "Z14293",
"Z14293K1": "Z29010",
"Z14293K2": [
"Z60",
"Z1002"
]
},
{
"Z1K1": "Z14293",
"Z14293K1": "Z32906",
"Z14293K2": [
"Z60",
"Z1430"
]
},
{
"Z1K1": "Z14293",
"Z14293K1": "Z32243",
"Z14293K2": [
"Z60",
"Z1531"
]
},
{
"Z1K1": "Z14293",
"Z14293K1": "Z32973",
"Z14293K2": [
"Z60",
"Z1011"
]
}
],
"Z14294K2": "Z29010"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "config for superlative definition"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1062",
"Z11K2": "konfigurace pro definici superlativem"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1062",
"Z11K2": "konfigurace funkcí pro jazykové verze Z27243"
}
]
}
}
pie2c2bvmde1kmm4aogj067vh6fvr0d
Wikifunctions:Type proposals/Season
4
69543
263903
256933
2026-04-08T08:48:24Z
ChaoticVermillion
31127
support
263903
wikitext
text/x-wiki
== Summary ==
One of the 4 seasons.
== Uses ==
* To handle all the operations with seasons (like start/end, ...)
== Elements of the enumeration ==
# {{Q|Q1311}}
# {{Q|Q1312}}
# {{Q|Q1313}}
# {{Q|Q1314}}
== Alternatives ==
''In order to capture the idea presented in the summary, what alternatives could have made sense too?''
…
== Comments ==
''For general comments, please reply to the proposer.''
* {{s}} as proposer. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 14:31, 30 November 2025 (UTC)
* {{s}} simple and valuable. --[[User:99of9|99of9]] ([[User talk:99of9|talk]]) 05:12, 11 March 2026 (UTC)
* {{s}} [[User:ChaoticVermillion|ChaoticVermillion]] ([[User talk:ChaoticVermillion|talk]]) 08:48, 8 April 2026 (UTC)
b5is6km3wsys194w781727ghjk2qc9t
Z30603
0
70852
263737
236132
2026-04-07T13:50:46Z
Dv103
11127
Added Z30605, Z31329, Z31330, Z31328 e Z33236 to the approved list of test cases
263737
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z30603"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z13518",
"Z17K2": "Z30603K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "natural number"
}
]
}
}
],
"Z8K2": "Z6",
"Z8K3": [
"Z20",
"Z30605",
"Z31329",
"Z31330",
"Z31328",
"Z33236"
],
"Z8K4": [
"Z14"
],
"Z8K5": "Z30603"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Malay ordinal"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31",
{
"Z1K1": "Z31",
"Z31K1": "Z1002",
"Z31K2": [
"Z6",
"Malay ordinal from number",
"natural number to Malay ordinal",
"Malay natural number to ordinal",
"ordinal from number (Malay)"
]
}
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "converts a natural number to a standard Malay text string"
}
]
}
}
px611w3s31en5f3h61glqb8n9u05u5d
263738
263737
2026-04-07T13:51:35Z
Dv103
11127
Added Z30604 to the approved list of implementations
263738
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z30603"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z13518",
"Z17K2": "Z30603K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "natural number"
}
]
}
}
],
"Z8K2": "Z6",
"Z8K3": [
"Z20",
"Z30605",
"Z31329",
"Z31330",
"Z31328",
"Z33236"
],
"Z8K4": [
"Z14",
"Z30604"
],
"Z8K5": "Z30603"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Malay ordinal"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31",
{
"Z1K1": "Z31",
"Z31K1": "Z1002",
"Z31K2": [
"Z6",
"Malay ordinal from number",
"natural number to Malay ordinal",
"Malay natural number to ordinal",
"ordinal from number (Malay)"
]
}
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "converts a natural number to a standard Malay text string"
}
]
}
}
1g3gtdc2iieff5js6mc3sll2qoxw634
Z30604
0
70854
263713
263464
2026-04-07T13:24:29Z
Hakimi97
198
263713
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z30604"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z30603",
"Z14K2": {
"Z1K1": "Z7",
"Z7K1": "Z18679",
"Z18679K1": {
"Z1K1": "Z7",
"Z7K1": "Z15567",
"Z15567K1": {
"Z1K1": "Z18",
"Z18K1": "Z30603K1"
}
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Malay ordinal from Natural number: Composition"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31",
{
"Z1K1": "Z31",
"Z31K1": "Z1002",
"Z31K2": [
"Z6",
"Malay ordinal, composition"
]
}
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Malay text string for the ordinal "
}
]
}
}
p9wesbdxu4peeezgijc81bbgmyjp2wa
263714
263713
2026-04-07T13:25:25Z
Hakimi97
198
263714
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z30604"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z30603",
"Z14K2": {
"Z1K1": "Z7",
"Z7K1": "Z18679",
"Z18679K1": {
"Z1K1": "Z7",
"Z7K1": "Z33165",
"Z33165K1": {
"Z1K1": "Z18",
"Z18K1": "Z30603K1"
}
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Malay ordinal from Natural number: Composition"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31",
{
"Z1K1": "Z31",
"Z31K1": "Z1002",
"Z31K2": [
"Z6",
"Malay ordinal, composition"
]
}
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Malay text string for the ordinal "
}
]
}
}
jk1f7992bf7g7hpmcnd21k5btfm8ca6
263730
263714
2026-04-07T13:41:54Z
Hakimi97
198
263730
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z30604"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z30603",
"Z14K2": {
"Z1K1": "Z7",
"Z7K1": "Z18679",
"Z18679K1": {
"Z1K1": "Z7",
"Z7K1": "Z15567",
"Z15567K1": {
"Z1K1": "Z18",
"Z18K1": "Z30603K1"
}
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Malay ordinal from Natural number: Composition"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31",
{
"Z1K1": "Z31",
"Z31K1": "Z1002",
"Z31K2": [
"Z6",
"Malay ordinal, composition"
]
}
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Malay text string for the ordinal "
}
]
}
}
p9wesbdxu4peeezgijc81bbgmyjp2wa
263731
263730
2026-04-07T13:42:23Z
Hakimi97
198
263731
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z30604"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z30603",
"Z14K2": {
"Z1K1": "Z7",
"Z7K1": "Z18679",
"Z18679K1": {
"Z1K1": "Z7",
"Z7K1": "Z33165",
"Z33165K1": {
"Z1K1": "Z18",
"Z18K1": "Z30603K1"
}
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Malay ordinal from Natural number: Composition"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31",
{
"Z1K1": "Z31",
"Z31K1": "Z1002",
"Z31K2": [
"Z6",
"Malay ordinal, composition"
]
}
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Malay text string for the ordinal "
}
]
}
}
jk1f7992bf7g7hpmcnd21k5btfm8ca6
Talk:Z6820
1
70937
263836
236445
2026-04-08T02:22:28Z
YoshiRulz
10156
/* Unavailable parts */ Reply
263836
wikitext
text/x-wiki
== Unavailable parts ==
{{Z|6032}}, {{Z|6037}}, and {{Z|6038}} currently do nothing. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 10:43, 17 December 2025 (UTC)
:[[Z6037]] and [[Z6038]] now work, see [[WF:Status updates/2026-02-20]]. [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 02:22, 8 April 2026 (UTC)
trrr64w6kcdo9acxfprqjrb3iezzahy
Z31328
0
74672
263733
247983
2026-04-07T13:48:15Z
Hakimi97
198
263733
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z31328"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z30603",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z30603",
"Z30603K1": {
"Z1K1": "Z13518",
"Z13518K1": "1"
}
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z866",
"Z866K2": "pertama"
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "1 \u003E pertama"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
h3tqlqd2towgldk29jlseqfjzwdd9tx
Z31330
0
74674
263712
263465
2026-04-07T13:23:16Z
Hakimi97
198
263712
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z31330"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z30603",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z30603",
"Z30603K1": {
"Z1K1": "Z13518",
"Z13518K1": "183"
}
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z866",
"Z866K2": "keseratus lapan puluh tiga"
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "183 → keseratus lapan puluh tiga"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
9bsmkqs9swo9etovplh6kezpkqkjb98
Z31697
0
77007
263838
254322
2026-04-08T02:24:24Z
99of9
1622
Added Z33242 to the approved list of test cases
263838
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z31697"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z6091",
"Z17K2": "Z31697K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "subject"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z60",
"Z17K2": "Z31697K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "language"
}
]
}
}
],
"Z8K2": "Z89",
"Z8K3": [
"Z20",
"Z31698",
"Z31707",
"Z33242"
],
"Z8K4": [
"Z14",
"Z31700"
],
"Z8K5": "Z31697"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Wikipedia link for Wikidata item if available"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "returns a hyperlink to the Wikipedia article for a given Wikidata item and language, if available; uses pagename as label, compare Z29588"
}
]
}
}
lpqazsfmpwjgg55ns1rgh8aifmz1isz
263905
263838
2026-04-08T09:07:52Z
GrounderUK
50
[[Z1002]] clarified
263905
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z31697"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z6091",
"Z17K2": "Z31697K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "subject"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z60",
"Z17K2": "Z31697K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "language"
}
]
}
}
],
"Z8K2": "Z89",
"Z8K3": [
"Z20",
"Z31698",
"Z31707",
"Z33242"
],
"Z8K4": [
"Z14",
"Z31700"
],
"Z8K5": "Z31697"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Wikipedia link for Wikidata item if available"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "returns a hyperlink to the Wikipedia article for a given Wikidata item and language, if a sitelink is available, using the page name rather than the Wikidata label (compare Z29588); otherwise empty"
}
]
}
}
m2jcl8xv3z4g7thoek13883qecjmho6
263917
263905
2026-04-08T10:46:32Z
GrounderUK
50
[[Z1002]] label, aliases
263917
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z31697"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z6091",
"Z17K2": "Z31697K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "subject"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z60",
"Z17K2": "Z31697K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "language"
}
]
}
}
],
"Z8K2": "Z89",
"Z8K3": [
"Z20",
"Z31698",
"Z31707",
"Z33242"
],
"Z8K4": [
"Z14",
"Z31700"
],
"Z8K5": "Z31697"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Wikipedia language-edition link for Wikidata item"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31",
{
"Z1K1": "Z31",
"Z31K1": "Z1002",
"Z31K2": [
"Z6",
"Wikipedia link for Wikidata item if available",
"article link",
"Wikipedia article for language",
"Wikipedia article link (language-edition page)"
]
}
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "returns a hyperlink to the Wikipedia article for a given Wikidata item and language, if a sitelink is available, using the page name rather than the Wikidata label (compare Z29588); otherwise empty"
}
]
}
}
de51v61cunsgvl87unrmja0i1nqtlod
Z31700
0
77010
263900
254303
2026-04-08T08:15:06Z
GrounderUK
50
+[[Z89]] <> when none (for now?)
263900
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z31700"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z31697",
"Z14K2": {
"Z1K1": "Z7",
"Z7K1": "Z802",
"Z802K1": {
"Z1K1": "Z7",
"Z7K1": "Z813",
"Z813K1": {
"Z1K1": "Z7",
"Z7K1": "Z6839",
"Z6839K1": {
"Z1K1": "Z18",
"Z18K1": "Z31697K1"
},
"Z6839K2": [
"Z6",
"wiki"
],
"Z6839K3": [
"Z60",
{
"Z1K1": "Z18",
"Z18K1": "Z31697K2"
}
]
}
},
"Z802K2": {
"Z1K1": "Z89",
"Z89K1": ""
},
"Z802K3": {
"Z1K1": "Z7",
"Z7K1": "Z30016",
"Z30016K1": {
"Z1K1": "Z7",
"Z7K1": "Z803",
"Z803K1": {
"Z1K1": "Z39",
"Z39K1": "Z6039K5"
},
"Z803K2": {
"Z1K1": "Z7",
"Z7K1": "Z811",
"Z811K1": {
"Z1K1": "Z7",
"Z7K1": "Z6839",
"Z6839K1": {
"Z1K1": "Z18",
"Z18K1": "Z31697K1"
},
"Z6839K2": [
"Z6",
"wiki"
],
"Z6839K3": [
"Z60",
{
"Z1K1": "Z18",
"Z18K1": "Z31697K2"
}
]
}
}
},
"Z30016K2": {
"Z1K1": "Z7",
"Z7K1": "Z803",
"Z803K1": {
"Z1K1": "Z39",
"Z39K1": "Z6039K4"
},
"Z803K2": {
"Z1K1": "Z7",
"Z7K1": "Z811",
"Z811K1": {
"Z1K1": "Z7",
"Z7K1": "Z6839",
"Z6839K1": {
"Z1K1": "Z18",
"Z18K1": "Z31697K1"
},
"Z6839K2": [
"Z6",
"wiki"
],
"Z6839K3": [
"Z60",
{
"Z1K1": "Z18",
"Z18K1": "Z31697K2"
}
]
}
}
}
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Wikipedia link for Wikidata item, Composition"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
0os2a2iu7futpm1poantiary33fa1vn
Z32176
0
78335
263833
258416
2026-04-08T02:12:36Z
ChaoticVermillion
31127
Added Z33237 and Z32359 to the approved list of test cases
263833
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z32176"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z6095",
"Z17K2": "Z32176K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "adjective"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z13518",
"Z17K2": "Z32176K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "ordinal"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z60",
"Z17K2": "Z32176K3",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "preferred dialect"
}
]
}
}
],
"Z8K2": "Z11",
"Z8K3": [
"Z20",
"Z33237",
"Z32359"
],
"Z8K4": [
"Z14"
],
"Z8K5": "Z32176"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Malay ordinal-superlative construction"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "\"ke-n ter...\" contoh \"kedua terbesar\", \"keempat teramai\""
}
]
}
}
je2xutjxniyn3i1aopxjd9h3ztrapo3
Z32196
0
78355
263824
263417
2026-04-08T01:32:06Z
Hakimi97
198
263824
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z32196"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z32176",
"Z14K2": {
"Z1K1": {
"Z1K1": "Z7",
"Z7K1": "Z802",
"Z802K1": {
"Z1K1": "Z7",
"Z7K1": "Z13522",
"Z13522K1": {
"Z1K1": "Z18",
"Z18K1": "Z32176K2"
},
"Z13522K2": {
"Z1K1": "Z13518",
"Z13518K1": "1"
}
},
"Z802K2": {
"Z1K1": "Z7",
"Z7K1": "Z32177",
"Z32177K1": {
"Z1K1": "Z18",
"Z18K1": "Z32176K1"
},
"Z32177K2": {
"Z1K1": "Z18",
"Z18K1": "Z32176K3"
}
},
"Z802K3": {
"Z1K1": "Z11",
"Z11K1": {
"Z1K1": "Z7",
"Z7K1": "Z14404",
"Z14404K1": {
"Z1K1": "Z7",
"Z7K1": "Z32177",
"Z32177K1": {
"Z1K1": "Z18",
"Z18K1": "Z32176K1"
},
"Z32177K2": {
"Z1K1": "Z18",
"Z18K1": "Z32176K3"
}
}
},
"Z11K2": {
"Z1K1": "Z7",
"Z7K1": "Z15175",
"Z15175K1": {
"Z1K1": "Z7",
"Z7K1": "Z30603",
"Z30603K1": {
"Z1K1": "Z18",
"Z18K1": "Z32176K2"
}
},
"Z15175K2": {
"Z1K1": "Z7",
"Z7K1": "Z14396",
"Z14396K1": {
"Z1K1": "Z7",
"Z7K1": "Z32177",
"Z32177K1": {
"Z1K1": "Z18",
"Z18K1": "Z32176K1"
},
"Z32177K2": {
"Z1K1": "Z18",
"Z18K1": "Z32176K3"
}
}
},
"Z15175K3": {
"Z1K1": "Z7",
"Z7K1": "Z802",
"Z802K1": {
"Z1K1": "Z7",
"Z7K1": "Z10615",
"Z10615K1": {
"Z1K1": "Z7",
"Z7K1": "Z14396",
"Z14396K1": {
"Z1K1": "Z7",
"Z7K1": "Z32177",
"Z32177K1": {
"Z1K1": "Z18",
"Z18K1": "Z32176K1"
},
"Z32177K2": {
"Z1K1": "Z18",
"Z18K1": "Z32176K3"
}
}
},
"Z10615K2": "ter"
},
"Z802K2": " ",
"Z802K3": " "
}
}
}
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Malay ordinal-superlative construct, composition"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
aulnzjgikgjwcihmozstjnei6sz4683
263834
263824
2026-04-08T02:13:55Z
ChaoticVermillion
31127
composition was in type
263834
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z32196"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z32176",
"Z14K2": {
"Z1K1": "Z7",
"Z7K1": "Z802",
"Z802K1": {
"Z1K1": "Z7",
"Z7K1": "Z13522",
"Z13522K1": {
"Z1K1": "Z18",
"Z18K1": "Z32176K2"
},
"Z13522K2": {
"Z1K1": "Z13518",
"Z13518K1": "1"
}
},
"Z802K2": {
"Z1K1": "Z7",
"Z7K1": "Z32177",
"Z32177K1": {
"Z1K1": "Z18",
"Z18K1": "Z32176K1"
},
"Z32177K2": {
"Z1K1": "Z18",
"Z18K1": "Z32176K3"
}
},
"Z802K3": {
"Z1K1": "Z11",
"Z11K1": {
"Z1K1": "Z7",
"Z7K1": "Z14404",
"Z14404K1": {
"Z1K1": "Z7",
"Z7K1": "Z32177",
"Z32177K1": {
"Z1K1": "Z18",
"Z18K1": "Z32176K1"
},
"Z32177K2": {
"Z1K1": "Z18",
"Z18K1": "Z32176K3"
}
}
},
"Z11K2": {
"Z1K1": "Z7",
"Z7K1": "Z15175",
"Z15175K1": {
"Z1K1": "Z7",
"Z7K1": "Z30603",
"Z30603K1": {
"Z1K1": "Z18",
"Z18K1": "Z32176K2"
}
},
"Z15175K2": {
"Z1K1": "Z7",
"Z7K1": "Z14396",
"Z14396K1": {
"Z1K1": "Z7",
"Z7K1": "Z32177",
"Z32177K1": {
"Z1K1": "Z18",
"Z18K1": "Z32176K1"
},
"Z32177K2": {
"Z1K1": "Z18",
"Z18K1": "Z32176K3"
}
}
},
"Z15175K3": {
"Z1K1": "Z7",
"Z7K1": "Z802",
"Z802K1": {
"Z1K1": "Z7",
"Z7K1": "Z10615",
"Z10615K1": {
"Z1K1": "Z7",
"Z7K1": "Z14396",
"Z14396K1": {
"Z1K1": "Z7",
"Z7K1": "Z32177",
"Z32177K1": {
"Z1K1": "Z18",
"Z18K1": "Z32176K1"
},
"Z32177K2": {
"Z1K1": "Z18",
"Z18K1": "Z32176K3"
}
}
},
"Z10615K2": "ter"
},
"Z802K2": " ",
"Z802K3": " "
}
}
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Malay ordinal-superlative construct, composition"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
p8mb954gq3k8ew92u3hgzrnu75ij3xg
Z32248
0
78439
263743
258642
2026-04-07T13:57:10Z
Hakimi97
198
263743
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z32248"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z32243",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z32243",
"Z32243K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q65"
},
"Z32243K2": {
"Z1K1": "Z6091",
"Z6091K1": "Q12935276"
},
"Z32243K3": {
"Z1K1": "Z6091",
"Z6091K1": "Q515"
},
"Z32243K4": {
"Z1K1": "Z6091",
"Z6091K1": "Q99"
}
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z14392",
"Z14392K2": {
"Z1K1": "Z11",
"Z11K1": "Z1531",
"Z11K2": "Los Angeles merupakan bandar terbesar di California."
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Los Angeles merupakan bandar terbesar di..."
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
565pxn29t24jhp4g08or81p2frzmhky
263830
263743
2026-04-08T02:03:09Z
Hakimi97
198
263830
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z32248"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z32243",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z32243",
"Z32243K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q65"
},
"Z32243K2": {
"Z1K1": "Z6091",
"Z6091K1": "Q12935276"
},
"Z32243K3": {
"Z1K1": "Z6091",
"Z6091K1": "Q515"
},
"Z32243K4": {
"Z1K1": "Z6091",
"Z6091K1": "Q99"
}
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z14392",
"Z14392K2": {
"Z1K1": "Z11",
"Z11K1": "Z1531",
"Z11K2": "Los Angeles merupakan bandar terbesar di California."
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Los Angeles merupakan bandar terbesar..."
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
tlc6jj2qf2gm314g5rcsovapp02itpo
Wikifunctions:Requests for deletions/Archive/2026/03
4
78564
263842
262868
2026-04-08T03:08:05Z
SpBot
978
archiving 2 sections from [[Wikifunctions:Requests for deletions]] (after section [[Wikifunctions:Requests for deletions/Archive/2026/03#Z31198,_Z31199,_Z31200|Z31198,_Z31199,_Z31200]])
263842
wikitext
text/x-wiki
{{Talkarchive}}
== [[Z18386]] ==
It has no tests and no implementations. It probably never did anything. It was cloned long ago, and it was not so valid—it had wrong identity, which I fixed. But it should probably be just deleted. [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 18:23, 19 March 2026 (UTC)
:Considering it has been empty for so long, taking the liberty to delete it. CC @[[User:So9q|So9q]], though I guess they were also pinged in the talk of that function. Happy to undelete if interested in working on it. <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:<[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]></span> 09:38, 20 March 2026 (UTC)
:{{done}} <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:<[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]></span> 09:38, 20 March 2026 (UTC)
:<small>This section was archived on a request by: <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:<[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]></span> 09:38, 20 March 2026 (UTC)</small>
== [[Z23787]] ==
No implementations or tests, created by a user blocked in another project, essentially vandalism. [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 16:15, 21 March 2026 (UTC)
:{{d}} —‍[[User:Mdaniels5757|Mdaniels5757]] ([[User talk:Mdaniels5757|talk]] • [[Special:Contributions/Mdaniels5757|contribs]]) 22:24, 21 March 2026 (UTC)
::<small>This section was archived on a request by: —‍[[User:Mdaniels5757|Mdaniels5757]] ([[User talk:Mdaniels5757|talk]] • [[Special:Contributions/Mdaniels5757|contribs]]) 22:24, 21 March 2026 (UTC)</small>
== [[Z24744]] ==
No implementations or tests, unclear purpose, created by a user with no other edits. [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 16:15, 21 March 2026 (UTC)
:{{d}} —‍[[User:Mdaniels5757|Mdaniels5757]] ([[User talk:Mdaniels5757|talk]] • [[Special:Contributions/Mdaniels5757|contribs]]) 22:24, 21 March 2026 (UTC)
::<small>This section was archived on a request by: —‍[[User:Mdaniels5757|Mdaniels5757]] ([[User talk:Mdaniels5757|talk]] • [[Special:Contributions/Mdaniels5757|contribs]]) 22:24, 21 March 2026 (UTC)</small>
== [[Z21464]] ==
No implementations or tests, unclear purpose, very strange description, created by a user with almost no other edits. [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 00:01, 22 March 2026 (UTC)
:{{done}} <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:<[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]></span> 03:00, 22 March 2026 (UTC)
:<small>This section was archived on a request by: <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:<[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]></span> 03:00, 22 March 2026 (UTC)</small>
== [[Z16491]] ==
No implementations or tests, and the [[User talk:JJPMaster#Z16491|user who created it has no plans to do anything with it]]. [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 00:02, 22 March 2026 (UTC)
:{{done}} <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:<[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]></span> 03:01, 22 March 2026 (UTC)
:<small>This section was archived on a request by: <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:<[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]></span> 03:01, 22 March 2026 (UTC)</small>
== [[Z32275]] ==
I am using [[Z32326]] instead of this, so can someone delete [[Z32275]].
:{{done}} <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:<[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]></span> 03:03, 22 March 2026 (UTC)
:<small>This section was archived on a request by: <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:<[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]></span> 03:03, 22 March 2026 (UTC)</small>
== [[Z27290]] ==
No implementations or tests, and [[User talk:Jens Ohlig#Z27290|the user who created it says that it can be deleted]]. [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 16:59, 22 March 2026 (UTC)
:{{done}} <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:<[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]></span> 02:44, 23 March 2026 (UTC)
:<small>This section was archived on a request by: <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:<[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]></span> 02:44, 23 March 2026 (UTC)</small>
== [[Z32413]], [[Z32414]], [[Z32418]] ==
Vandalism. [[User:NguoiDungKhongDinhDanh|<span class="skin-invert" style="color:black;font-family:Monotype Corsiva;font-size:110%;font-weight:normal;line-height:normal">NguoiDungKhongDinhDanh</span>]] 12:12, 23 March 2026 (UTC)
:{{done}} <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:<[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]></span> 12:51, 23 March 2026 (UTC)
:<small>This section was archived on a request by: <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:<[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]></span> 12:51, 23 March 2026 (UTC)</small>
== [[Z32458]], [[Z32459]] ==
Duplicate. [[User:GZWDer|GZWDer]] ([[User talk:GZWDer|talk]]) 16:52, 23 March 2026 (UTC)
:{{done}} <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:<[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]></span> 06:06, 24 March 2026 (UTC)
:<small>This section was archived on a request by: <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:<[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]></span> 06:06, 24 March 2026 (UTC)</small>
== [[Z31888]], [[Z31889]] ==
Unused duplicate. [[User:GZWDer|GZWDer]] ([[User talk:GZWDer|talk]]) 13:16, 24 March 2026 (UTC)
:{{done}} <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:<[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]></span> 08:49, 25 March 2026 (UTC)
:<small>This section was archived on a request by: <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:<[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]></span> 08:49, 25 March 2026 (UTC)</small>
== [[Z26359]], [[Z26360]] ==
The above edits are not being used, it was a test edit done to see how wiki function is and works. Requesting it to be deleted.[[User:Swayam Agrahari|Swayam Agrahari]] ([[User talk:Swayam Agrahari|talk]]) 05:18, 29 March 2026 (UTC)
:{{done}} <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:<[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]></span> 07:29, 29 March 2026 (UTC)
:<small>This section was archived on a request by: <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:<[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]></span> 07:29, 29 March 2026 (UTC)</small>
== [[Z30255]] ==
(Brazilian Portuguese)
“de lista para cadeia única”
Duplicate of [[Z12899]]. [[User:EJPPhilippines|EJPPhilippines]] ([[User talk:EJPPhilippines|talk]]) 13:49, 31 March 2026 (UTC)
:I suppose the Brazilian Portuguese label should be captured… it’s more of a merge, really. @[[User:EnaldoSS|EnaldoSS]] [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 15:31, 31 March 2026 (UTC)
::Sorry, I wasn't aware of the other function. I agree with the merge. [[User:EnaldoSS|EnaldoSS]] ([[User talk:EnaldoSS|talk]]) 19:06, 31 March 2026 (UTC)
:@[[User:EnaldoSS|EnaldoSS]] If you can add the pt-br labels to the original function I can delete the duplicate. I don't know Portugese, so I cannot confidently do that myself. <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:<[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]></span> 06:04, 1 April 2026 (UTC)
::{{Done}} [[User:EnaldoSS|EnaldoSS]] ([[User talk:EnaldoSS|talk]]) 12:18, 1 April 2026 (UTC)
:{{done}} <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:<[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]></span> 12:59, 1 April 2026 (UTC)
:<small>This section was archived on a request by: <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:<[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]></span> 12:59, 1 April 2026 (UTC)</small>
== [[Z31198]], [[Z31199]], [[Z31200]] ==
The function [[Z31198]] doesn't seem to do anything useful, the description in Russian (which I know) doesn't make a lot of sense, and the only implementation is a composition that calls the function itself. Perhaps it was a test to see how infinite recursion works. [[User:Amire80|Amir E. Aharoni]] ([[User talk:Amire80|talk]]) 02:08, 22 March 2026 (UTC)
:CC @[[User:Ступино|Ступино]] <span style="font-family:monospace;font-weight:bold">[[User:Bunnypranav|<span style="color:#63b3ed">~/Bunny</span><span style="color:#2c5282">pranav</span>]]:<[[User talk:Bunnypranav|<span style="color:#63b3ed">ping</span>]]></span> 02:52, 23 March 2026 (UTC)
:{{done}} [[User:Ameisenigel|Ameisenigel]] ([[User talk:Ameisenigel|talk]]) 17:01, 6 April 2026 (UTC)
:<small>This section was archived on a request by: [[User:Ameisenigel|Ameisenigel]] ([[User talk:Ameisenigel|talk]]) 17:01, 6 April 2026 (UTC)</small>
== [[Z30399]] ==
The implementation of [[Z30399]] has been strictly improved in [[Z32738]] and so can be removed. [[User:Infernostars|infernostars]] <small>([[User talk:Infernostars|talk]]) ([[Special:Contributions/Infernostars|contribs]])</small> 03:49, 29 March 2026 (UTC)
:We don’t generally remove an implementation just because there’s a better one. In this case, it looks like the newer implementation started as a fork from the original, in which case they share an edit history. [[User:GrounderUK|GrounderUK]] ([[User talk:GrounderUK|talk]]) 06:27, 29 March 2026 (UTC)
:{{not done}} no valid reason for deletion. --[[User:Ameisenigel|Ameisenigel]] ([[User talk:Ameisenigel|talk]]) 17:02, 6 April 2026 (UTC)
:<small>This section was archived on a request by: [[User:Ameisenigel|Ameisenigel]] ([[User talk:Ameisenigel|talk]]) 17:02, 6 April 2026 (UTC)</small>
lxorrrc7bxxnhp6xroiwtgahv3s6byr
Z32359
0
78593
263748
259059
2026-04-07T14:06:46Z
Hakimi97
198
263748
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z32359"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z32176",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z32176",
"Z32176K1": {
"Z1K1": "Z6095",
"Z6095K1": "L310674"
},
"Z32176K2": {
"Z1K1": "Z13518",
"Z13518K1": "2"
},
"Z32176K3": "Z1531"
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z14392",
"Z14392K2": {
"Z1K1": "Z11",
"Z11K1": "Z1531",
"Z11K2": "kedua tertinggi"
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "kedua tertinggi (Malay)"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
cg11ojcp99nhir56q9wsm9x5gakuqhv
263826
263748
2026-04-08T01:33:06Z
Hakimi97
198
263826
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z32359"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z32176",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z32176",
"Z32176K1": {
"Z1K1": "Z6095",
"Z6095K1": "L310674"
},
"Z32176K2": {
"Z1K1": "Z13518",
"Z13518K1": "2"
},
"Z32176K3": "Z1531"
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z14392",
"Z14392K2": {
"Z1K1": "Z11",
"Z11K1": "Z1531",
"Z11K2": "kedua tertinggi"
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "kedua tertinggi (Malay ord-sup)"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
520a44ls3zwp808ymtagyh1fxsypyif
263829
263826
2026-04-08T01:39:32Z
Hakimi97
198
263829
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z32359"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z32176",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z32176",
"Z32176K1": {
"Z1K1": "Z6095",
"Z6095K1": "L310674"
},
"Z32176K2": {
"Z1K1": "Z13518",
"Z13518K1": "2"
},
"Z32176K3": "Z1531"
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z14392",
"Z14392K2": {
"Z1K1": "Z11",
"Z11K1": "Z1531",
"Z11K2": "kedua tertinggi"
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "2, tinggi =\u003E kedua tertinggi"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
89lbabg0sx59y42kddrhpplnjun6m0u
Z32698
0
79048
263919
260681
2026-04-08T10:51:28Z
Mormegil
150
Added Z32699 a Z32700 to the approved list of test cases
263919
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z32698"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z6091",
"Z17K2": "Z32698K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1062",
"Z11K2": "entita"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "entity"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z6091",
"Z17K2": "Z32698K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1062",
"Z11K2": "třída"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "class"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z6091",
"Z17K2": "Z32698K3",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1062",
"Z11K2": "umístění"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "location"
}
]
}
}
],
"Z8K2": "Z11",
"Z8K3": [
"Z20",
"Z32699",
"Z32700"
],
"Z8K4": [
"Z14"
],
"Z8K5": "Z32698"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1062",
"Z11K2": "vyjádřit umístění pomocí entity a třídy, čeština"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "State location using entity and class, Czech"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1062",
"Z11K2": "Vytvoří českou větu popisující polohu a třídu dané entity. Např. „Soul je město v Jižní Koreji.“"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Implementation of Z26570 for Czech"
}
]
}
}
n083saxxtsu9ub1epztgq6zt6qataz6
Z32701
0
79051
263918
260687
2026-04-08T10:50:32Z
Mormegil
150
fix case
263918
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z32701"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z32698",
"Z14K2": {
"Z1K1": "Z7",
"Z7K1": "Z26107",
"Z26107K1": "Z1062",
"Z26107K2": {
"Z1K1": "Z7",
"Z7K1": "Z22511",
"Z22511K1": {
"Z1K1": "Z7",
"Z7K1": "Z12899",
"Z12899K1": [
"Z6",
{
"Z1K1": "Z7",
"Z7K1": "Z23753",
"Z23753K1": {
"Z1K1": "Z18",
"Z18K1": "Z32698K1"
},
"Z23753K2": "Z1062"
},
" je ",
{
"Z1K1": "Z7",
"Z7K1": "Z23753",
"Z23753K1": {
"Z1K1": "Z18",
"Z18K1": "Z32698K2"
},
"Z23753K2": "Z1062"
},
{
"Z1K1": "Z7",
"Z7K1": "Z32541",
"Z32541K1": {
"Z1K1": "Z7",
"Z7K1": "Z30374",
"Z30374K1": {
"Z1K1": "Z18",
"Z18K1": "Z32698K3"
},
"Z30374K2": [
"Z6091",
{
"Z1K1": "Z6091",
"Z6091K1": "Q202142"
},
{
"Z1K1": "Z6091",
"Z6091K1": "Q110786"
}
],
"Z30374K3": "Z1062"
}
}
],
"Z12899K2": ""
}
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1062",
"Z11K2": "kompozicí česky vyjádřit umístění"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
f6ffkuqcjustxobdxbyild7ooamd04l
263921
263918
2026-04-08T10:52:28Z
Mormegil
150
+missing space
263921
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z32701"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z32698",
"Z14K2": {
"Z1K1": "Z7",
"Z7K1": "Z26107",
"Z26107K1": "Z1062",
"Z26107K2": {
"Z1K1": "Z7",
"Z7K1": "Z22511",
"Z22511K1": {
"Z1K1": "Z7",
"Z7K1": "Z12899",
"Z12899K1": [
"Z6",
{
"Z1K1": "Z7",
"Z7K1": "Z23753",
"Z23753K1": {
"Z1K1": "Z18",
"Z18K1": "Z32698K1"
},
"Z23753K2": "Z1062"
},
" je ",
{
"Z1K1": "Z7",
"Z7K1": "Z23753",
"Z23753K1": {
"Z1K1": "Z18",
"Z18K1": "Z32698K2"
},
"Z23753K2": "Z1062"
},
" ",
{
"Z1K1": "Z7",
"Z7K1": "Z32541",
"Z32541K1": {
"Z1K1": "Z7",
"Z7K1": "Z30374",
"Z30374K1": {
"Z1K1": "Z18",
"Z18K1": "Z32698K3"
},
"Z30374K2": [
"Z6091",
{
"Z1K1": "Z6091",
"Z6091K1": "Q202142"
},
{
"Z1K1": "Z6091",
"Z6091K1": "Q110786"
}
],
"Z30374K3": "Z1062"
}
}
],
"Z12899K2": ""
}
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1062",
"Z11K2": "kompozicí česky vyjádřit umístění"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
qdhv6jhdb8v2cwvqvwhi40z54bgd6ya
Z32702
0
79052
263739
261110
2026-04-07T13:53:11Z
Csisc
991
263739
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z32702"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z6091",
"Z17K2": "Z32702K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "subject"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z6091",
"Z17K2": "Z32702K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "object"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z6091",
"Z17K2": "Z32702K3",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "verb"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z40",
"Z17K2": "Z32702K4",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "subject is plural?"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z40",
"Z17K2": "Z32702K5",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "object is plural?"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z60",
"Z17K2": "Z32702K6",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "language"
}
]
}
}
],
"Z8K2": "Z11",
"Z8K3": [
"Z20",
"Z32704",
"Z32705"
],
"Z8K4": [
"Z14",
"Z32707"
],
"Z8K5": "Z32702"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "[X] [present verb] [Y], Multilingual"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Creates a sentence of the form [X] [present verb] [Y], where X \u0026 Y can be singular or plural."
}
]
}
}
olohi967abxi6emqf48jo0c5gkrtoru
Z32974
0
79497
263781
263327
2026-04-07T15:16:45Z
Asked42
932
263781
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z32974"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z32973",
"Z14K2": {
"Z1K1": "Z7",
"Z7K1": "Z33238",
"Z33238K1": [
"Z6",
{
"Z1K1": "Z7",
"Z7K1": "Z23753",
"Z23753K1": {
"Z1K1": "Z18",
"Z18K1": "Z32973K1"
},
"Z23753K2": "Z1011"
},
{
"Z1K1": "Z7",
"Z7K1": "Z18831",
"Z18831K1": {
"Z1K1": "Z7",
"Z7K1": "Z23753",
"Z23753K1": {
"Z1K1": "Z18",
"Z18K1": "Z32973K4"
},
"Z23753K2": "Z1011"
}
},
{
"Z1K1": "Z7",
"Z7K1": "Z28286",
"Z28286K1": {
"Z1K1": "Z7",
"Z7K1": "Z6825",
"Z6825K1": {
"Z1K1": "Z7",
"Z7K1": "Z811",
"Z811K1": {
"Z1K1": "Z7",
"Z7K1": "Z23471",
"Z23471K1": {
"Z1K1": "Z18",
"Z18K1": "Z32973K2"
},
"Z23471K2": "Z1011"
}
}
}
},
{
"Z1K1": "Z7",
"Z7K1": "Z23753",
"Z23753K1": {
"Z1K1": "Z18",
"Z18K1": "Z32973K3"
},
"Z23753K2": "Z1011"
}
]
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Superlative definition, in Bangla (comp)"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
pyrho9fylj7e0glmj1w1smuzsdxlt78
Z33003
0
79549
263765
262528
2026-04-07T14:33:23Z
Jdforrester (WMF)
4
263765
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33003"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z14326",
"Z14K3": {
"Z1K1": "Z16",
"Z16K1": "Z600",
"Z16K2": "function Z14326( Z14326K1, Z14326K2 ) {\nreturn Z14326K1.Z60K1 == Z14326K2.Z60K1;\n}"
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "JS only assert Z60K1 identities are the same"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
7x5viybnl82owgon15mg39x12oi7n96
Wikifunctions:Type proposal/Syntactic table
4
79588
263648
263382
2026-04-07T12:22:30Z
Dv103
11127
/* Comments */ Reply
263648
wikitext
text/x-wiki
One aim of the NLG system is to have a small number of language-specific functions. It is OK to have many abstract functions, but the specific languages should ideally be less numerous.
For example, consider the following six outputs:
# Brač is an island.
# Brač is a beautiful island.
# Brač is a beautiful [[:en:Island|island]].
# '''Brač''' is an island.
# '''Brač''' is a beautiful island.
# '''Brač''' is a beautiful [[:en:Island|island]].
How many language-specific functions would that need?
If I look at the current best practices, I seem to land on six language-specific functions, one for each output. Even though grammatically there seem to be only two major operations:
* Connect two noun phrases in a predicative sentence: Brač is an island
* Combine an adjective and a noun to form a noun phrase: a beautiful island
Besides that, we would have functions to turn a phrase into a link or to give strong emphasis to a phrase, but do these need to be language-specific? I think not.
We seem to have all the necessary pieces for the outputs already available:
* <code>Indefinite noun phrase with adjective</code>: a beautiful island ([https://www.wikifunctions.org/wiki/Z22664?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z22664%22%2C%22Z22664K1%22%3A%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q23442%22%7D%2C%22Z22664K2%22%3A%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q7242%22%7D%2C%22Z22664K3%22%3A%22Z1002%22%7D function call])
* <code>Article-less instantiating fragment</code>: Brač is an island. ([https://www.wikifunctions.org/wiki/Z26039?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z26039%22%2C%22Z26039K1%22%3A%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q922%22%7D%2C%22Z26039K2%22%3A%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q23442%22%7D%2C%22Z26039K3%22%3A%22Z1002%22%7D function call])
* <code>Strong importance</code>: '''Brač''' ([https://www.wikifunctions.org/view/en/Z28914?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z28914%22%2C%22Z28914K1%22%3A%22Bra%C4%8D%22%7D function call])
* <code>HTML link to Wikipedia article about Wikidata item</code>: [[:en:Island|island]] ([https://www.wikifunctions.org/view/en/Z29588?call=%7B%22Z1K1%22%3A%22Z7%22%2C%22Z7K1%22%3A%22Z29588%22%2C%22Z29588K1%22%3A%22Z1002%22%2C%22Z29588K2%22%3A%7B%22Z1K1%22%3A%22Z6091%22%2C%22Z6091K1%22%3A%22Q23442%22%7D%7D function call])
But it is currently not possible to plug these together to allow for the creation of the outputs above, beyond the first one.
That’s partially because of the involved types:
* <code>indefinite noun phrase with adjective</code> takes two <code>Wikidata item references</code> and a <code>language</code> and returns a <code>string</code>
* <code>article-less instantiating fragment</code> does the same
* <code>Strong importance</code> takes a <code>string</code> and returns an <code>HTML fragment</code>
* <code>HTML link to Wikipedia article about Wikidata item</code> takes a <code>language</code> and a <code>Wikidata item reference</code> and returns an <code>HTML fragment</code>
It seems that what we would want to do is the following (the language parameter has been omitted for legibility):
# <code>instantiating( Brač, island )</code>
# <code>instantiating( Brač, noun with adjective( island, beauty ) )</code>
# <code>instantiating( Brač, noun with adjective( link( island ), beauty ) )</code>
# <code>instantiating( strong( Brač ), island )</code>
# <code>instantiating( strong( Brač ), noun with adjective( island, beauty ) )</code>
# <code>instantiating( strong( Brač ), noun with adjective( link( island ), beauty ) )</code>
If we want to be able to do this, the type of <code>Brač</code> and the return type of <code>strong</code> must be the same, as well as the type of <code>island</code> and the return types of <code>link</code> and <code>noun with adjective</code>.
What could that type be?
In English, as usual, we may get seduced to a certain simplicity: we could probably just use <code>HTML fragment</code> as the type and probably get away with it! All of the operations above seem to work out.
But in French (or Italian or Spanish or many other languages) that wouldn’t work: <code>noun with adjective</code> needs to know the gender of the noun in order to select the right form of the adjective (the adjective and the noun need to agree with each other). HTML fragment does not provide that information.
I don’t think that there currently is a good type for that. I suggest introducing a new type, the <code>syntactic table</code>. This is inspired by [[:en:Grammatical Framework (programming language)|Grammatical Framework]], and in core similar to a [[Wikifunctions:Type proposals/Syntactic type|proposal I made last year]], but I learned a lot from the comments and modified the type accordingly, making it considerably simpler.
<code>Syntactic table</code> has the following four keys:
# <code>Language</code>, i.e. which <code>natural language</code> is this table for
# <code>Part of speech</code>, i.e. which part of speech is this (noun, noun phrase, verb, adjective, etc.) (is this a lightweight enumeration or a <code>Wikidata item reference</code>?)
# <code>Inherent features</code>, <code>list</code> of <code>Wikidata item references</code> representing grammatical features, e.g. <code>masculine</code>, <code>plural</code>, etc.
# <code>Options</code>, a <code>list</code> of <code>pairs</code> of a <code>list</code> of <code>Wikidata item references</code> (representing grammatical features) and a <code>list</code> of <code>HTML fragments</code>
Or, do visualize it, here is a visualization of the syntactic table for the German noun ''“Stadt”'', meaning ''city''.
{| class="wikitable"
|'''''language'''''
| colspan="4" |German
|-
|'''''Part of speech'''''
| colspan="4" |noun
|-
|'''''Inherent feature'''''
| colspan="4" |feminine
|-
|'''''options'''''
|'''nominative'''
|'''genitive'''
|'''dative'''
|'''accusative'''
|-
|'''singular'''
|Stadt
|Stadt
|Stadt
|Stadt
|-
|'''plural'''
|Städte
|Städte
|Städten
|Städte
|}
And here is a partial visualization of the syntactic table for the German adjective ''“schön”'', meaning ''beautiful''.
{| class="wikitable"
|'''''language'''''
| colspan="4" |German
|-
|'''''Part of speech'''''
| colspan="4" |adjective
|-
|'''''Inherent feature'''''
| colspan="4" |—
|-
| rowspan="2" |'''''options'''''
| colspan="3" |'''singular'''
| rowspan="2" |'''plural'''
|-
|'''masculine'''
|'''feminine'''
|'''neuter'''
|-
|'''nominative'''
|schöner
|schöne
|schönes
|schönen
|-
|'''genitive'''
|schönen
|schönen
|schönen
|schönen
|-
|'''dative'''
|schönen
|schönen
|schönen
|schönen
|-
|'''accusative'''
|schönen
|schöne
|schönes
|schönen
|}
Now there would be a number of functions working on <code>syntactic tables</code>: for example, the <code>merge</code> function, which takes two tables and returns a table, representing the merger.
The inherent features of each of the tables are used to filter the options in each other tables. In addition, the options are combined together to create a new map of forms. So the result of the merging the two tables with a simple spaced concatenation would be:
{| class="wikitable"
|'''''language'''''
| colspan="4" |German
|-
|'''''Part of speech'''''
| colspan="4" |core noun phrase
|-
|'''''Inherent feature'''''
| colspan="4" |feminine
|-
|'''''options'''''
|'''nominative'''
|'''genitive'''
|'''dative'''
|'''accusative'''
|-
|'''singular'''
|schöne Stadt
|schönen Stadt
|schönen Stadt
|schöne Stadt
|-
|'''plural'''
|schönen Städte
|schönen Städte
|schönen Städten
|schönen Städte
|}
Another function could be used to bold a part of the text (which is a mostly language-independent operation). So we might have bolded the noun ''‘Stadt’'' before, which would result in the following output:
{| class="wikitable"
|'''''language'''''
| colspan="4" |German
|-
|'''''Part of speech'''''
| colspan="4" |noun
|-
|'''''Inherent feature'''''
| colspan="4" |feminine
|-
|'''''options'''''
|'''nominative'''
|'''genitive'''
|'''dative'''
|'''accusative'''
|-
|'''singular'''
|'''Stadt'''
|'''Stadt'''
|'''Stadt'''
|'''Stadt'''
|-
|'''plural'''
|'''Städte'''
|'''Städte'''
|'''Städten'''
|'''Städte'''
|}
If we merge that with the adjective as before, we get the following result:
{| class="wikitable"
|'''''language'''''
| colspan="4" |German
|-
|'''''Part of speech'''''
| colspan="4" |core noun phrase
|-
|'''''Inherent feature'''''
| colspan="4" |feminine
|-
|'''''options'''''
|'''nominative'''
|'''genitive'''
|'''dative'''
|'''accusative'''
|-
|'''singular'''
|schöne '''Stadt'''
|schönen '''Stadt'''
|schönen '''Stadt'''
|schöne '''Stadt'''
|-
|'''plural'''
|schönen '''Städte'''
|schönen '''Städte'''
|schönen '''Städten'''
|schönen '''Städte'''
|}
And if we merge that with an indefinite article, we get a full noun phrase:
{| class="wikitable"
|'''''language'''''
| colspan="4" |German
|-
|'''''Part of speech'''''
| colspan="4" |noun phrase
|-
|'''''Inherent feature'''''
| colspan="4" |feminine
|-
|'''''options'''''
|'''nominative'''
|'''genitive'''
|'''dative'''
|'''accusative'''
|-
|'''singular'''
|eine schöne '''Stadt'''
|einer schönen '''Stadt'''
|einer schönen '''Stadt'''
|eine schöne '''Stadt'''
|-
|'''plural'''
|schönen '''Städte'''
|schönen '''Städte'''
|schönen '''Städten'''
|schönen '''Städte'''
|}
Note that we are always operating on <code>syntactic tables</code>, both in the input and in the output, allowing us to combine the functions flexibly.
Compared to my [[Wikifunctions:Type proposals/Syntactic type|previous proposal]], we would not be creating hundreds of types, but just a small number (one basically, maybe some supporting types), answering one of the biggest criticisms. Also, the new type will be available immediately for all languages that want to use it.
To summarize, the idea is to have two kind of functions: functions that are usable across all (or at least most) languages (such as <code>link</code> or <code>strong emphasis</code>) and functions that need to be implemented in each language (such as <code>noun with adjective</code>). Both can use the same type, and thus be combined in a way that can reduce the number of functions in the latter group.
== Discusssion ==
=== Cory's thoughts ===
This proposal can get us very far for languages with simple (-ish) morphologies. It will be less effective for morphologically rich language, where a syntactic table might contain thousands of forms, and where it might be more natural to apply these kinds of transformations only to parts of words. For example, while some languages might be okay with
<blockquote>schönen <bold>Städte</bold></blockquote>
others might prefer something like
<blockquote>schönen <bold>Städt</bold>e</blockquote>
(note the "e" standing outside of the bold chunk). This can even happen in English: if we wanted to make the phrasal verb "pick up" bold in a sentence, we'd have to deal with non-consecutive bold tokens, e.g.
<blockquote>Please <bold>pick</bold> it <bold>up</bold>.</blockquote>
More broadly, NLP systems tend to handle this kind of metadata in one of two ways: offset and inset annotation. Inset annotation looks like the above examples: tags that intervene directly in a data structure. Offset annotation might look more like this:
<pre>
{
"text": "Please pick it up.",
"spans": [
{ "tag": "bold", "begin": 7, "end": 11 },
{ "tag": "bold", "begin": 15, "end": 17 }
]
}
</pre>
Decisions like this are not unrelated to how we decide to represent linguistic elements more generally. A general, robust solution would involve treating linguistic units not as literal text strings but as symbolic transformational nodes. In this case, the system wouldn't operate over "Stadt" but over a richer structure containing 1) the syntactic usage of "Stadt," 2) the eventual inflected form of "Stadt," and 3) any additional annotations, such as bold text, that should be applied to the token.
It is also possible for these two paradigms to play nicely together. At the end of the day, our system will need to produce specific surface forms in sequence to create sentences, but how we get to those surface forms can vary. Some languages might use syntactic tables while others might need to function in terms of symbolic morphological transformations (if only to reduce the search space of possible syntactic tables!).
=== Further thoughts by Denny ===
Cory’s point is valid. In some languages, we will easily get to hundreds of forms. That may not be feasible. Questions are whether we can avoid to expand all these forms, or whether, maybe with a smart usage of quoting functions or some other mechanism, we can find a way to scale the system.
== Comments ==
* {{s}}: this isn't perfect, but it's much much better. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 16:32, 2 April 2026 (UTC)
* {{s}} I feel that this is a step that's required for handling different types of phrases. [[User:Jsamwrites|John Samuel]] 17:59, 2 April 2026 (UTC)
* {{s}} I like the idea as I really like spreadsheet functions and tables. As I like Boilerplate templates I hope this proposal can help making it easier to create a function for a specific sentence representing some Wikidata statements.--[[User:Hogü-456|Hogü-456]] ([[User talk:Hogü-456|talk]]) 16:17, 3 April 2026 (UTC)
* {{neutral|Comment}} I'm skeptical that we can attain general prose in non-European languages even with this extra context.<!--
--><br>Looking at your example of <code>noun_with_adjective[de] := (noun, adj) => matrix_product(concat_with_space)(adj, noun)</code>,<!--
--> each of the cells/entries in the table is a single [[Z89]], so it seems this Type is limited to grammars where applying an adjective to a noun is just a prefix and/or suffix.<!--
--> I've [[Talk:Z27137#Japanese|previously remarked]] that [[d:Q2116774|counters in Japanese]] can "migrate" to the verb (unlike in English, German, etc. where counters behave like adjectives).<!--
--> To accommodate this, either the language-specific <code>merge</code> Function would have to parse and split off the counter when embedding the noun phrase into a sentence,<!--
--> or this Type would have to somehow encode a split result with additional tagging on each segment.<!--
--><br>IMO a better model for applying formatting like boldface and hyperlinks would be as <code>Z882(Z11, Z883(Z6091, Z881(Z882(Z13518, Z13518))))</code>,<!--
--> that is, to do all linguistic processing on plaintext, but keep track of which span(s) in the string corresponds to each Item from the outer callsite.<!--
--> Then that outer Function can format and linkify the final string by iterating those ranges as ordered by their start index.<!--
--> [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 17:53, 3 April 2026 (UTC)
* {{o|Weakly oppose}} While I completely support the need to scale NLG functions outside simple fragment generating functions, I'm skeptical on the bottom-up approach that syntactic tables use. As already addressed, starting composing a sentence from the constituent parts is problematic, since in many instances the behaviour of a part of the sentence depends in non trivial ways to the entire structure of the sentence (in ways that are sometimes not neatly encodable in a simple table). I think that usually the best approach for NLG is top-down, which means that a function should try to generate an entire sentence, delegating to other functions the generation of parts of a sentence (providing the necessary grammatical context). When I have time, I'll try to formulate an alternative proposal. This type could still be a useful intetnal tool, but I think using it as the foundation for modular NLG can be very problematic. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 15:14, 5 April 2026 (UTC)
*:I've now formulated the proposal for [[Wikifunctions:Type proposals/Abstract sentence]] [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 12:22, 7 April 2026 (UTC)
* {{o}} per YoshiRulz and Dv103; I have started proposing types based on my own efforts at language generation at ,[[Wikifunctions:Type proposals/Syntactic unit]] and [[Wikifunctions:Type proposals/Semantic unit]]. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 17:54, 5 April 2026 (UTC)
*:Thanks for the links :) [[User:So9q|So9q]] ([[User talk:So9q|talk]]) 21:00, 5 April 2026 (UTC)
9tgg0v6dtgwlexxim96j34ezzhpdjyd
Z33055
0
79605
263835
262779
2026-04-08T02:19:32Z
99of9
1622
switch to dewiki
263835
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33055"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33053",
"Z14K2": {
"Z1K1": "Z7",
"Z7K1": "Z27926",
"Z27926K1": [
"Z89",
{
"Z1K1": "Z89",
"Z89K1": "Laut der "
},
{
"Z1K1": "Z7",
"Z7K1": "Z32428",
"Z32428K1": {
"Z1K1": "Z7",
"Z7K1": "Z28297",
"Z28297K1": {
"Z1K1": "Z7",
"Z7K1": "Z811",
"Z811K1": {
"Z1K1": "Z7",
"Z7K1": "Z28312",
"Z28312K1": {
"Z1K1": "Z7",
"Z7K1": "Z28874",
"Z28874K1": {
"Z1K1": "Z7",
"Z7K1": "Z29691",
"Z29691K1": {
"Z1K1": "Z7",
"Z7K1": "Z30120",
"Z30120K1": {
"Z1K1": "Z18",
"Z18K1": "Z33053K1"
},
"Z30120K2": [
"Z6030",
"Z6036"
],
"Z30120K3": [
"Z60"
],
"Z30120K4": [
"Z6092",
{
"Z1K1": "Z6092",
"Z6092K1": "P1082"
}
]
},
"Z29691K2": {
"Z1K1": "Z6092",
"Z6092K1": "P1082"
}
}
},
"Z28312K2": {
"Z1K1": "Z6092",
"Z6092K1": "P459"
}
}
}
},
"Z32428K2": {
"Z1K1": "Z18",
"Z18K1": "Z33053K2"
}
},
{
"Z1K1": "Z89",
"Z89K1": " (dewiki: "
},
{
"Z1K1": "Z7",
"Z7K1": "Z31697",
"Z31697K1": {
"Z1K1": "Z7",
"Z7K1": "Z28297",
"Z28297K1": {
"Z1K1": "Z7",
"Z7K1": "Z811",
"Z811K1": {
"Z1K1": "Z7",
"Z7K1": "Z28312",
"Z28312K1": {
"Z1K1": "Z7",
"Z7K1": "Z28874",
"Z28874K1": {
"Z1K1": "Z7",
"Z7K1": "Z29691",
"Z29691K1": {
"Z1K1": "Z7",
"Z7K1": "Z30120",
"Z30120K1": {
"Z1K1": "Z18",
"Z18K1": "Z33053K1"
},
"Z30120K2": [
"Z6030",
"Z6036"
],
"Z30120K3": [
"Z60"
],
"Z30120K4": [
"Z6092",
{
"Z1K1": "Z6092",
"Z6092K1": "P1082"
}
]
},
"Z29691K2": {
"Z1K1": "Z6092",
"Z6092K1": "P1082"
}
}
},
"Z28312K2": {
"Z1K1": "Z6092",
"Z6092K1": "P459"
}
}
}
},
"Z31697K2": "Z1430"
},
{
"Z1K1": "Z89",
"Z89K1": ") hat "
},
{
"Z1K1": "Z7",
"Z7K1": "Z27868",
"Z27868K1": {
"Z1K1": "Z7",
"Z7K1": "Z24766",
"Z24766K1": {
"Z1K1": "Z18",
"Z18K1": "Z33053K1"
},
"Z24766K2": {
"Z1K1": "Z18",
"Z18K1": "Z33053K2"
}
}
},
{
"Z1K1": "Z89",
"Z89K1": " eine Bevölkerung von "
},
{
"Z1K1": "Z7",
"Z7K1": "Z27868",
"Z27868K1": {
"Z1K1": "Z7",
"Z7K1": "Z25326",
"Z25326K1": {
"Z1K1": "Z7",
"Z7K1": "Z19308",
"Z19308K1": {
"Z1K1": "Z7",
"Z7K1": "Z28446",
"Z28446K1": {
"Z1K1": "Z7",
"Z7K1": "Z6821",
"Z6821K1": {
"Z1K1": "Z18",
"Z18K1": "Z33053K1"
}
},
"Z28446K2": {
"Z1K1": "Z6092",
"Z6092K1": "P1082"
}
}
},
"Z25326K2": {
"Z1K1": "Z18",
"Z18K1": "Z33053K2"
}
}
},
{
"Z1K1": "Z89",
"Z89K1": "."
},
{
"Z1K1": "Z7",
"Z7K1": "Z32891",
"Z32891K1": {
"Z1K1": "Z7",
"Z7K1": "Z27861",
"Z27861K1": {
"Z1K1": "Z7",
"Z7K1": "Z21394",
"Z21394K1": [
"Z6",
"Australian Bureau of Statistics. ",
{
"Z1K1": "Z7",
"Z7K1": "Z24766",
"Z24766K1": {
"Z1K1": "Z18",
"Z18K1": "Z33053K1"
},
"Z24766K2": {
"Z1K1": "Z18",
"Z18K1": "Z33053K2"
}
},
" (SAL) ",
"https://www.abs.gov.au/census/find-census-data/quickstats/2021/",
{
"Z1K1": "Z7",
"Z7K1": "Z21449",
"Z21449K1": {
"Z1K1": "Z6092",
"Z6092K1": "P10112"
},
"Z21449K2": {
"Z1K1": "Z7",
"Z7K1": "Z6821",
"Z6821K1": {
"Z1K1": "Z18",
"Z18K1": "Z33053K1"
}
}
},
" \u003Ci\u003E2021 Census QuickStats\u003C/i\u003E."
]
}
}
}
]
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "following Z32094"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
brndp4i7c4htdd22n2wj27cph4zpp61
Wikifunctions:Type proposals/Syntactic unit
4
79606
263786
263332
2026-04-07T15:26:45Z
Mahir256
38
263786
wikitext
text/x-wiki
''This is one of a few type proposals based on the Ninai/Udiron project, and thus should be considered alongside others similarly marked.''
== Summary ==
This type holds a syntactic unit that holds a base word/stem of some kind, with links to any dependents (as construed in [[:w:en:dependency grammar]]s).
For more on this particular construct (named 'Catena' in my own work), see the first paragraph of Section 2.2, and the first part of section 4.2.1, of {{Q|130478475}}, as well as [https://gitlab.com/mahir256/udiron/-/blob/main/udiron/base/catena.py?ref_type=heads#L49 the implementation of this construct in Udiron].
== Uses ==
* This is one of two fundamental data structures (and a few less fundamental but still important others) that will become necessary for abstract content to truly be abstract. Rather than process lists/sets of strings in assembling a sentence, these units can be manipulated [https://gitlab.com/mahir256/udiron/-/blob/main/udiron/base/rendering.py and then rendered] according to functions that can be defined per language.
* Many of the instance methods listed in the Udiron implementation linked above would need to be defined as functions here for this to work.
* This is intended to correspond with the notion of a '[[:w:en:Catena (linguistics)|catena]]' in dependency grammar, and more specifically to a unit used in [https://universaldependencies.org Universal Dependencies] ([[:d:Wikidata:Lexicographical data/Universal Dependencies|with a mapping to Wikidata here]]). (To help make this just a little less mysterious for this mostly non-linguistic audience, however, I've named this type proposal 'syntactic unit'.)
== Structure ==
* lexeme: The lexeme which this syntactic unit represents.
** See the note under 'sense' below.
* language: The language to be applied when this syntactic unit is rendered.
** Note that languages in Ninai/Udiron are pairs of language item and language code; this requires that https://phabricator.wikimedia.org/T344170 be resolved.
* sense: The specific meaning of the lexeme which this syntactic unit represents.
** The lexeme and the sense are both included separately because details present at both levels will be needed downstream; as but mere examples, the grammatical gender of a lexeme does not reside on its senses, and if a particular grammatical feature is required when using a particular sense then that feature won't be marked on the lexeme level.
** This and 'lexeme' are not references simply because this unit does not have to represent something that is on wikidata.org; if a custom lexeme/sense were created by some other function, that should be usable here as well.
* inflections: The inflections to be applied in rendering this syntactic unit.
** This was inspired by the lists of grammatical features on Wikidata lexeme forms, though the values present in this list do not have to be actual such features on a form of the lexeme.
* config: Specific settings for rendering this syntactic unit may be applied here, potentially altering every aspect of the rendering process.
** The current implementation of such a configuration object (introduced because it is not clear whether the Python notion of 'keyword arguments' will be replicated in Wikifunctions) is found [https://gitlab.com/mahir256/udiron/-/blob/main/udiron/base/functionconfig.py on this page].
** This object could be a dedicated configuration type, or it could be a typed map from strings to objects as given in the example below.
* left_dependents: The dependents of this syntactic unit that are ''logically'' preceding this one, each with some relationship to this unit.
* right_dependents: The dependents of this syntactic unit that are ''logically'' following this one, each with some relationship to this unit.
** Udiron currently groups these into a tuple of lists 'dependents'.
* id: A unique identifier for the syntactic unit.
** This was introduced in Udiron (and maintained simply by having a counter that is incremented each time a new syntactic unit is created) in order to deal with the consequences of all objects being immutable in Wikifunctions; if this did not exist, then any time any of the other fields of this syntactic unit was modified, its internal identifier and that of other equally immutable objects that would also need to be modified (such as other syntactic units that have this syntactic unit as a dependent) and comparisons between objects before and after a modification would become considerably more complicated and difficult to track.
=== Example values ===
The English phrase "he saw me" (without punctuation!) would consist of three syntactic units whose fields are defined below:
* [[:d:Lexeme:L485|L485]], Z1002, [[:d:Lexeme:L485#S1|L485-S1]], ({{Q|131105}}), {}, [], [], "theseentitiesneedsomesortofidscheme"
* [[:d:Lexeme:L185|L185]], Z1002, [[:d:Lexeme:L185#S1|L185-S1]], ({{Q|1392475}}, {{Q|21714344}}, {{Q|110786}}), {}, [(''bullet point above'', {{Q|164573}})], [(''bullet point below'', {{Q|2990574}})], "comeupwithanidschemeforthesethings"
* [[:d:Lexeme:L485|L487]], Z1002, [[:d:Lexeme:L487#S1|L487-S1]], ({{Q|1233197}}), {}, [], [], "someidschemethatneedstobecomeupwith"
{|class="wikitable" style="margin:.6em 1.6em"
|-
| <syntaxhighlight lang="json" line="line">{
"type": "syntactic unit",
"lexeme": "Wikidata lexeme",
"language": "language",
"sense": "Wikidata item",
"inflections": "typed list(Wikidata item reference)",
"config": "typed map(string, object)",
"left_dependents": "typed list(typed pair(syntactic unit, Wikidata item reference))",
"right_dependents": "typed list(typed pair(syntactic unit, Wikidata item reference))",
"id": "string",
}</syntaxhighlight>
| <syntaxhighlight lang="json">{
"Z1K1": "Zxyz",
"ZxyzK1": "Z6005",
"ZxyzK2": "Z60",
"ZxyzK3": "Z6006",
"ZxyzK4": "Z881(Z6091)",
"ZxyzK5": "Z883(Z60, Z1)",
"ZxyzK6": "Z881(Z882(syntactic unit, Z6091))",
"ZxyzK7": "Z881(Z882(syntactic unit, Z6091))",
"ZxyzK8": "Z6",
}</syntaxhighlight>
|}
== Validator ==
The validator ensures that the lexeme, language, and sense are all valid realizations of those types, all inflections in the inflection set are Wikidata item IDs, and the configuration and dependents lists are well-formed according to their type definitions.
== Identity ==
Equality between syntactic units implies that the components all compare equal, per https://gitlab.com/mahir256/udiron/-/blob/main/udiron/base/catena.py?ref_type=heads#L126 . (Note that the "id" value is ''not'' considered as part of this check.)
== Converting to code ==
=== Python ===
Ideally this would be directly portable from https://gitlab.com/mahir256/udiron/-/blob/main/udiron/base/catena.py , since it has been designed to make such a transfer easier, although due to lack of confirmation from the Abstract Wikipedia team of the points of section 2.4 of {{Q|130478475}} this degree of easiness has not been made certain.
== Display function ==
Perhaps something similar to the 'abbr' function at https://gitlab.com/mahir256/udiron/-/blob/main/udiron/base/catena.py?ref_type=heads#L365 could be used.
== Read function ==
No one should be inputting these as strings; they should be created exclusively by other functions that seek to generate language and perform syntactic manipulations.
== Comments ==
d6rgjy97blscf7y3w8vbn6bzl6cvm6d
Wikifunctions:Type proposals/Semantic unit
4
79607
263744
263439
2026-04-07T13:58:39Z
Feeglgeef
8776
/* Comments */
263744
wikitext
text/x-wiki
''This is one of a few type proposals based on the Ninai/Udiron project, and thus should be considered alongside others similarly marked.''
== Summary ==
This type holds a semantic unit, '''''very broadly construed''''', containing other semantic units as members.
For more on this particular construct (named 'Constructor' in my own work), see the second paragraph of Section 2.2, all of Section 2.3, and section 4.1.1, of {{Q|130478475}}, as well as [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructor.py#L21 the implementation of this construct in Ninai] (and adjacent files within that folder).
== Uses ==
* This is one of two fundamental data structures (and a few less fundamental but still important others) that will become necessary for abstract content to truly be abstract. Rather than assembling factual information using function calls, these units can be composed and manipulated [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructorrenderer.py and then rendered] according to functions that can be defined per language.
* Many of the instance methods listed in the Ninai implementation would need to be defined as functions here for this to work.
* This is intended to correspond with the notion of a 'Constructor' described in lots of prior writings about Abstract Wikipedia. (To help make this just a little less mysterious for this mostly non-linguistic audience, however, I've named this type proposal 'semantic unit'.)
== Structure ==
* constructor_type: Type of semantic unit that this is.
** This is intended to prevent an excess of proliferating semantic unit types, and to keep ways of processing arguments more general.
* identifier: Identifier assigned to this semantic unit.
** This is intended more to allow other semantic units to reference this one, especially when nested in other semantic units.
** See also the note under the 'id' field in [[Wikifunctions:Type proposals/Syntactic unit|the syntactic unit proposal]].
* child_identifiers: Mapping of identifiers of (arguments of) semantic units to the paths needed to be followed in order to reach them. (More on these may be found in the Ninai implementation.)
** This holds paths that need to be taken to reach other nested semantic units from a top-level semantic unit.
* core_arguments: Mapping of core argument names to semantic units.
** The argument names here do not have to be Wikidata item references, though it is recommended that they be in order to keep semantic unit definitions language-neutral.
* scope_arguments: List of other semantic unit arguments provided that have not been mapped to core argument names.
* other_arguments: List of arguments not treated as either of the above.
** The notions of 'core', 'scope', and 'other' are handled by 'argument filters' defined for different constructor_types (since they filter inputs into one of those three groups); the logic behind some of them in Ninai may be found [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/argumentfilters.py on this page]. Note that argument filters can be parameterized themselves; it is not likely that those will proliferate, since semantic unit renderers will end up being more diverse in actual argument transformation anyways.
=== Example values ===
The content corresponding to the phrase "Thriller is an album" (assigning a class to a proper noun) consists of the following top level semantic unit:
* {{Q|124316841}}, "whatsagoodidentifierforoneofthese", {"thing1": "Q164573", "thing2": "Q16889133"}, {''core argument mapping''}, [], []
The elements of ''core argument mapping'' are the following string-semantic unit pairs:
* Q164573: ({{Q|151885}}, "thing1", {}, [], [], ["Q44320"])
* Q16889133: ({{Q|151885}}, "thing2", {}, [], [], ["Q482994"])
{|class="wikitable" style="margin:.6em 1.6em"
|-
| <syntaxhighlight lang="json" line="line">{
"type": "semantic unit",
"constructor_type": "Wikidata item reference",
"identifier": "string",
"child_identifiers": "typed map(string, string)",
"core_arguments": "typed map(string, semantic unit)",
"scope_arguments": "typed list(semantic unit)",
"other_arguments": "typed list(object)"
}</syntaxhighlight>
| <syntaxhighlight lang="json">{
"Z1K1": "Zxyz",
"ZxyzK1": "Z6005",
"ZxyzK2": "Z60",
"ZxyzK3": "Z883(Z60, Z60)",
"ZxyzK4": "Z883(Z60, Zxyz)",
"ZxyzK5": "Z881(Zxyz)",
"ZxyzK6": "Z881(Z1)",
}</syntaxhighlight>
|}
== Validator ==
The validator ensures that the constructor_type is a valid Wikidata item reference, the identifier is a valid string, the core argument mapping and scope argument list consist of valid semantic units, and the child_identifier mapping is coherent with respect to the argument lists.
== Identity ==
Equality between semantic units implies that the components all compare equal. (Note that unlike with syntactic units, the "identifier" value ''is'' considered as part of this check.)
== Converting to code ==
=== Python ===
Ideally this would be directly portable from https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructor.py , since it has been designed to make such a transfer easier, although due to lack of confirmation from the Abstract Wikipedia team of the points of section 2.4 of {{Q|130478475}} this degree of easiness has not been made certain.
== Display function ==
The Ninai implementation [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructor.py?ref_type=heads#L97 does have a string representation], but that may not be the best for displaying in a web interface like this one.
== Read function ==
These should in general be composed using the Lisp-like syntax described [[Wikifunctions:Status_updates/2024-10-17|in a previous newsletter]], rather than as individual units.
The content given in the example above could be indicated as follows:
["Q124316841",
["Q151885", "Q44320"],
["Q151885", "Q482994"]]
== Comments ==
* {{neutral}} This proposal is an excellent starting point. The thing that does not convince me is the fact that I wouldn't see this proposal applied directly in Wikifunction as it is now, since it is very Python-y and not very Wikifunction-y, meaning that it has a structure that is optimized to be implemented in Python, but does not respect the general spirit of the other Wikifunction types. For example, I'm not convinced by the fact that it uses IDs to link the various Semantic units. Another thing that can be improved: this proposal is a very technical one, and uses a lot of thechnical jargon that can make it quite difficult to understand. Considering that both Wikifunctions and Abstract Wikipedia are collaborative projects, I think that clarity should be a priority. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 09:07, 6 April 2026 (UTC)
* {{o}}, per Dv103, their proposal is much better fit to Wikifunctions and much more intuitive. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 13:58, 7 April 2026 (UTC)
k4qz7s93fu75xz6pfv1qy2kqiuoht64
263790
263744
2026-04-07T15:49:54Z
Mahir256
38
/* Comments */
263790
wikitext
text/x-wiki
''This is one of a few type proposals based on the Ninai/Udiron project, and thus should be considered alongside others similarly marked.''
== Summary ==
This type holds a semantic unit, '''''very broadly construed''''', containing other semantic units as members.
For more on this particular construct (named 'Constructor' in my own work), see the second paragraph of Section 2.2, all of Section 2.3, and section 4.1.1, of {{Q|130478475}}, as well as [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructor.py#L21 the implementation of this construct in Ninai] (and adjacent files within that folder).
== Uses ==
* This is one of two fundamental data structures (and a few less fundamental but still important others) that will become necessary for abstract content to truly be abstract. Rather than assembling factual information using function calls, these units can be composed and manipulated [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructorrenderer.py and then rendered] according to functions that can be defined per language.
* Many of the instance methods listed in the Ninai implementation would need to be defined as functions here for this to work.
* This is intended to correspond with the notion of a 'Constructor' described in lots of prior writings about Abstract Wikipedia. (To help make this just a little less mysterious for this mostly non-linguistic audience, however, I've named this type proposal 'semantic unit'.)
== Structure ==
* constructor_type: Type of semantic unit that this is.
** This is intended to prevent an excess of proliferating semantic unit types, and to keep ways of processing arguments more general.
* identifier: Identifier assigned to this semantic unit.
** This is intended more to allow other semantic units to reference this one, especially when nested in other semantic units.
** See also the note under the 'id' field in [[Wikifunctions:Type proposals/Syntactic unit|the syntactic unit proposal]].
* child_identifiers: Mapping of identifiers of (arguments of) semantic units to the paths needed to be followed in order to reach them. (More on these may be found in the Ninai implementation.)
** This holds paths that need to be taken to reach other nested semantic units from a top-level semantic unit.
* core_arguments: Mapping of core argument names to semantic units.
** The argument names here do not have to be Wikidata item references, though it is recommended that they be in order to keep semantic unit definitions language-neutral.
* scope_arguments: List of other semantic unit arguments provided that have not been mapped to core argument names.
* other_arguments: List of arguments not treated as either of the above.
** The notions of 'core', 'scope', and 'other' are handled by 'argument filters' defined for different constructor_types (since they filter inputs into one of those three groups); the logic behind some of them in Ninai may be found [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/argumentfilters.py on this page]. Note that argument filters can be parameterized themselves; it is not likely that those will proliferate, since semantic unit renderers will end up being more diverse in actual argument transformation anyways.
=== Example values ===
The content corresponding to the phrase "Thriller is an album" (assigning a class to a proper noun) consists of the following top level semantic unit:
* {{Q|124316841}}, "whatsagoodidentifierforoneofthese", {"thing1": "Q164573", "thing2": "Q16889133"}, {''core argument mapping''}, [], []
The elements of ''core argument mapping'' are the following string-semantic unit pairs:
* Q164573: ({{Q|151885}}, "thing1", {}, [], [], ["Q44320"])
* Q16889133: ({{Q|151885}}, "thing2", {}, [], [], ["Q482994"])
{|class="wikitable" style="margin:.6em 1.6em"
|-
| <syntaxhighlight lang="json" line="line">{
"type": "semantic unit",
"constructor_type": "Wikidata item reference",
"identifier": "string",
"child_identifiers": "typed map(string, string)",
"core_arguments": "typed map(string, semantic unit)",
"scope_arguments": "typed list(semantic unit)",
"other_arguments": "typed list(object)"
}</syntaxhighlight>
| <syntaxhighlight lang="json">{
"Z1K1": "Zxyz",
"ZxyzK1": "Z6005",
"ZxyzK2": "Z60",
"ZxyzK3": "Z883(Z60, Z60)",
"ZxyzK4": "Z883(Z60, Zxyz)",
"ZxyzK5": "Z881(Zxyz)",
"ZxyzK6": "Z881(Z1)",
}</syntaxhighlight>
|}
== Validator ==
The validator ensures that the constructor_type is a valid Wikidata item reference, the identifier is a valid string, the core argument mapping and scope argument list consist of valid semantic units, and the child_identifier mapping is coherent with respect to the argument lists.
== Identity ==
Equality between semantic units implies that the components all compare equal. (Note that unlike with syntactic units, the "identifier" value ''is'' considered as part of this check.)
== Converting to code ==
=== Python ===
Ideally this would be directly portable from https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructor.py , since it has been designed to make such a transfer easier, although due to lack of confirmation from the Abstract Wikipedia team of the points of section 2.4 of {{Q|130478475}} this degree of easiness has not been made certain.
== Display function ==
The Ninai implementation [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructor.py?ref_type=heads#L97 does have a string representation], but that may not be the best for displaying in a web interface like this one.
== Read function ==
These should in general be composed using the Lisp-like syntax described [[Wikifunctions:Status_updates/2024-10-17|in a previous newsletter]], rather than as individual units.
The content given in the example above could be indicated as follows:
["Q124316841",
["Q151885", "Q44320"],
["Q151885", "Q482994"]]
== Comments ==
* {{neutral}} This proposal is an excellent starting point. The thing that does not convince me is the fact that I wouldn't see this proposal applied directly in Wikifunction as it is now, since it is very Python-y and not very Wikifunction-y, meaning that it has a structure that is optimized to be implemented in Python, but does not respect the general spirit of the other Wikifunction types. For example, I'm not convinced by the fact that it uses IDs to link the various Semantic units. Another thing that can be improved: this proposal is a very technical one, and uses a lot of thechnical jargon that can make it quite difficult to understand. Considering that both Wikifunctions and Abstract Wikipedia are collaborative projects, I think that clarity should be a priority. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 09:07, 6 April 2026 (UTC)
** {{re|Dv103}}
*# The Python-iness of it all stemmed from this initially being developed in 2021 and Wikifunctions only coming into existence two years later, during which many development choices were made for operational efficiency and future system flexibility. If you read section 2.4 of the paper I wrote, I have declared the various ways that I've set up the code to make transfer to Wikifunctions implementations possible while making it feasible to develop externally; you're welcome to also ask the Abstract Wikipedia team as well if those assumptions hold.
*# I'd be interested to learn which Wikifunctions types aren't being respected by this proposal; I have given a specification of both semantic and syntactic units in terms of the ZIDs of the types of their components, and do not seek to use or abuse any other types that may have been created entirely ad hoc for some unplanned language generation purpose.
*# (With respect to the use of IDs, they do not 'link the various Semantic units'; they exist for content authors to refer to them when wanting to perform arbitrary transformations on parts of abstract content. This is mainly inspired by the notion of elements having IDs in HTML--an output markup language being used for the Abstract Wikipedia!--so that they can be styled using CSS. Consider a scenario in which semantic unit C is contained within (possibly multiple levels down) semantic unit A. If you want to apply a transformation to C, but are only given A, it should not be the content author's responsibility to figure out where within unit A unit C is; it should be enough to state 'transform the unit with ID "C"' and to let functions handle the traversal.)
*# You do raise a point about jargon; the language I have used is intentionally general so as to prevent as much hardcoding of linguistic concepts within the type as possible. While I can understand ''this'' proposal being a little unclear to the wholly uninitiated user as a consequence, that need not mean functions using these types--which will of course have more tangible, specialized purposes--will also be equally unclear. Nevertheless, I will continue to revise this proposal to add more explanations for some of the choices noted above (in the event someone decides not to read the references I point to), and in any case I am slowly gathering in one place statements I have expressed and ideas I have implemented in [[d:User:Mahir256/language-generation|a subpage of my Wikidata user page]]. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 15:49, 7 April 2026 (UTC)
* {{o}}, per Dv103, their proposal is much better fit to Wikifunctions and much more intuitive. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 13:58, 7 April 2026 (UTC)
7knqy8oib4kenvoq29of2w1lysutxbb
263791
263790
2026-04-07T15:54:54Z
Mahir256
38
/* Structure */
263791
wikitext
text/x-wiki
''This is one of a few type proposals based on the Ninai/Udiron project, and thus should be considered alongside others similarly marked.''
== Summary ==
This type holds a semantic unit, '''''very broadly construed''''', containing other semantic units as members.
For more on this particular construct (named 'Constructor' in my own work), see the second paragraph of Section 2.2, all of Section 2.3, and section 4.1.1, of {{Q|130478475}}, as well as [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructor.py#L21 the implementation of this construct in Ninai] (and adjacent files within that folder).
== Uses ==
* This is one of two fundamental data structures (and a few less fundamental but still important others) that will become necessary for abstract content to truly be abstract. Rather than assembling factual information using function calls, these units can be composed and manipulated [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructorrenderer.py and then rendered] according to functions that can be defined per language.
* Many of the instance methods listed in the Ninai implementation would need to be defined as functions here for this to work.
* This is intended to correspond with the notion of a 'Constructor' described in lots of prior writings about Abstract Wikipedia. (To help make this just a little less mysterious for this mostly non-linguistic audience, however, I've named this type proposal 'semantic unit'.)
== Structure ==
* constructor_type: Type of semantic unit that this is.
** This is intended to prevent an excess of proliferating semantic unit types, and to keep ways of processing arguments more general.
* identifier: Identifier assigned to this semantic unit.
** This is intended more to allow other semantic units to reference this one, no matter how separated--whether laterally or in depth--they are from this one. ''It does not serve as a mandatory link between a semantic unit and either its direct parent or its direct children!''
** See also the note under the 'id' field in [[Wikifunctions:Type proposals/Syntactic unit|the syntactic unit proposal]].
* child_identifiers: Mapping of identifiers of (arguments of) semantic units to the paths needed to be followed in order to reach them. (More on these may be found in the Ninai implementation.)
** This holds paths that need to be taken to reach other nested semantic units from a top-level semantic unit.
* core_arguments: Mapping of core argument names to semantic units.
** The argument names here do not have to be Wikidata item references, though it is recommended that they be in order to keep semantic unit definitions language-neutral.
* scope_arguments: List of other semantic unit arguments provided that have not been mapped to core argument names.
* other_arguments: List of arguments not treated as either of the above.
** The notions of 'core', 'scope', and 'other' are handled by 'argument filters' defined for different constructor_types (since they filter inputs into one of those three groups); the logic behind some of them in Ninai may be found [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/argumentfilters.py on this page]. Note that argument filters can be parameterized themselves; it is not likely that those will proliferate, since semantic unit renderers will end up being more diverse in actual argument transformation anyways.
=== Example values ===
The content corresponding to the phrase "Thriller is an album" (assigning a class to a proper noun) consists of the following top level semantic unit:
* {{Q|124316841}}, "whatsagoodidentifierforoneofthese", {"thing1": "Q164573", "thing2": "Q16889133"}, {''core argument mapping''}, [], []
The elements of ''core argument mapping'' are the following string-semantic unit pairs:
* Q164573: ({{Q|151885}}, "thing1", {}, [], [], ["Q44320"])
* Q16889133: ({{Q|151885}}, "thing2", {}, [], [], ["Q482994"])
More on the semantic unit types and their arguments may be found [[:d:User:Mahir256/language-generation|on this set of pages being compiled]].
{|class="wikitable" style="margin:.6em 1.6em"
|-
| <syntaxhighlight lang="json" line="line">{
"type": "semantic unit",
"constructor_type": "Wikidata item reference",
"identifier": "string",
"child_identifiers": "typed map(string, string)",
"core_arguments": "typed map(string, semantic unit)",
"scope_arguments": "typed list(semantic unit)",
"other_arguments": "typed list(object)"
}</syntaxhighlight>
| <syntaxhighlight lang="json">{
"Z1K1": "Zxyz",
"ZxyzK1": "Z6005",
"ZxyzK2": "Z60",
"ZxyzK3": "Z883(Z60, Z60)",
"ZxyzK4": "Z883(Z60, Zxyz)",
"ZxyzK5": "Z881(Zxyz)",
"ZxyzK6": "Z881(Z1)",
}</syntaxhighlight>
|}
== Validator ==
The validator ensures that the constructor_type is a valid Wikidata item reference, the identifier is a valid string, the core argument mapping and scope argument list consist of valid semantic units, and the child_identifier mapping is coherent with respect to the argument lists.
== Identity ==
Equality between semantic units implies that the components all compare equal. (Note that unlike with syntactic units, the "identifier" value ''is'' considered as part of this check.)
== Converting to code ==
=== Python ===
Ideally this would be directly portable from https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructor.py , since it has been designed to make such a transfer easier, although due to lack of confirmation from the Abstract Wikipedia team of the points of section 2.4 of {{Q|130478475}} this degree of easiness has not been made certain.
== Display function ==
The Ninai implementation [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructor.py?ref_type=heads#L97 does have a string representation], but that may not be the best for displaying in a web interface like this one.
== Read function ==
These should in general be composed using the Lisp-like syntax described [[Wikifunctions:Status_updates/2024-10-17|in a previous newsletter]], rather than as individual units.
The content given in the example above could be indicated as follows:
["Q124316841",
["Q151885", "Q44320"],
["Q151885", "Q482994"]]
== Comments ==
* {{neutral}} This proposal is an excellent starting point. The thing that does not convince me is the fact that I wouldn't see this proposal applied directly in Wikifunction as it is now, since it is very Python-y and not very Wikifunction-y, meaning that it has a structure that is optimized to be implemented in Python, but does not respect the general spirit of the other Wikifunction types. For example, I'm not convinced by the fact that it uses IDs to link the various Semantic units. Another thing that can be improved: this proposal is a very technical one, and uses a lot of thechnical jargon that can make it quite difficult to understand. Considering that both Wikifunctions and Abstract Wikipedia are collaborative projects, I think that clarity should be a priority. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 09:07, 6 April 2026 (UTC)
** {{re|Dv103}}
*# The Python-iness of it all stemmed from this initially being developed in 2021 and Wikifunctions only coming into existence two years later, during which many development choices were made for operational efficiency and future system flexibility. If you read section 2.4 of the paper I wrote, I have declared the various ways that I've set up the code to make transfer to Wikifunctions implementations possible while making it feasible to develop externally; you're welcome to also ask the Abstract Wikipedia team as well if those assumptions hold.
*# I'd be interested to learn which Wikifunctions types aren't being respected by this proposal; I have given a specification of both semantic and syntactic units in terms of the ZIDs of the types of their components, and do not seek to use or abuse any other types that may have been created entirely ad hoc for some unplanned language generation purpose.
*# (With respect to the use of IDs, they do not 'link the various Semantic units'; they exist for content authors to refer to them when wanting to perform arbitrary transformations on parts of abstract content. This is mainly inspired by the notion of elements having IDs in HTML--an output markup language being used for the Abstract Wikipedia!--so that they can be styled using CSS. Consider a scenario in which semantic unit C is contained within (possibly multiple levels down) semantic unit A. If you want to apply a transformation to C, but are only given A, it should not be the content author's responsibility to figure out where within unit A unit C is; it should be enough to state 'transform the unit with ID "C"' and to let functions handle the traversal.)
*# You do raise a point about jargon; the language I have used is intentionally general so as to prevent as much hardcoding of linguistic concepts within the type as possible. While I can understand ''this'' proposal being a little unclear to the wholly uninitiated user as a consequence, that need not mean functions using these types--which will of course have more tangible, specialized purposes--will also be equally unclear. Nevertheless, I will continue to revise this proposal to add more explanations for some of the choices noted above (in the event someone decides not to read the references I point to), and in any case I am slowly gathering in one place statements I have expressed and ideas I have implemented in [[d:User:Mahir256/language-generation|a subpage of my Wikidata user page]]. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 15:49, 7 April 2026 (UTC)
* {{o}}, per Dv103, their proposal is much better fit to Wikifunctions and much more intuitive. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 13:58, 7 April 2026 (UTC)
pw32jsp9lc3x8d6qt1gttdzh10w77ve
263804
263791
2026-04-07T21:03:24Z
Dv103
11127
/* Comments */ Reply
263804
wikitext
text/x-wiki
''This is one of a few type proposals based on the Ninai/Udiron project, and thus should be considered alongside others similarly marked.''
== Summary ==
This type holds a semantic unit, '''''very broadly construed''''', containing other semantic units as members.
For more on this particular construct (named 'Constructor' in my own work), see the second paragraph of Section 2.2, all of Section 2.3, and section 4.1.1, of {{Q|130478475}}, as well as [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructor.py#L21 the implementation of this construct in Ninai] (and adjacent files within that folder).
== Uses ==
* This is one of two fundamental data structures (and a few less fundamental but still important others) that will become necessary for abstract content to truly be abstract. Rather than assembling factual information using function calls, these units can be composed and manipulated [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructorrenderer.py and then rendered] according to functions that can be defined per language.
* Many of the instance methods listed in the Ninai implementation would need to be defined as functions here for this to work.
* This is intended to correspond with the notion of a 'Constructor' described in lots of prior writings about Abstract Wikipedia. (To help make this just a little less mysterious for this mostly non-linguistic audience, however, I've named this type proposal 'semantic unit'.)
== Structure ==
* constructor_type: Type of semantic unit that this is.
** This is intended to prevent an excess of proliferating semantic unit types, and to keep ways of processing arguments more general.
* identifier: Identifier assigned to this semantic unit.
** This is intended more to allow other semantic units to reference this one, no matter how separated--whether laterally or in depth--they are from this one. ''It does not serve as a mandatory link between a semantic unit and either its direct parent or its direct children!''
** See also the note under the 'id' field in [[Wikifunctions:Type proposals/Syntactic unit|the syntactic unit proposal]].
* child_identifiers: Mapping of identifiers of (arguments of) semantic units to the paths needed to be followed in order to reach them. (More on these may be found in the Ninai implementation.)
** This holds paths that need to be taken to reach other nested semantic units from a top-level semantic unit.
* core_arguments: Mapping of core argument names to semantic units.
** The argument names here do not have to be Wikidata item references, though it is recommended that they be in order to keep semantic unit definitions language-neutral.
* scope_arguments: List of other semantic unit arguments provided that have not been mapped to core argument names.
* other_arguments: List of arguments not treated as either of the above.
** The notions of 'core', 'scope', and 'other' are handled by 'argument filters' defined for different constructor_types (since they filter inputs into one of those three groups); the logic behind some of them in Ninai may be found [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/argumentfilters.py on this page]. Note that argument filters can be parameterized themselves; it is not likely that those will proliferate, since semantic unit renderers will end up being more diverse in actual argument transformation anyways.
=== Example values ===
The content corresponding to the phrase "Thriller is an album" (assigning a class to a proper noun) consists of the following top level semantic unit:
* {{Q|124316841}}, "whatsagoodidentifierforoneofthese", {"thing1": "Q164573", "thing2": "Q16889133"}, {''core argument mapping''}, [], []
The elements of ''core argument mapping'' are the following string-semantic unit pairs:
* Q164573: ({{Q|151885}}, "thing1", {}, [], [], ["Q44320"])
* Q16889133: ({{Q|151885}}, "thing2", {}, [], [], ["Q482994"])
More on the semantic unit types and their arguments may be found [[:d:User:Mahir256/language-generation|on this set of pages being compiled]].
{|class="wikitable" style="margin:.6em 1.6em"
|-
| <syntaxhighlight lang="json" line="line">{
"type": "semantic unit",
"constructor_type": "Wikidata item reference",
"identifier": "string",
"child_identifiers": "typed map(string, string)",
"core_arguments": "typed map(string, semantic unit)",
"scope_arguments": "typed list(semantic unit)",
"other_arguments": "typed list(object)"
}</syntaxhighlight>
| <syntaxhighlight lang="json">{
"Z1K1": "Zxyz",
"ZxyzK1": "Z6005",
"ZxyzK2": "Z60",
"ZxyzK3": "Z883(Z60, Z60)",
"ZxyzK4": "Z883(Z60, Zxyz)",
"ZxyzK5": "Z881(Zxyz)",
"ZxyzK6": "Z881(Z1)",
}</syntaxhighlight>
|}
== Validator ==
The validator ensures that the constructor_type is a valid Wikidata item reference, the identifier is a valid string, the core argument mapping and scope argument list consist of valid semantic units, and the child_identifier mapping is coherent with respect to the argument lists.
== Identity ==
Equality between semantic units implies that the components all compare equal. (Note that unlike with syntactic units, the "identifier" value ''is'' considered as part of this check.)
== Converting to code ==
=== Python ===
Ideally this would be directly portable from https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructor.py , since it has been designed to make such a transfer easier, although due to lack of confirmation from the Abstract Wikipedia team of the points of section 2.4 of {{Q|130478475}} this degree of easiness has not been made certain.
== Display function ==
The Ninai implementation [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructor.py?ref_type=heads#L97 does have a string representation], but that may not be the best for displaying in a web interface like this one.
== Read function ==
These should in general be composed using the Lisp-like syntax described [[Wikifunctions:Status_updates/2024-10-17|in a previous newsletter]], rather than as individual units.
The content given in the example above could be indicated as follows:
["Q124316841",
["Q151885", "Q44320"],
["Q151885", "Q482994"]]
== Comments ==
* {{neutral}} This proposal is an excellent starting point. The thing that does not convince me is the fact that I wouldn't see this proposal applied directly in Wikifunction as it is now, since it is very Python-y and not very Wikifunction-y, meaning that it has a structure that is optimized to be implemented in Python, but does not respect the general spirit of the other Wikifunction types. For example, I'm not convinced by the fact that it uses IDs to link the various Semantic units. Another thing that can be improved: this proposal is a very technical one, and uses a lot of thechnical jargon that can make it quite difficult to understand. Considering that both Wikifunctions and Abstract Wikipedia are collaborative projects, I think that clarity should be a priority. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 09:07, 6 April 2026 (UTC)
** {{re|Dv103}}
*# The Python-iness of it all stemmed from this initially being developed in 2021 and Wikifunctions only coming into existence two years later, during which many development choices were made for operational efficiency and future system flexibility. If you read section 2.4 of the paper I wrote, I have declared the various ways that I've set up the code to make transfer to Wikifunctions implementations possible while making it feasible to develop externally; you're welcome to also ask the Abstract Wikipedia team as well if those assumptions hold.
*# I'd be interested to learn which Wikifunctions types aren't being respected by this proposal; I have given a specification of both semantic and syntactic units in terms of the ZIDs of the types of their components, and do not seek to use or abuse any other types that may have been created entirely ad hoc for some unplanned language generation purpose.
*# (With respect to the use of IDs, they do not 'link the various Semantic units'; they exist for content authors to refer to them when wanting to perform arbitrary transformations on parts of abstract content. This is mainly inspired by the notion of elements having IDs in HTML--an output markup language being used for the Abstract Wikipedia!--so that they can be styled using CSS. Consider a scenario in which semantic unit C is contained within (possibly multiple levels down) semantic unit A. If you want to apply a transformation to C, but are only given A, it should not be the content author's responsibility to figure out where within unit A unit C is; it should be enough to state 'transform the unit with ID "C"' and to let functions handle the traversal.)
*# You do raise a point about jargon; the language I have used is intentionally general so as to prevent as much hardcoding of linguistic concepts within the type as possible. While I can understand ''this'' proposal being a little unclear to the wholly uninitiated user as a consequence, that need not mean functions using these types--which will of course have more tangible, specialized purposes--will also be equally unclear. Nevertheless, I will continue to revise this proposal to add more explanations for some of the choices noted above (in the event someone decides not to read the references I point to), and in any case I am slowly gathering in one place statements I have expressed and ideas I have implemented in [[d:User:Mahir256/language-generation|a subpage of my Wikidata user page]]. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 15:49, 7 April 2026 (UTC)
*#:For the fourth point, my comment was just a suggestion to reword this proposal (since it can be quite difficult to read this proposal while consulting entire external documentations).
*#:For the other points, I am not saying that this proposal technically breaks Wikifunctions; I am just saying that it goes against the (for now) unwritten rules on how usually Wikifunctions types are designed, and it can clash on how in practice Wikifunctions work. For example, the use of IDs requires either that:
*#:* Function creating the objects also generate the unique IDs: it can be quite cumbersome to implement through the use of Wikifunctions' purely functional and deterministic functions.
*#:* IDs are manually created by users: this means that contributors need to manually execute a technical operation, while Wikifunctions should ideally tend towards having a high level interface. This again has not been encoded in a written guideline yet (afaik), but is a principle that has guided the development of Wikifunctions.
*#:The final message is that this proposal needs a bit of rewording and eventually a rethink in order to make it more intuitive. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 21:03, 7 April 2026 (UTC)
* {{o}}, per Dv103, their proposal is much better fit to Wikifunctions and much more intuitive. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 13:58, 7 April 2026 (UTC)
cqzrtu775i5xf8o5zvkxajqre2m23gt
263823
263804
2026-04-07T23:34:55Z
Mahir256
38
263823
wikitext
text/x-wiki
''This is one of a few type proposals based on the Ninai/Udiron project, and thus should be considered alongside others similarly marked.''
== Summary ==
This type holds '''''semantic units, very broadly construed''''', containing other semantic units as members. These units can '''represent ''any'' number of semantically meaningful entities''' ([https://journals.sagepub.com/doi/full/10.3233/SW-243564#sec-2-2 §2.2]), '''such as'''
# '''[[:d:User:Mahir256/language-generation/basic-notions#Concepts|concepts]]''' (whether nominal, such as {{Q|482994}}, or adjectival, such as {{Q|138866260}}, or adverbial, such as {{Q|6004788}});
# dependent '''phrases''' (whether subordinating, such as [[:d:Q135263812|"although the dog ran away"]], or spatial, such as [[:d:Q126200060|concrete brick wall]]);
# independent '''clauses''' (whether verbal, such as [[:d:Q179080|"he saw me"]], or nonverbal, such as [[:d:Q124317532|"the boat is mine"]]);
# full-on '''sentences''' (whether [[:d:Q135512218|by joining two clauses together that apply simultaneously]] or [[:d:Q124317561|through simply stating the simple existence of a concept]]);
# '''containers for those''' (perhaps a [[:d:Q196626|context]] in which things referred to in the text need to be specified, or where particular aspects of the text's [[:d:Q594739|framing]] need to apply); or
# '''signals for any of them''' (perhaps to mark an [[:d:Q1773882|identifier]] on a semantic unit, or to mark something to be [[:d:Q65044042|emphasized]] or raised to be a sentence's [[:d:Q22338337|topic]]).
'''All the semantic unit needs is a type designation''' (named 'constructor_type' in the Structure below) '''for the rendering process to handle it properly.'''
For more on this particular construct (named 'Constructor' in my own work), see the second paragraph of Section 2.2, all of Section 2.3, and section 4.1.1, of {{Q|130478475}}, as well as [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructor.py#L21 the implementation of this construct in Ninai] (and adjacent files within that folder).
== Uses ==
* This is '''one of two fundamental data structures''' (the other being [[Wikifunctions:Type proposals/Syntactic unit|''syntactic units'']], plus a few less fundamental but still important others) that will become necessary for abstract content to truly be abstract. Rather than assembling factual information using function calls, '''these units can be composed and manipulated [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructorrenderer.py and then rendered]''' according to functions that can be defined per language.
* Many of the instance methods listed in the Ninai implementation would need to be defined as functions here for this to work.
* This '''corresponds with the notion of a 'Constructor'''' described in lots of prior writings about Abstract Wikipedia, such as [https://dl.acm.org/doi/10.1145/3425778 the original Abstract Wikipedia paper]. (To help make this just a little less mysterious for this mostly non-linguistic audience, however, I've named this type proposal 'semantic unit'.)
== Structure ==
* constructor_type: '''Type of semantic unit''' that this is.
** This is '''intended to prevent an excess of proliferating semantic unit types''', and to '''keep semantic unit processing streamlined'''.
** (Because all Wikifunctions types must go through a proposal process—much like this one!—there is necessarily an indeterminate delay between when one can be conceived of and when one can be used in abstract content. Any modifications to Wikifunctions types likely will also need to go through that process. By simplifying the semantic unit structure as much as possible, '''the need to propose a type for any new or modified semantic concept is bypassed, such that''', among those able to modify the mappings listed under "Required global mappings" below, '''anyone can define their own semantic units and use them immediately'''.)
* child_identifiers:
** If a semantic unit has as an immediate descendant a semantic unit with constructor_type {{Q|1773882}}, then the string provided by the {{Q|1773882}} semantic unit appears in this mapping and that of its parent semantic units.
** This mapping holds paths that need to be taken to reach, from a top-level semantic unit, other nested semantic units that directly contain {{Q|1773882}} semantic units. (More on these may be found in the Ninai implementation.)
** (''Unless the abstract content author wishes to specifically name a semantic unit'', '''this will be empty by default'''!)
* core_arguments: '''Mapping of names of core arguments to actual <u>semantic unit</u> arguments'''.
** This basically holds a '''list of expected input parameters for a semantic unit''' when it is used; when written in the syntax listed under "Read function" below, '''the first argument is treated as the first core argument, the second the second, and so on'''.
** Here the argument '''names do not have to be Wikidata item IDs''', though it is '''recommended for language-neutral semantic unit definitions''' that they be such IDs.
* scope_arguments: '''List of other <u>semantic unit</u> arguments provided''' that have not been mapped to core argument names.
** These can correspond to '''subordinating clauses''' ("when I went to the store"), '''relative clauses''' ("that went to the store"), and '''signals''' ([this unit is the topic of the sentence!], [this unit should be emphasized!])
** Most definitions of semantic units are '''unlikely to treat''' those kinds of semantic units '''as ''core'' arguments''', given that '''they can often be removed''' from an expression '''without ''necessarily'' affecting sentence structure'''.
* other_arguments: '''List of arguments''' that are neither core nor scope arguments, primarily '''those that are not semantic units at all'''.
** If a semantic unit does not take another semantic unit as input, then the arguments it needs to process are stored here.
*** (For example, '''{{Q|151885}} takes an entity ID as an argument; since this entity ID is not itself a semantic unit, it is stored in other_arguments'''.
** The notions of 'core', 'scope', and 'other' are '''handled by 'argument filters' defined for different constructor_types''' (since they filter inputs into one of those three groups).
*** (The logic behind some of them in Ninai may be found [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/argumentfilters.py on this page].)
*** ''Note that argument filters <u>can</u> be parameterized themselves; it is not likely that those will proliferate, since semantic unit <u>renderers</u> will end up being more diverse in actual argument transformation anyways!''
{{collapse top|Excluded from structure above per comments below}}
* identifier: Identifier assigned to this semantic unit.
** This is intended more to allow other semantic units to reference this one, no matter how separated--whether laterally or in depth--they are from this one. ''It does not serve as a mandatory link between a semantic unit and either its direct parent or its direct children!''
** See also the note under the 'id' field in [[Wikifunctions:Type proposals/Syntactic unit|the syntactic unit proposal]].
{{collapse bottom}}
=== Required global mappings ===
(taken from [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructorinterfaces.py#L9 the Ninai implementation])
* Mapping from ''constructor_type''s to argument filter functions: Typed map(Wikidata item reference, Function) — Z883(Z6005, Z8)
** Example: {{Q|124316841}} → (some function resembling [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/argumentfilters.py#L23 this one])
* Mapping from ''constructor_type''s to lists of names for core arguments: Typed map(Wikidata item reference, Typed list(String)) — Z883(Z6005, Z881(Z6))
** Example: {{Q|124316841}} → ({{Q|164573}}, {{Q|16889133}})
* Mapping from ''constructor_type''s to any parent ''constructor_type''s: Typed map(Wikidata item reference, Typed list(Wikidata item reference)) — Z883(Z6005, Z881(Z6005))
** Example: {{Q|124316841}} → ({{Q|124316813}})
* Mapping from ''constructor_type''-language pairs to rendering functions: Typed map(Typed pair(Wikidata item reference, language), Function) — Z883(Z882(Z6005, Z6), Z8)
** Example: ({{Q|124316841}}, {{Z|1227}}) → (some function resembling [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/renderers/norwegian.py#L59 this one])
'''Once at least those four mappings are provided for a semantic unit, rendering abstract content using that semantic unit in a target language becomes possible!''' There are a few more global mappings that [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/renderers/__mappings__.py could be listed here] that perform other steps noted in ([https://journals.sagepub.com/doi/full/10.3233/SW-243564#sec-5 §5]), but they are not that different from the ones above, and most only need to be filled in under special circumstances.
=== Example values ===
The content corresponding to the phrase "Thriller is an album" (assigning a class to a proper noun) consists of the following top level semantic unit:
* {{Q|124316841}}, {}, {''core argument mapping''}, [], []
The elements of ''core argument mapping'' are the following string-semantic unit pairs:
* Q164573: ({{Q|151885}}, {}, [], [], ["Q44320"])
* Q16889133: ({{Q|151885}}, {}, [], [], ["Q482994"])
More on the semantic unit types and their arguments may be found [[:d:User:Mahir256/language-generation|on this set of pages being compiled]].
{|class="wikitable" style="margin:.6em 1.6em"
|-
| <syntaxhighlight lang="json" line="line">{
"type": "semantic unit",
"constructor_type": "Wikidata item reference",
"child_identifiers": "typed map(string, string)",
"core_arguments": "typed map(string, semantic unit)",
"scope_arguments": "typed list(semantic unit)",
"other_arguments": "typed list(object)"
}</syntaxhighlight>
| <syntaxhighlight lang="json">{
"Z1K1": "Zxyz",
"ZxyzK1": "Z6005",
"ZxyzK2": "Z883(Z6, Z6)",
"ZxyzK3": "Z883(Z6, Zxyz)",
"ZxyzK4": "Z881(Zxyz)",
"ZxyzK5": "Z881(Z1)",
}</syntaxhighlight>
|}
== Validator ==
The validator ensures that the constructor_type is a valid Wikidata item reference, the identifier is a valid string, the core argument mapping and scope argument list consist of valid semantic units, and the child_identifier mapping is coherent with respect to the argument lists.
== Identity ==
Equality between semantic units implies that the components all compare equal. (Note that unlike with syntactic units, the "identifier" value ''is'' considered as part of this check.)
== Converting to code ==
=== Python ===
Ideally this would be directly portable from https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructor.py , since it has been designed to make such a transfer easier, although due to lack of confirmation from the Abstract Wikipedia team of the points of section 2.4 of {{Q|130478475}} this degree of easiness has not been made certain.
== Display function ==
The Ninai implementation [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructor.py?ref_type=heads#L97 does have a string representation], but that may not be the best for displaying in a web interface like this one.
== Read function ==
These should in general be composed using the Lisp-like syntax described [[Wikifunctions:Status_updates/2024-10-17|in a previous newsletter]], rather than as individual units.
Slightly modifying from ([https://journals.sagepub.com/doi/full/10.3233/SW-243564#sec-2-3 §2.3]):
* The specific choice to represent all semantic units as similarly structured nested function-like objects is '''largely inspired by''' the parenthesized syntax of '''Lisp-like programming languages, and''' to a lesser extent by '''Wikifunctions’ ‘composition’ syntax''' for defining functions entirely in terms of other functions.
* This is intended to make abstract content '''highly declarative, since the intended meaning''' of nested semantic units is frequently '''sufficiently clear on a surface reading''' of their constructor types and arguments.
* This choice also allows abstract content to be effectively homoiconic, since '''modifications to that content within the content itself become a possibility''' [...].
* It also ensures, from an implementation standpoint, that '''differences in how Constructors are handled are dealt with purely by functions''' at different stages in the overall rendering process.
The content given in the example above could be indicated as follows:
["Q124316841",
["Q151885", "Q44320"],
["Q151885", "Q482994"]]
== Comments ==
* {{neutral}} This proposal is an excellent starting point. The thing that does not convince me is the fact that I wouldn't see this proposal applied directly in Wikifunction as it is now, since it is very Python-y and not very Wikifunction-y, meaning that it has a structure that is optimized to be implemented in Python, but does not respect the general spirit of the other Wikifunction types. For example, I'm not convinced by the fact that it uses IDs to link the various Semantic units. Another thing that can be improved: this proposal is a very technical one, and uses a lot of thechnical jargon that can make it quite difficult to understand. Considering that both Wikifunctions and Abstract Wikipedia are collaborative projects, I think that clarity should be a priority. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 09:07, 6 April 2026 (UTC)
** {{re|Dv103}}
*# The Python-iness of it all stemmed from this initially being developed in 2021 and Wikifunctions only coming into existence two years later, during which many development choices were made for operational efficiency and future system flexibility. If you read section 2.4 of the paper I wrote, I have declared the various ways that I've set up the code to make transfer to Wikifunctions implementations possible while making it feasible to develop externally; you're welcome to also ask the Abstract Wikipedia team as well if those assumptions hold.
*# I'd be interested to learn which Wikifunctions types aren't being respected by this proposal; I have given a specification of both semantic and syntactic units in terms of the ZIDs of the types of their components, and do not seek to use or abuse any other types that may have been created entirely ad hoc for some unplanned language generation purpose.
*# (With respect to the use of IDs, they do not 'link the various Semantic units'; they exist for content authors to refer to them when wanting to perform arbitrary transformations on parts of abstract content. This is mainly inspired by the notion of elements having IDs in HTML--an output markup language being used for the Abstract Wikipedia!--so that they can be styled using CSS. Consider a scenario in which semantic unit C is contained within (possibly multiple levels down) semantic unit A. If you want to apply a transformation to C, but are only given A, it should not be the content author's responsibility to figure out where within unit A unit C is; it should be enough to state 'transform the unit with ID "C"' and to let functions handle the traversal.)
*# You do raise a point about jargon; the language I have used is intentionally general so as to prevent as much hardcoding of linguistic concepts within the type as possible. While I can understand ''this'' proposal being a little unclear to the wholly uninitiated user as a consequence, that need not mean functions using these types--which will of course have more tangible, specialized purposes--will also be equally unclear. Nevertheless, I will continue to revise this proposal to add more explanations for some of the choices noted above (in the event someone decides not to read the references I point to), and in any case I am slowly gathering in one place statements I have expressed and ideas I have implemented in [[d:User:Mahir256/language-generation|a subpage of my Wikidata user page]]. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 15:49, 7 April 2026 (UTC)
*#:For the fourth point, my comment was just a suggestion to reword this proposal (since it can be quite difficult to read this proposal while consulting entire external documentations).
*#:For the other points, I am not saying that this proposal technically breaks Wikifunctions; I am just saying that it goes against the (for now) unwritten rules on how usually Wikifunctions types are designed, and it can clash on how in practice Wikifunctions work. For example, the use of IDs requires either that:
*#:* Function creating the objects also generate the unique IDs: it can be quite cumbersome to implement through the use of Wikifunctions' purely functional and deterministic functions.
*#:* IDs are manually created by users: this means that contributors need to manually execute a technical operation, while Wikifunctions should ideally tend towards having a high level interface. This again has not been encoded in a written guideline yet (afaik), but is a principle that has guided the development of Wikifunctions.
*#:The final message is that this proposal needs a bit of rewording and eventually a rethink in order to make it more intuitive. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 21:03, 7 April 2026 (UTC)
*::::{{re|Dv103}} The main structural point I will concede is that identifier choice may be problematic when randomness is not a possibility on Wikifunctions, and have removed it from the structure. ({{Q|1773882}} [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/argumentfilters.py#L229 is already a type of semantic unit in Ninai], so as long as that semantic unit can be accessed from other semantic units, I can deal with it not being a direct member.)
*::::I have also made some revisions above in the interests of clarity, with bolding/italicizing/underlining of important parts for the reader without time to spare for some reason; if there is something above that still doesn't seem clear without looking at an external reference, please let me know and I will try to adjust it.
*::::This being said, I question whether 'intuition' should be the absolute first priority for abstract content planning when 1) what is being stored is information intended to be as language-neutral as possible and 2) most people have come into this project more inclined--dare I say clouded?--by the structure of the language that they themselves speak. (Indeed, the current Abstract Wikipedia is running into problems because of a lack of cross-linguistic awareness from a mostly English-speaking userbase projecting their mostly English-speaking biases into abstract content structure development, running into problems with making even their own language work--and that's not counting other editors who don't speak English also raising issues with handling their own languages; what room have they to try fixing things in an environment so tethered by the principles of just one language?) I have at least considered greatly typologically diverse languages for years now—since 2021 when I started coding the system, if not since 2015 when I started my linguistics minor at university—and in my own work have successfully rendered at least simple sentences ''with predicates and modifiers'' in many of them, so I remain confidently optimistic in saying that the effort of getting users to think about representing information in language in a 'zoomed out' way (hat tip to {{re|عُثمان}} for using this phrase in another group) will permit the greater benefits of a simplified structure for representing (parts of) meaning to be reaped. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 23:34, 7 April 2026 (UTC)
* {{o}}, per Dv103, their proposal is much better fit to Wikifunctions and much more intuitive. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 13:58, 7 April 2026 (UTC)
tezgrwjc05or2mqra8j43a073wjr3mq
263848
263823
2026-04-08T04:00:16Z
Mahir256
38
/* Summary */
263848
wikitext
text/x-wiki
''This is one of a few type proposals based on the Ninai/Udiron project, and thus should be considered alongside others similarly marked.''
== Summary ==
This type holds '''''semantic units, very broadly construed''''', containing other semantic units as members. These units can '''represent ''any'' number of semantically meaningful entities''' ([https://journals.sagepub.com/doi/full/10.3233/SW-243564#sec-2-2 §2.2]), '''such as'''
# '''[[:d:User:Mahir256/language-generation/basic-notions#Concepts|concepts]]''' (whether nominal, such as {{Q|482994}}, or adjectival, such as {{Q|138866260}}, or adverbial, such as {{Q|6004788}});
# dependent '''phrases''' (whether subordinating, such as [[:d:Q135263812|"although the dog ran away"]], or attributive, such as [[:d:Q126200060|concrete brick wall]]);
# independent '''clauses''' (whether verbal, such as [[:d:Q179080|"he saw me"]], or nonverbal, such as [[:d:Q124317532|"the boat is mine"]]);
# full-on '''sentences''' (whether [[:d:Q135512218|by joining two clauses together that apply simultaneously]] or [[:d:Q124317561|through simply stating the simple existence of a concept]]);
# '''containers for those''' (perhaps a [[:d:Q196626|context]] in which things referred to in the text need to be specified, or where particular aspects of the text's [[:d:Q594739|framing]] need to apply); or
# '''signals for any of them''' (perhaps to mark an [[:d:Q1773882|identifier]] on a semantic unit, or to mark something to be [[:d:Q65044042|emphasized]] or raised to be a sentence's [[:d:Q22338337|topic]]).
'''All the semantic unit needs is a type designation''' (named 'constructor_type' in the Structure below) '''for the rendering process to handle it properly.'''
For more on this particular construct (named 'Constructor' in my own work), see the second paragraph of Section 2.2, all of Section 2.3, and section 4.1.1, of {{Q|130478475}}, as well as [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructor.py#L21 the implementation of this construct in Ninai] (and adjacent files within that folder).
== Uses ==
* This is '''one of two fundamental data structures''' (the other being [[Wikifunctions:Type proposals/Syntactic unit|''syntactic units'']], plus a few less fundamental but still important others) that will become necessary for abstract content to truly be abstract. Rather than assembling factual information using function calls, '''these units can be composed and manipulated [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructorrenderer.py and then rendered]''' according to functions that can be defined per language.
* Many of the instance methods listed in the Ninai implementation would need to be defined as functions here for this to work.
* This '''corresponds with the notion of a 'Constructor'''' described in lots of prior writings about Abstract Wikipedia, such as [https://dl.acm.org/doi/10.1145/3425778 the original Abstract Wikipedia paper]. (To help make this just a little less mysterious for this mostly non-linguistic audience, however, I've named this type proposal 'semantic unit'.)
== Structure ==
* constructor_type: '''Type of semantic unit''' that this is.
** This is '''intended to prevent an excess of proliferating semantic unit types''', and to '''keep semantic unit processing streamlined'''.
** (Because all Wikifunctions types must go through a proposal process—much like this one!—there is necessarily an indeterminate delay between when one can be conceived of and when one can be used in abstract content. Any modifications to Wikifunctions types likely will also need to go through that process. By simplifying the semantic unit structure as much as possible, '''the need to propose a type for any new or modified semantic concept is bypassed, such that''', among those able to modify the mappings listed under "Required global mappings" below, '''anyone can define their own semantic units and use them immediately'''.)
* child_identifiers:
** If a semantic unit has as an immediate descendant a semantic unit with constructor_type {{Q|1773882}}, then the string provided by the {{Q|1773882}} semantic unit appears in this mapping and that of its parent semantic units.
** This mapping holds paths that need to be taken to reach, from a top-level semantic unit, other nested semantic units that directly contain {{Q|1773882}} semantic units. (More on these may be found in the Ninai implementation.)
** (''Unless the abstract content author wishes to specifically name a semantic unit'', '''this will be empty by default'''!)
* core_arguments: '''Mapping of names of core arguments to actual <u>semantic unit</u> arguments'''.
** This basically holds a '''list of expected input parameters for a semantic unit''' when it is used; when written in the syntax listed under "Read function" below, '''the first argument is treated as the first core argument, the second the second, and so on'''.
** Here the argument '''names do not have to be Wikidata item IDs''', though it is '''recommended for language-neutral semantic unit definitions''' that they be such IDs.
* scope_arguments: '''List of other <u>semantic unit</u> arguments provided''' that have not been mapped to core argument names.
** These can correspond to '''subordinating clauses''' ("when I went to the store"), '''relative clauses''' ("that went to the store"), and '''signals''' ([this unit is the topic of the sentence!], [this unit should be emphasized!])
** Most definitions of semantic units are '''unlikely to treat''' those kinds of semantic units '''as ''core'' arguments''', given that '''they can often be removed''' from an expression '''without ''necessarily'' affecting sentence structure'''.
* other_arguments: '''List of arguments''' that are neither core nor scope arguments, primarily '''those that are not semantic units at all'''.
** If a semantic unit does not take another semantic unit as input, then the arguments it needs to process are stored here.
*** (For example, '''{{Q|151885}} takes an entity ID as an argument; since this entity ID is not itself a semantic unit, it is stored in other_arguments'''.
** The notions of 'core', 'scope', and 'other' are '''handled by 'argument filters' defined for different constructor_types''' (since they filter inputs into one of those three groups).
*** (The logic behind some of them in Ninai may be found [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/argumentfilters.py on this page].)
*** ''Note that argument filters <u>can</u> be parameterized themselves; it is not likely that those will proliferate, since semantic unit <u>renderers</u> will end up being more diverse in actual argument transformation anyways!''
{{collapse top|Excluded from structure above per comments below}}
* identifier: Identifier assigned to this semantic unit.
** This is intended more to allow other semantic units to reference this one, no matter how separated--whether laterally or in depth--they are from this one. ''It does not serve as a mandatory link between a semantic unit and either its direct parent or its direct children!''
** See also the note under the 'id' field in [[Wikifunctions:Type proposals/Syntactic unit|the syntactic unit proposal]].
{{collapse bottom}}
=== Required global mappings ===
(taken from [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructorinterfaces.py#L9 the Ninai implementation])
* Mapping from ''constructor_type''s to argument filter functions: Typed map(Wikidata item reference, Function) — Z883(Z6005, Z8)
** Example: {{Q|124316841}} → (some function resembling [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/argumentfilters.py#L23 this one])
* Mapping from ''constructor_type''s to lists of names for core arguments: Typed map(Wikidata item reference, Typed list(String)) — Z883(Z6005, Z881(Z6))
** Example: {{Q|124316841}} → ({{Q|164573}}, {{Q|16889133}})
* Mapping from ''constructor_type''s to any parent ''constructor_type''s: Typed map(Wikidata item reference, Typed list(Wikidata item reference)) — Z883(Z6005, Z881(Z6005))
** Example: {{Q|124316841}} → ({{Q|124316813}})
* Mapping from ''constructor_type''-language pairs to rendering functions: Typed map(Typed pair(Wikidata item reference, language), Function) — Z883(Z882(Z6005, Z6), Z8)
** Example: ({{Q|124316841}}, {{Z|1227}}) → (some function resembling [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/renderers/norwegian.py#L59 this one])
'''Once at least those four mappings are provided for a semantic unit, rendering abstract content using that semantic unit in a target language becomes possible!''' There are a few more global mappings that [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/renderers/__mappings__.py could be listed here] that perform other steps noted in ([https://journals.sagepub.com/doi/full/10.3233/SW-243564#sec-5 §5]), but they are not that different from the ones above, and most only need to be filled in under special circumstances.
=== Example values ===
The content corresponding to the phrase "Thriller is an album" (assigning a class to a proper noun) consists of the following top level semantic unit:
* {{Q|124316841}}, {}, {''core argument mapping''}, [], []
The elements of ''core argument mapping'' are the following string-semantic unit pairs:
* Q164573: ({{Q|151885}}, {}, [], [], ["Q44320"])
* Q16889133: ({{Q|151885}}, {}, [], [], ["Q482994"])
More on the semantic unit types and their arguments may be found [[:d:User:Mahir256/language-generation|on this set of pages being compiled]].
{|class="wikitable" style="margin:.6em 1.6em"
|-
| <syntaxhighlight lang="json" line="line">{
"type": "semantic unit",
"constructor_type": "Wikidata item reference",
"child_identifiers": "typed map(string, string)",
"core_arguments": "typed map(string, semantic unit)",
"scope_arguments": "typed list(semantic unit)",
"other_arguments": "typed list(object)"
}</syntaxhighlight>
| <syntaxhighlight lang="json">{
"Z1K1": "Zxyz",
"ZxyzK1": "Z6005",
"ZxyzK2": "Z883(Z6, Z6)",
"ZxyzK3": "Z883(Z6, Zxyz)",
"ZxyzK4": "Z881(Zxyz)",
"ZxyzK5": "Z881(Z1)",
}</syntaxhighlight>
|}
== Validator ==
The validator ensures that the constructor_type is a valid Wikidata item reference, the identifier is a valid string, the core argument mapping and scope argument list consist of valid semantic units, and the child_identifier mapping is coherent with respect to the argument lists.
== Identity ==
Equality between semantic units implies that the components all compare equal. (Note that unlike with syntactic units, the "identifier" value ''is'' considered as part of this check.)
== Converting to code ==
=== Python ===
Ideally this would be directly portable from https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructor.py , since it has been designed to make such a transfer easier, although due to lack of confirmation from the Abstract Wikipedia team of the points of section 2.4 of {{Q|130478475}} this degree of easiness has not been made certain.
== Display function ==
The Ninai implementation [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructor.py?ref_type=heads#L97 does have a string representation], but that may not be the best for displaying in a web interface like this one.
== Read function ==
These should in general be composed using the Lisp-like syntax described [[Wikifunctions:Status_updates/2024-10-17|in a previous newsletter]], rather than as individual units.
Slightly modifying from ([https://journals.sagepub.com/doi/full/10.3233/SW-243564#sec-2-3 §2.3]):
* The specific choice to represent all semantic units as similarly structured nested function-like objects is '''largely inspired by''' the parenthesized syntax of '''Lisp-like programming languages, and''' to a lesser extent by '''Wikifunctions’ ‘composition’ syntax''' for defining functions entirely in terms of other functions.
* This is intended to make abstract content '''highly declarative, since the intended meaning''' of nested semantic units is frequently '''sufficiently clear on a surface reading''' of their constructor types and arguments.
* This choice also allows abstract content to be effectively homoiconic, since '''modifications to that content within the content itself become a possibility''' [...].
* It also ensures, from an implementation standpoint, that '''differences in how Constructors are handled are dealt with purely by functions''' at different stages in the overall rendering process.
The content given in the example above could be indicated as follows:
["Q124316841",
["Q151885", "Q44320"],
["Q151885", "Q482994"]]
== Comments ==
* {{neutral}} This proposal is an excellent starting point. The thing that does not convince me is the fact that I wouldn't see this proposal applied directly in Wikifunction as it is now, since it is very Python-y and not very Wikifunction-y, meaning that it has a structure that is optimized to be implemented in Python, but does not respect the general spirit of the other Wikifunction types. For example, I'm not convinced by the fact that it uses IDs to link the various Semantic units. Another thing that can be improved: this proposal is a very technical one, and uses a lot of thechnical jargon that can make it quite difficult to understand. Considering that both Wikifunctions and Abstract Wikipedia are collaborative projects, I think that clarity should be a priority. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 09:07, 6 April 2026 (UTC)
** {{re|Dv103}}
*# The Python-iness of it all stemmed from this initially being developed in 2021 and Wikifunctions only coming into existence two years later, during which many development choices were made for operational efficiency and future system flexibility. If you read section 2.4 of the paper I wrote, I have declared the various ways that I've set up the code to make transfer to Wikifunctions implementations possible while making it feasible to develop externally; you're welcome to also ask the Abstract Wikipedia team as well if those assumptions hold.
*# I'd be interested to learn which Wikifunctions types aren't being respected by this proposal; I have given a specification of both semantic and syntactic units in terms of the ZIDs of the types of their components, and do not seek to use or abuse any other types that may have been created entirely ad hoc for some unplanned language generation purpose.
*# (With respect to the use of IDs, they do not 'link the various Semantic units'; they exist for content authors to refer to them when wanting to perform arbitrary transformations on parts of abstract content. This is mainly inspired by the notion of elements having IDs in HTML--an output markup language being used for the Abstract Wikipedia!--so that they can be styled using CSS. Consider a scenario in which semantic unit C is contained within (possibly multiple levels down) semantic unit A. If you want to apply a transformation to C, but are only given A, it should not be the content author's responsibility to figure out where within unit A unit C is; it should be enough to state 'transform the unit with ID "C"' and to let functions handle the traversal.)
*# You do raise a point about jargon; the language I have used is intentionally general so as to prevent as much hardcoding of linguistic concepts within the type as possible. While I can understand ''this'' proposal being a little unclear to the wholly uninitiated user as a consequence, that need not mean functions using these types--which will of course have more tangible, specialized purposes--will also be equally unclear. Nevertheless, I will continue to revise this proposal to add more explanations for some of the choices noted above (in the event someone decides not to read the references I point to), and in any case I am slowly gathering in one place statements I have expressed and ideas I have implemented in [[d:User:Mahir256/language-generation|a subpage of my Wikidata user page]]. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 15:49, 7 April 2026 (UTC)
*#:For the fourth point, my comment was just a suggestion to reword this proposal (since it can be quite difficult to read this proposal while consulting entire external documentations).
*#:For the other points, I am not saying that this proposal technically breaks Wikifunctions; I am just saying that it goes against the (for now) unwritten rules on how usually Wikifunctions types are designed, and it can clash on how in practice Wikifunctions work. For example, the use of IDs requires either that:
*#:* Function creating the objects also generate the unique IDs: it can be quite cumbersome to implement through the use of Wikifunctions' purely functional and deterministic functions.
*#:* IDs are manually created by users: this means that contributors need to manually execute a technical operation, while Wikifunctions should ideally tend towards having a high level interface. This again has not been encoded in a written guideline yet (afaik), but is a principle that has guided the development of Wikifunctions.
*#:The final message is that this proposal needs a bit of rewording and eventually a rethink in order to make it more intuitive. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 21:03, 7 April 2026 (UTC)
*::::{{re|Dv103}} The main structural point I will concede is that identifier choice may be problematic when randomness is not a possibility on Wikifunctions, and have removed it from the structure. ({{Q|1773882}} [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/argumentfilters.py#L229 is already a type of semantic unit in Ninai], so as long as that semantic unit can be accessed from other semantic units, I can deal with it not being a direct member.)
*::::I have also made some revisions above in the interests of clarity, with bolding/italicizing/underlining of important parts for the reader without time to spare for some reason; if there is something above that still doesn't seem clear without looking at an external reference, please let me know and I will try to adjust it.
*::::This being said, I question whether 'intuition' should be the absolute first priority for abstract content planning when 1) what is being stored is information intended to be as language-neutral as possible and 2) most people have come into this project more inclined--dare I say clouded?--by the structure of the language that they themselves speak. (Indeed, the current Abstract Wikipedia is running into problems because of a lack of cross-linguistic awareness from a mostly English-speaking userbase projecting their mostly English-speaking biases into abstract content structure development, running into problems with making even their own language work--and that's not counting other editors who don't speak English also raising issues with handling their own languages; what room have they to try fixing things in an environment so tethered by the principles of just one language?) I have at least considered greatly typologically diverse languages for years now—since 2021 when I started coding the system, if not since 2015 when I started my linguistics minor at university—and in my own work have successfully rendered at least simple sentences ''with predicates and modifiers'' in many of them, so I remain confidently optimistic in saying that the effort of getting users to think about representing information in language in a 'zoomed out' way (hat tip to {{re|عُثمان}} for using this phrase in another group) will permit the greater benefits of a simplified structure for representing (parts of) meaning to be reaped. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 23:34, 7 April 2026 (UTC)
* {{o}}, per Dv103, their proposal is much better fit to Wikifunctions and much more intuitive. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 13:58, 7 April 2026 (UTC)
mqhw4iyt9250dzaf7cpty3shupe1j90
263849
263848
2026-04-08T04:02:22Z
Mahir256
38
/* Structure */
263849
wikitext
text/x-wiki
''This is one of a few type proposals based on the Ninai/Udiron project, and thus should be considered alongside others similarly marked.''
== Summary ==
This type holds '''''semantic units, very broadly construed''''', containing other semantic units as members. These units can '''represent ''any'' number of semantically meaningful entities''' ([https://journals.sagepub.com/doi/full/10.3233/SW-243564#sec-2-2 §2.2]), '''such as'''
# '''[[:d:User:Mahir256/language-generation/basic-notions#Concepts|concepts]]''' (whether nominal, such as {{Q|482994}}, or adjectival, such as {{Q|138866260}}, or adverbial, such as {{Q|6004788}});
# dependent '''phrases''' (whether subordinating, such as [[:d:Q135263812|"although the dog ran away"]], or attributive, such as [[:d:Q126200060|concrete brick wall]]);
# independent '''clauses''' (whether verbal, such as [[:d:Q179080|"he saw me"]], or nonverbal, such as [[:d:Q124317532|"the boat is mine"]]);
# full-on '''sentences''' (whether [[:d:Q135512218|by joining two clauses together that apply simultaneously]] or [[:d:Q124317561|through simply stating the simple existence of a concept]]);
# '''containers for those''' (perhaps a [[:d:Q196626|context]] in which things referred to in the text need to be specified, or where particular aspects of the text's [[:d:Q594739|framing]] need to apply); or
# '''signals for any of them''' (perhaps to mark an [[:d:Q1773882|identifier]] on a semantic unit, or to mark something to be [[:d:Q65044042|emphasized]] or raised to be a sentence's [[:d:Q22338337|topic]]).
'''All the semantic unit needs is a type designation''' (named 'constructor_type' in the Structure below) '''for the rendering process to handle it properly.'''
For more on this particular construct (named 'Constructor' in my own work), see the second paragraph of Section 2.2, all of Section 2.3, and section 4.1.1, of {{Q|130478475}}, as well as [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructor.py#L21 the implementation of this construct in Ninai] (and adjacent files within that folder).
== Uses ==
* This is '''one of two fundamental data structures''' (the other being [[Wikifunctions:Type proposals/Syntactic unit|''syntactic units'']], plus a few less fundamental but still important others) that will become necessary for abstract content to truly be abstract. Rather than assembling factual information using function calls, '''these units can be composed and manipulated [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructorrenderer.py and then rendered]''' according to functions that can be defined per language.
* Many of the instance methods listed in the Ninai implementation would need to be defined as functions here for this to work.
* This '''corresponds with the notion of a 'Constructor'''' described in lots of prior writings about Abstract Wikipedia, such as [https://dl.acm.org/doi/10.1145/3425778 the original Abstract Wikipedia paper]. (To help make this just a little less mysterious for this mostly non-linguistic audience, however, I've named this type proposal 'semantic unit'.)
== Structure ==
* constructor_type: '''Type of semantic unit''' that this is.
** This is '''intended to prevent an excess of proliferating semantic unit types''', and to '''keep semantic unit processing streamlined'''.
** (Because all Wikifunctions types must go through a proposal process—much like this one!—there is necessarily an indeterminate delay between when one can be conceived of and when one can be used in abstract content. Any modifications to Wikifunctions types likely will also need to go through that process. By simplifying the semantic unit structure as much as possible, '''the need to propose a type for any new or modified semantic concept is bypassed, such that''', among those able to modify the mappings listed under "Required global mappings" below, '''anyone can define their own semantic units and use them immediately'''.)
* child_identifiers:
** If a semantic unit has as an immediate descendant a semantic unit with constructor_type {{Q|1773882}}, then the string provided by the {{Q|1773882}} semantic unit appears in this mapping and that of its parent semantic units.
** This mapping holds paths that need to be taken to reach, from a top-level semantic unit, other nested semantic units that directly contain {{Q|1773882}} semantic units. (More on these may be found in the Ninai implementation.)
** (''Unless the abstract content author wishes to specifically name a semantic unit'', '''this will be empty by default'''!)
* core_arguments: '''Mapping of names of core arguments to actual <u>semantic unit</u> arguments'''.
** This basically holds a '''list of expected input parameters for a semantic unit''' when it is used; when written in the syntax listed under "Read function" below, '''the first argument is treated as the first core argument, the second the second, and so on'''.
** Here the argument '''names do not have to be Wikidata item IDs''', though it is '''recommended for language-neutral semantic unit definitions''' that they be such IDs.
* scope_arguments: '''List of other <u>semantic unit</u> arguments provided''' that have not been mapped to core argument names.
** These can correspond to '''subordinating clauses''' ("when I went to the store"), '''relative clauses''' ("that went to the store"), and '''signals''' ([this unit is the topic of the sentence!], [this unit should be emphasized!])
** Most definitions of semantic units are '''unlikely to treat''' those kinds of semantic units '''as ''core'' arguments''', given that '''they can often be removed''' from an expression '''without ''necessarily'' affecting sentence structure'''.
* other_arguments: '''List of arguments''' that are neither core nor scope arguments, primarily those '''that are not semantic units at all'''.
** If a semantic unit does not take another semantic unit as input, then the arguments it needs to process are stored here.
*** (For example, '''{{Q|151885}} takes an entity ID as an argument; since this entity ID is not itself a semantic unit, it is stored in other_arguments'''.
** The notions of 'core', 'scope', and 'other' are '''handled by 'argument filters' defined for different constructor_types''' (since they filter inputs into one of those three groups).
*** (The logic behind some of them in Ninai may be found [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/argumentfilters.py on this page].)
*** ''Note that argument filters <u>can</u> be parameterized themselves; it is not likely that those will proliferate, since semantic unit <u>renderers</u> will end up being more diverse in actual argument transformation anyways!''
{{collapse top|Excluded from structure above per comments below}}
* identifier: Identifier assigned to this semantic unit.
** This is intended more to allow other semantic units to reference this one, no matter how separated--whether laterally or in depth--they are from this one. ''It does not serve as a mandatory link between a semantic unit and either its direct parent or its direct children!''
** See also the note under the 'id' field in [[Wikifunctions:Type proposals/Syntactic unit|the syntactic unit proposal]].
{{collapse bottom}}
=== Required global mappings ===
(taken from [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructorinterfaces.py#L9 the Ninai implementation])
* Mapping from ''constructor_type''s to argument filter functions: Typed map(Wikidata item reference, Function) — Z883(Z6005, Z8)
** Example: {{Q|124316841}} → (some function resembling [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/argumentfilters.py#L23 this one])
* Mapping from ''constructor_type''s to lists of names for core arguments: Typed map(Wikidata item reference, Typed list(String)) — Z883(Z6005, Z881(Z6))
** Example: {{Q|124316841}} → ({{Q|164573}}, {{Q|16889133}})
* Mapping from ''constructor_type''s to any parent ''constructor_type''s: Typed map(Wikidata item reference, Typed list(Wikidata item reference)) — Z883(Z6005, Z881(Z6005))
** Example: {{Q|124316841}} → ({{Q|124316813}})
* Mapping from ''constructor_type''-language pairs to rendering functions: Typed map(Typed pair(Wikidata item reference, language), Function) — Z883(Z882(Z6005, Z6), Z8)
** Example: ({{Q|124316841}}, {{Z|1227}}) → (some function resembling [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/renderers/norwegian.py#L59 this one])
'''Once at least those four mappings are provided for a semantic unit, rendering abstract content using that semantic unit in a target language becomes possible!''' There are a few more global mappings that [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/renderers/__mappings__.py could be listed here] that perform other steps noted in ([https://journals.sagepub.com/doi/full/10.3233/SW-243564#sec-5 §5]), but they are not that different from the ones above, and most only need to be filled in under special circumstances.
=== Example values ===
The content corresponding to the phrase "Thriller is an album" (assigning a class to a proper noun) consists of the following top level semantic unit:
* {{Q|124316841}}, {}, {''core argument mapping''}, [], []
The elements of ''core argument mapping'' are the following string-semantic unit pairs:
* Q164573: ({{Q|151885}}, {}, [], [], ["Q44320"])
* Q16889133: ({{Q|151885}}, {}, [], [], ["Q482994"])
More on the semantic unit types and their arguments may be found [[:d:User:Mahir256/language-generation|on this set of pages being compiled]].
{|class="wikitable" style="margin:.6em 1.6em"
|-
| <syntaxhighlight lang="json" line="line">{
"type": "semantic unit",
"constructor_type": "Wikidata item reference",
"child_identifiers": "typed map(string, string)",
"core_arguments": "typed map(string, semantic unit)",
"scope_arguments": "typed list(semantic unit)",
"other_arguments": "typed list(object)"
}</syntaxhighlight>
| <syntaxhighlight lang="json">{
"Z1K1": "Zxyz",
"ZxyzK1": "Z6005",
"ZxyzK2": "Z883(Z6, Z6)",
"ZxyzK3": "Z883(Z6, Zxyz)",
"ZxyzK4": "Z881(Zxyz)",
"ZxyzK5": "Z881(Z1)",
}</syntaxhighlight>
|}
== Validator ==
The validator ensures that the constructor_type is a valid Wikidata item reference, the identifier is a valid string, the core argument mapping and scope argument list consist of valid semantic units, and the child_identifier mapping is coherent with respect to the argument lists.
== Identity ==
Equality between semantic units implies that the components all compare equal. (Note that unlike with syntactic units, the "identifier" value ''is'' considered as part of this check.)
== Converting to code ==
=== Python ===
Ideally this would be directly portable from https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructor.py , since it has been designed to make such a transfer easier, although due to lack of confirmation from the Abstract Wikipedia team of the points of section 2.4 of {{Q|130478475}} this degree of easiness has not been made certain.
== Display function ==
The Ninai implementation [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructor.py?ref_type=heads#L97 does have a string representation], but that may not be the best for displaying in a web interface like this one.
== Read function ==
These should in general be composed using the Lisp-like syntax described [[Wikifunctions:Status_updates/2024-10-17|in a previous newsletter]], rather than as individual units.
Slightly modifying from ([https://journals.sagepub.com/doi/full/10.3233/SW-243564#sec-2-3 §2.3]):
* The specific choice to represent all semantic units as similarly structured nested function-like objects is '''largely inspired by''' the parenthesized syntax of '''Lisp-like programming languages, and''' to a lesser extent by '''Wikifunctions’ ‘composition’ syntax''' for defining functions entirely in terms of other functions.
* This is intended to make abstract content '''highly declarative, since the intended meaning''' of nested semantic units is frequently '''sufficiently clear on a surface reading''' of their constructor types and arguments.
* This choice also allows abstract content to be effectively homoiconic, since '''modifications to that content within the content itself become a possibility''' [...].
* It also ensures, from an implementation standpoint, that '''differences in how Constructors are handled are dealt with purely by functions''' at different stages in the overall rendering process.
The content given in the example above could be indicated as follows:
["Q124316841",
["Q151885", "Q44320"],
["Q151885", "Q482994"]]
== Comments ==
* {{neutral}} This proposal is an excellent starting point. The thing that does not convince me is the fact that I wouldn't see this proposal applied directly in Wikifunction as it is now, since it is very Python-y and not very Wikifunction-y, meaning that it has a structure that is optimized to be implemented in Python, but does not respect the general spirit of the other Wikifunction types. For example, I'm not convinced by the fact that it uses IDs to link the various Semantic units. Another thing that can be improved: this proposal is a very technical one, and uses a lot of thechnical jargon that can make it quite difficult to understand. Considering that both Wikifunctions and Abstract Wikipedia are collaborative projects, I think that clarity should be a priority. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 09:07, 6 April 2026 (UTC)
** {{re|Dv103}}
*# The Python-iness of it all stemmed from this initially being developed in 2021 and Wikifunctions only coming into existence two years later, during which many development choices were made for operational efficiency and future system flexibility. If you read section 2.4 of the paper I wrote, I have declared the various ways that I've set up the code to make transfer to Wikifunctions implementations possible while making it feasible to develop externally; you're welcome to also ask the Abstract Wikipedia team as well if those assumptions hold.
*# I'd be interested to learn which Wikifunctions types aren't being respected by this proposal; I have given a specification of both semantic and syntactic units in terms of the ZIDs of the types of their components, and do not seek to use or abuse any other types that may have been created entirely ad hoc for some unplanned language generation purpose.
*# (With respect to the use of IDs, they do not 'link the various Semantic units'; they exist for content authors to refer to them when wanting to perform arbitrary transformations on parts of abstract content. This is mainly inspired by the notion of elements having IDs in HTML--an output markup language being used for the Abstract Wikipedia!--so that they can be styled using CSS. Consider a scenario in which semantic unit C is contained within (possibly multiple levels down) semantic unit A. If you want to apply a transformation to C, but are only given A, it should not be the content author's responsibility to figure out where within unit A unit C is; it should be enough to state 'transform the unit with ID "C"' and to let functions handle the traversal.)
*# You do raise a point about jargon; the language I have used is intentionally general so as to prevent as much hardcoding of linguistic concepts within the type as possible. While I can understand ''this'' proposal being a little unclear to the wholly uninitiated user as a consequence, that need not mean functions using these types--which will of course have more tangible, specialized purposes--will also be equally unclear. Nevertheless, I will continue to revise this proposal to add more explanations for some of the choices noted above (in the event someone decides not to read the references I point to), and in any case I am slowly gathering in one place statements I have expressed and ideas I have implemented in [[d:User:Mahir256/language-generation|a subpage of my Wikidata user page]]. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 15:49, 7 April 2026 (UTC)
*#:For the fourth point, my comment was just a suggestion to reword this proposal (since it can be quite difficult to read this proposal while consulting entire external documentations).
*#:For the other points, I am not saying that this proposal technically breaks Wikifunctions; I am just saying that it goes against the (for now) unwritten rules on how usually Wikifunctions types are designed, and it can clash on how in practice Wikifunctions work. For example, the use of IDs requires either that:
*#:* Function creating the objects also generate the unique IDs: it can be quite cumbersome to implement through the use of Wikifunctions' purely functional and deterministic functions.
*#:* IDs are manually created by users: this means that contributors need to manually execute a technical operation, while Wikifunctions should ideally tend towards having a high level interface. This again has not been encoded in a written guideline yet (afaik), but is a principle that has guided the development of Wikifunctions.
*#:The final message is that this proposal needs a bit of rewording and eventually a rethink in order to make it more intuitive. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 21:03, 7 April 2026 (UTC)
*::::{{re|Dv103}} The main structural point I will concede is that identifier choice may be problematic when randomness is not a possibility on Wikifunctions, and have removed it from the structure. ({{Q|1773882}} [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/argumentfilters.py#L229 is already a type of semantic unit in Ninai], so as long as that semantic unit can be accessed from other semantic units, I can deal with it not being a direct member.)
*::::I have also made some revisions above in the interests of clarity, with bolding/italicizing/underlining of important parts for the reader without time to spare for some reason; if there is something above that still doesn't seem clear without looking at an external reference, please let me know and I will try to adjust it.
*::::This being said, I question whether 'intuition' should be the absolute first priority for abstract content planning when 1) what is being stored is information intended to be as language-neutral as possible and 2) most people have come into this project more inclined--dare I say clouded?--by the structure of the language that they themselves speak. (Indeed, the current Abstract Wikipedia is running into problems because of a lack of cross-linguistic awareness from a mostly English-speaking userbase projecting their mostly English-speaking biases into abstract content structure development, running into problems with making even their own language work--and that's not counting other editors who don't speak English also raising issues with handling their own languages; what room have they to try fixing things in an environment so tethered by the principles of just one language?) I have at least considered greatly typologically diverse languages for years now—since 2021 when I started coding the system, if not since 2015 when I started my linguistics minor at university—and in my own work have successfully rendered at least simple sentences ''with predicates and modifiers'' in many of them, so I remain confidently optimistic in saying that the effort of getting users to think about representing information in language in a 'zoomed out' way (hat tip to {{re|عُثمان}} for using this phrase in another group) will permit the greater benefits of a simplified structure for representing (parts of) meaning to be reaped. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 23:34, 7 April 2026 (UTC)
* {{o}}, per Dv103, their proposal is much better fit to Wikifunctions and much more intuitive. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 13:58, 7 April 2026 (UTC)
1o0sqmyxh14nuz6m4xkwysugh91i51m
263850
263849
2026-04-08T04:03:20Z
Mahir256
38
/* Required global mappings */
263850
wikitext
text/x-wiki
''This is one of a few type proposals based on the Ninai/Udiron project, and thus should be considered alongside others similarly marked.''
== Summary ==
This type holds '''''semantic units, very broadly construed''''', containing other semantic units as members. These units can '''represent ''any'' number of semantically meaningful entities''' ([https://journals.sagepub.com/doi/full/10.3233/SW-243564#sec-2-2 §2.2]), '''such as'''
# '''[[:d:User:Mahir256/language-generation/basic-notions#Concepts|concepts]]''' (whether nominal, such as {{Q|482994}}, or adjectival, such as {{Q|138866260}}, or adverbial, such as {{Q|6004788}});
# dependent '''phrases''' (whether subordinating, such as [[:d:Q135263812|"although the dog ran away"]], or attributive, such as [[:d:Q126200060|concrete brick wall]]);
# independent '''clauses''' (whether verbal, such as [[:d:Q179080|"he saw me"]], or nonverbal, such as [[:d:Q124317532|"the boat is mine"]]);
# full-on '''sentences''' (whether [[:d:Q135512218|by joining two clauses together that apply simultaneously]] or [[:d:Q124317561|through simply stating the simple existence of a concept]]);
# '''containers for those''' (perhaps a [[:d:Q196626|context]] in which things referred to in the text need to be specified, or where particular aspects of the text's [[:d:Q594739|framing]] need to apply); or
# '''signals for any of them''' (perhaps to mark an [[:d:Q1773882|identifier]] on a semantic unit, or to mark something to be [[:d:Q65044042|emphasized]] or raised to be a sentence's [[:d:Q22338337|topic]]).
'''All the semantic unit needs is a type designation''' (named 'constructor_type' in the Structure below) '''for the rendering process to handle it properly.'''
For more on this particular construct (named 'Constructor' in my own work), see the second paragraph of Section 2.2, all of Section 2.3, and section 4.1.1, of {{Q|130478475}}, as well as [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructor.py#L21 the implementation of this construct in Ninai] (and adjacent files within that folder).
== Uses ==
* This is '''one of two fundamental data structures''' (the other being [[Wikifunctions:Type proposals/Syntactic unit|''syntactic units'']], plus a few less fundamental but still important others) that will become necessary for abstract content to truly be abstract. Rather than assembling factual information using function calls, '''these units can be composed and manipulated [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructorrenderer.py and then rendered]''' according to functions that can be defined per language.
* Many of the instance methods listed in the Ninai implementation would need to be defined as functions here for this to work.
* This '''corresponds with the notion of a 'Constructor'''' described in lots of prior writings about Abstract Wikipedia, such as [https://dl.acm.org/doi/10.1145/3425778 the original Abstract Wikipedia paper]. (To help make this just a little less mysterious for this mostly non-linguistic audience, however, I've named this type proposal 'semantic unit'.)
== Structure ==
* constructor_type: '''Type of semantic unit''' that this is.
** This is '''intended to prevent an excess of proliferating semantic unit types''', and to '''keep semantic unit processing streamlined'''.
** (Because all Wikifunctions types must go through a proposal process—much like this one!—there is necessarily an indeterminate delay between when one can be conceived of and when one can be used in abstract content. Any modifications to Wikifunctions types likely will also need to go through that process. By simplifying the semantic unit structure as much as possible, '''the need to propose a type for any new or modified semantic concept is bypassed, such that''', among those able to modify the mappings listed under "Required global mappings" below, '''anyone can define their own semantic units and use them immediately'''.)
* child_identifiers:
** If a semantic unit has as an immediate descendant a semantic unit with constructor_type {{Q|1773882}}, then the string provided by the {{Q|1773882}} semantic unit appears in this mapping and that of its parent semantic units.
** This mapping holds paths that need to be taken to reach, from a top-level semantic unit, other nested semantic units that directly contain {{Q|1773882}} semantic units. (More on these may be found in the Ninai implementation.)
** (''Unless the abstract content author wishes to specifically name a semantic unit'', '''this will be empty by default'''!)
* core_arguments: '''Mapping of names of core arguments to actual <u>semantic unit</u> arguments'''.
** This basically holds a '''list of expected input parameters for a semantic unit''' when it is used; when written in the syntax listed under "Read function" below, '''the first argument is treated as the first core argument, the second the second, and so on'''.
** Here the argument '''names do not have to be Wikidata item IDs''', though it is '''recommended for language-neutral semantic unit definitions''' that they be such IDs.
* scope_arguments: '''List of other <u>semantic unit</u> arguments provided''' that have not been mapped to core argument names.
** These can correspond to '''subordinating clauses''' ("when I went to the store"), '''relative clauses''' ("that went to the store"), and '''signals''' ([this unit is the topic of the sentence!], [this unit should be emphasized!])
** Most definitions of semantic units are '''unlikely to treat''' those kinds of semantic units '''as ''core'' arguments''', given that '''they can often be removed''' from an expression '''without ''necessarily'' affecting sentence structure'''.
* other_arguments: '''List of arguments''' that are neither core nor scope arguments, primarily those '''that are not semantic units at all'''.
** If a semantic unit does not take another semantic unit as input, then the arguments it needs to process are stored here.
*** (For example, '''{{Q|151885}} takes an entity ID as an argument; since this entity ID is not itself a semantic unit, it is stored in other_arguments'''.
** The notions of 'core', 'scope', and 'other' are '''handled by 'argument filters' defined for different constructor_types''' (since they filter inputs into one of those three groups).
*** (The logic behind some of them in Ninai may be found [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/argumentfilters.py on this page].)
*** ''Note that argument filters <u>can</u> be parameterized themselves; it is not likely that those will proliferate, since semantic unit <u>renderers</u> will end up being more diverse in actual argument transformation anyways!''
{{collapse top|Excluded from structure above per comments below}}
* identifier: Identifier assigned to this semantic unit.
** This is intended more to allow other semantic units to reference this one, no matter how separated--whether laterally or in depth--they are from this one. ''It does not serve as a mandatory link between a semantic unit and either its direct parent or its direct children!''
** See also the note under the 'id' field in [[Wikifunctions:Type proposals/Syntactic unit|the syntactic unit proposal]].
{{collapse bottom}}
=== Required global mappings ===
(taken from [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructorinterfaces.py#L9 the Ninai implementation])
* Mapping from ''constructor_type''s to argument filter functions: Typed map(Wikidata item reference, Function) — Z883(Z6005, Z8)
** Example: {{Q|124316841}} → (some function resembling [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/argumentfilters.py#L23 this one])
* Mapping from ''constructor_type''s to lists of names for core arguments: Typed map(Wikidata item reference, Typed list(String)) — Z883(Z6005, Z881(Z6))
** Example: {{Q|124316841}} → ({{Q|164573}}, {{Q|16889133}})
* Mapping from ''constructor_type''s to any parent ''constructor_type''s: Typed map(Wikidata item reference, Typed list(Wikidata item reference)) — Z883(Z6005, Z881(Z6005))
** Example: {{Q|124316841}} → ({{Q|124316813}})
* Mapping from ''constructor_type''-language pairs to rendering functions: Typed map(Typed pair(Wikidata item reference, language), Function) — Z883(Z882(Z6005, Z6), Z8)
** Example: ({{Q|124316841}}, {{Z|1227}}) → (some function resembling [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/renderers/norwegian.py#L59 this one])
'''Once an entry in each of those four mappings is provided for a semantic unit, rendering abstract content using that semantic unit in a target language becomes possible!''' There are a few more global mappings that [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/renderers/__mappings__.py could be listed here] that perform other steps noted in ([https://journals.sagepub.com/doi/full/10.3233/SW-243564#sec-5 §5]), but they are not that different from the ones above, and most only need to be filled in under special circumstances.
=== Example values ===
The content corresponding to the phrase "Thriller is an album" (assigning a class to a proper noun) consists of the following top level semantic unit:
* {{Q|124316841}}, {}, {''core argument mapping''}, [], []
The elements of ''core argument mapping'' are the following string-semantic unit pairs:
* Q164573: ({{Q|151885}}, {}, [], [], ["Q44320"])
* Q16889133: ({{Q|151885}}, {}, [], [], ["Q482994"])
More on the semantic unit types and their arguments may be found [[:d:User:Mahir256/language-generation|on this set of pages being compiled]].
{|class="wikitable" style="margin:.6em 1.6em"
|-
| <syntaxhighlight lang="json" line="line">{
"type": "semantic unit",
"constructor_type": "Wikidata item reference",
"child_identifiers": "typed map(string, string)",
"core_arguments": "typed map(string, semantic unit)",
"scope_arguments": "typed list(semantic unit)",
"other_arguments": "typed list(object)"
}</syntaxhighlight>
| <syntaxhighlight lang="json">{
"Z1K1": "Zxyz",
"ZxyzK1": "Z6005",
"ZxyzK2": "Z883(Z6, Z6)",
"ZxyzK3": "Z883(Z6, Zxyz)",
"ZxyzK4": "Z881(Zxyz)",
"ZxyzK5": "Z881(Z1)",
}</syntaxhighlight>
|}
== Validator ==
The validator ensures that the constructor_type is a valid Wikidata item reference, the identifier is a valid string, the core argument mapping and scope argument list consist of valid semantic units, and the child_identifier mapping is coherent with respect to the argument lists.
== Identity ==
Equality between semantic units implies that the components all compare equal. (Note that unlike with syntactic units, the "identifier" value ''is'' considered as part of this check.)
== Converting to code ==
=== Python ===
Ideally this would be directly portable from https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructor.py , since it has been designed to make such a transfer easier, although due to lack of confirmation from the Abstract Wikipedia team of the points of section 2.4 of {{Q|130478475}} this degree of easiness has not been made certain.
== Display function ==
The Ninai implementation [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/constructor.py?ref_type=heads#L97 does have a string representation], but that may not be the best for displaying in a web interface like this one.
== Read function ==
These should in general be composed using the Lisp-like syntax described [[Wikifunctions:Status_updates/2024-10-17|in a previous newsletter]], rather than as individual units.
Slightly modifying from ([https://journals.sagepub.com/doi/full/10.3233/SW-243564#sec-2-3 §2.3]):
* The specific choice to represent all semantic units as similarly structured nested function-like objects is '''largely inspired by''' the parenthesized syntax of '''Lisp-like programming languages, and''' to a lesser extent by '''Wikifunctions’ ‘composition’ syntax''' for defining functions entirely in terms of other functions.
* This is intended to make abstract content '''highly declarative, since the intended meaning''' of nested semantic units is frequently '''sufficiently clear on a surface reading''' of their constructor types and arguments.
* This choice also allows abstract content to be effectively homoiconic, since '''modifications to that content within the content itself become a possibility''' [...].
* It also ensures, from an implementation standpoint, that '''differences in how Constructors are handled are dealt with purely by functions''' at different stages in the overall rendering process.
The content given in the example above could be indicated as follows:
["Q124316841",
["Q151885", "Q44320"],
["Q151885", "Q482994"]]
== Comments ==
* {{neutral}} This proposal is an excellent starting point. The thing that does not convince me is the fact that I wouldn't see this proposal applied directly in Wikifunction as it is now, since it is very Python-y and not very Wikifunction-y, meaning that it has a structure that is optimized to be implemented in Python, but does not respect the general spirit of the other Wikifunction types. For example, I'm not convinced by the fact that it uses IDs to link the various Semantic units. Another thing that can be improved: this proposal is a very technical one, and uses a lot of thechnical jargon that can make it quite difficult to understand. Considering that both Wikifunctions and Abstract Wikipedia are collaborative projects, I think that clarity should be a priority. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 09:07, 6 April 2026 (UTC)
** {{re|Dv103}}
*# The Python-iness of it all stemmed from this initially being developed in 2021 and Wikifunctions only coming into existence two years later, during which many development choices were made for operational efficiency and future system flexibility. If you read section 2.4 of the paper I wrote, I have declared the various ways that I've set up the code to make transfer to Wikifunctions implementations possible while making it feasible to develop externally; you're welcome to also ask the Abstract Wikipedia team as well if those assumptions hold.
*# I'd be interested to learn which Wikifunctions types aren't being respected by this proposal; I have given a specification of both semantic and syntactic units in terms of the ZIDs of the types of their components, and do not seek to use or abuse any other types that may have been created entirely ad hoc for some unplanned language generation purpose.
*# (With respect to the use of IDs, they do not 'link the various Semantic units'; they exist for content authors to refer to them when wanting to perform arbitrary transformations on parts of abstract content. This is mainly inspired by the notion of elements having IDs in HTML--an output markup language being used for the Abstract Wikipedia!--so that they can be styled using CSS. Consider a scenario in which semantic unit C is contained within (possibly multiple levels down) semantic unit A. If you want to apply a transformation to C, but are only given A, it should not be the content author's responsibility to figure out where within unit A unit C is; it should be enough to state 'transform the unit with ID "C"' and to let functions handle the traversal.)
*# You do raise a point about jargon; the language I have used is intentionally general so as to prevent as much hardcoding of linguistic concepts within the type as possible. While I can understand ''this'' proposal being a little unclear to the wholly uninitiated user as a consequence, that need not mean functions using these types--which will of course have more tangible, specialized purposes--will also be equally unclear. Nevertheless, I will continue to revise this proposal to add more explanations for some of the choices noted above (in the event someone decides not to read the references I point to), and in any case I am slowly gathering in one place statements I have expressed and ideas I have implemented in [[d:User:Mahir256/language-generation|a subpage of my Wikidata user page]]. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 15:49, 7 April 2026 (UTC)
*#:For the fourth point, my comment was just a suggestion to reword this proposal (since it can be quite difficult to read this proposal while consulting entire external documentations).
*#:For the other points, I am not saying that this proposal technically breaks Wikifunctions; I am just saying that it goes against the (for now) unwritten rules on how usually Wikifunctions types are designed, and it can clash on how in practice Wikifunctions work. For example, the use of IDs requires either that:
*#:* Function creating the objects also generate the unique IDs: it can be quite cumbersome to implement through the use of Wikifunctions' purely functional and deterministic functions.
*#:* IDs are manually created by users: this means that contributors need to manually execute a technical operation, while Wikifunctions should ideally tend towards having a high level interface. This again has not been encoded in a written guideline yet (afaik), but is a principle that has guided the development of Wikifunctions.
*#:The final message is that this proposal needs a bit of rewording and eventually a rethink in order to make it more intuitive. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 21:03, 7 April 2026 (UTC)
*::::{{re|Dv103}} The main structural point I will concede is that identifier choice may be problematic when randomness is not a possibility on Wikifunctions, and have removed it from the structure. ({{Q|1773882}} [https://gitlab.com/mahir256/ninai/-/blob/main/ninai/base/argumentfilters.py#L229 is already a type of semantic unit in Ninai], so as long as that semantic unit can be accessed from other semantic units, I can deal with it not being a direct member.)
*::::I have also made some revisions above in the interests of clarity, with bolding/italicizing/underlining of important parts for the reader without time to spare for some reason; if there is something above that still doesn't seem clear without looking at an external reference, please let me know and I will try to adjust it.
*::::This being said, I question whether 'intuition' should be the absolute first priority for abstract content planning when 1) what is being stored is information intended to be as language-neutral as possible and 2) most people have come into this project more inclined--dare I say clouded?--by the structure of the language that they themselves speak. (Indeed, the current Abstract Wikipedia is running into problems because of a lack of cross-linguistic awareness from a mostly English-speaking userbase projecting their mostly English-speaking biases into abstract content structure development, running into problems with making even their own language work--and that's not counting other editors who don't speak English also raising issues with handling their own languages; what room have they to try fixing things in an environment so tethered by the principles of just one language?) I have at least considered greatly typologically diverse languages for years now—since 2021 when I started coding the system, if not since 2015 when I started my linguistics minor at university—and in my own work have successfully rendered at least simple sentences ''with predicates and modifiers'' in many of them, so I remain confidently optimistic in saying that the effort of getting users to think about representing information in language in a 'zoomed out' way (hat tip to {{re|عُثمان}} for using this phrase in another group) will permit the greater benefits of a simplified structure for representing (parts of) meaning to be reaped. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 23:34, 7 April 2026 (UTC)
* {{o}}, per Dv103, their proposal is much better fit to Wikifunctions and much more intuitive. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 13:58, 7 April 2026 (UTC)
9nv3ytg9eqe76wag0o2cow7gwuthdag
Wikifunctions:Requests for user groups/Archive/2026/04
4
79688
263844
263100
2026-04-08T03:08:08Z
SpBot
978
archiving 1 section from [[Wikifunctions:Requests for user groups]] (after section [[Wikifunctions:Requests for user groups/Archive/2026/04#Winston_Sung|Winston_Sung]])
263844
wikitext
text/x-wiki
{{Talkarchive}}
=== Redmin ===
:{{UL2.0|1=Redmin|contributions=1|deletedcontributions=1|editcount=1|blocklog=1|rightslog=1|crosswiki=1}}
:''Discussion open until: 07:56, 2 April 2026 (UTC)''
:I have been working on functions related to lists here for some time now, and have recently started working on functions related to Abstract Wikipedia as well. Having to request others to connect or disconnect implementations and test cases for me slows that down. On Bengali Wiktionary, I have been working to improve a [[wikt:bn:মডিউল:আভিধানিক উপাত্ত|module]] that renders Wiktionary entries using data from Wikidata Lexemes, and someday (hopefully soon) I would like to use different functions implemented here in that (through templates) so that could also require me to contribute to connected implementations. [[User:Redmin|Redmin]] ([[User talk:Redmin|talk]]) 07:56, 31 March 2026 (UTC)
::{{s}} sufficient contributions ({{ping|Ameisenigel}} please close) [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 16:35, 2 April 2026 (UTC)
:{{done}} --[[User:Ameisenigel|Ameisenigel]] ([[User talk:Ameisenigel|talk]]) 19:45, 2 April 2026 (UTC)
:<small>This section was archived on a request by: [[User:Ameisenigel|Ameisenigel]] ([[User talk:Ameisenigel|talk]]) 19:45, 2 April 2026 (UTC)</small>
=== Winston Sung ===
: {{UL2.0|1=Winston Sung|contributions=1|deletedcontributions=1|editcount=1|blocklog=1|rightslog=1|crosswiki=1}}
: ''Discussion open until: 15:01, 4 April 2026 (UTC)''
: I have been working on Wikifunctions, Wikidata, other Wikimedia projects, Wikimedia Code Review (with +2 rights) for a long time and currently leading the MediaWiki-zh/zhx (Mandarin Chinese/Sinitic languages) community while participating Wikifunctions-zh and Wikidata-TW communities. I plan to fix the language issues including specified wrong language object in function compositions and other maintenance stuffs. -- [[User:Winston Sung|Winston Sung]] ([[User talk:Winston Sung|talk]]) 15:01, 2 April 2026 (UTC)
::{{s}}: limited contributions requiring the support of a functioneer, but active on the Telegram. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 16:41, 2 April 2026 (UTC)
:{{done}} --[[User:Ameisenigel|Ameisenigel]] ([[User talk:Ameisenigel|talk]]) 16:59, 6 April 2026 (UTC)
:<small>This section was archived on a request by: [[User:Ameisenigel|Ameisenigel]] ([[User talk:Ameisenigel|talk]]) 16:59, 6 April 2026 (UTC)</small>
en4m6deuidr9h4hdhxuuryu21p1y567
Z33115
0
79715
263782
263328
2026-04-07T15:17:17Z
Asked42
932
263782
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33115"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z32973",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z32973",
"Z32973K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q170454"
},
"Z32973K2": {
"Z1K1": "Z6091",
"Z6091K1": "Q12935276"
},
"Z32973K3": {
"Z1K1": "Z6091",
"Z6091K1": "Q515"
},
"Z32973K4": {
"Z1K1": "Z6091",
"Z6091K1": "Q1363"
}
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z14392",
"Z14392K2": {
"Z1K1": "Z11",
"Z11K1": "Z1011",
"Z11K2": "আগরতলা ত্রিপুরার সবচেয়ে বড় নগর।"
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
cc9u5q4osmzrhl3l93vz224aeaou85u
Z33165
0
79771
263716
263451
2026-04-07T13:29:56Z
Dv103
11127
Added Z31403, Z31404, Z33194, Z33195 e Z33196 to the approved list of test cases
263716
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33165"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z13518",
"Z17K2": "Z33165K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "number"
}
]
}
}
],
"Z8K2": "Z6",
"Z8K3": [
"Z20",
"Z31403",
"Z31404",
"Z33194",
"Z33195",
"Z33196"
],
"Z8K4": [
"Z14"
],
"Z8K5": "Z33165"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Malay cardinal (prefix “se-”, place value ≥ tens)"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Represents natural numbers in Malay words, using the prefix “se-” for the number 1 at place values of tens and above (e.g., tens, hundreds, thousands, and beyond)."
}
]
}
}
atw0k8soa5blvxt6hzoux0foevrbr86
263717
263716
2026-04-07T13:29:57Z
Dv103
11127
Added Z31393 e Z33166 to the approved list of implementations
263717
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33165"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z13518",
"Z17K2": "Z33165K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "number"
}
]
}
}
],
"Z8K2": "Z6",
"Z8K3": [
"Z20",
"Z31403",
"Z31404",
"Z33194",
"Z33195",
"Z33196"
],
"Z8K4": [
"Z14",
"Z31393",
"Z33166"
],
"Z8K5": "Z33165"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Malay cardinal (prefix “se-”, place value ≥ tens)"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Represents natural numbers in Malay words, using the prefix “se-” for the number 1 at place values of tens and above (e.g., tens, hundreds, thousands, and beyond)."
}
]
}
}
lnyyfsp9toa5zyeig3kyh9hq29bc8ua
Wikifunctions:Type proposals/Abstract sentence
4
79820
263742
263623
2026-04-07T13:56:52Z
Feeglgeef
8776
/* Comments */
263742
wikitext
text/x-wiki
== Summary ==
This proposal is an attempt to represent in an abstract way the content of Abstract Wikipedia.
=== Comparison with competing proposals ===
This is an alternative to other proposals like [[Wikifunctions:Type proposal/Syntactic table|Syntactic tables]] and [[Wikifunctions:Type proposals/Semantic unit|Semantic units]], that try to solve the same problem. Both of these have some issues, that this proposal tries to address.
The former proposal has the issue of imposing a bottom-up approach, having functions that need to generate only a part of the sentence and populate a table that should contain all the different variations of the part of the sentence for all the possible grammatical contexts. As it has been pointed out, this approach has the issue that in realistic scenarios for many languages requires the creation of huge tables, only to select at the end just one option, other than not accounting the fact that in some languages, different parts of the sentence may be mixed up.
The [[Wikifunctions:Type proposals/Semantic unit|Semantic unit]] and [[Wikifunctions:Type proposals/Syntactic unit|Syntactic unit]] approach tries to solve these issues by proposing a different approach, which consist in first encode the entire sentence through an object, and then pass it to a function that renders it. The Abstract sentence approach is basically the same one of Semantic units (and leaves purposefully out the proposal of Syntactic unit, since it is an internal tool that is outside the scope of this proposal), but is an attempt to implement it in a way that is more idiomatic to Wikifunctions, exploiting the potential given by Wikifunctions. The hope is to create an approach that is simpler to understand for uninitiated contributors, and that naturally guides Abstract Wikipedia editors to the generation of abstract content.
== Structure ==
An "Abstract sentence", for the purposes of this page, is the representation of a sentence in a language-neutral way. It is composed of various "Abstract sentence parts" (or "Abstract parts" for brevity), which can consist of entire phrases down to single nouns. The Abstract sentence is modeled as a tree, with Abstract sentence parts containing other Abstract sentence parts, down to the primitive ones. The Abstract parts can be of various types, each corresponding to a different Wikifunctions type. Each Abstract part type should contain all the content of the Abstract part (such as the {{Z|Z6091}}s or the composing Abstract parts), as well as all the grammatical information that some languages need in order to properly inflect the part.
== Usage ==
With this proposal, a typical Abstract Wikipedia fragment would consist in a call to a function like <code>Abstract sentence to HTML (Abstract sentence, Language)</code>. This function would then delegate the NLG to language-specific functions.
In order to fully exploit the functionalities of Wikifunctions types, [[Wikifunctions:Type proposals/configuration of functions for given types|Configurations of functions for given types]] are needed.
== Examples of Abstract part types ==
Those are just some examples of possible Abstract part types, that should be enough to fully encode the fragments generated by {{Z|Z26039}}, {{Z|Z26627}}, and {{Z|Z26095}}.
=== Abstract proper name ===
This Abstract part type encodes an item that has a proper name that is unique to the single real-life item. This should not be used for people, since it is necessary to use a more specialized type to handle all the nuances of people's names. This allows us to just represent it just with a single QID. This type should contain:
* '''QID''': The {{Z|Z6091}} of the object referred by the proper name.
* '''Complements''': A list of the eventual Abstract parts that complement the proper name. Note: they should be of type "Abstract complement", which for now is not included among these examples.
=== Abstract noun ===
This Abstract part type encodes one or multiple items that are identified by a common noun. Note that here "noun" does not necessarily refer to a literal single word noun, since some languages could use an entire construction just to refer to this concept. The structure is:
* '''QID''': The {{Z|Z6091}} of the common noun.
* '''Definiteness''': Of type Abstract definiteness (see below), encodes the definiteness of the noun (in other words, whether this particular noun has been previously introduced or not).
* '''Number''': Of type Abstract number, encodes how many instanced this noun is referring to.
* '''Complements''': A list of the eventual Abstract parts that complement the noun.
=== Abstract copula ===
This type represents a sentence of type "X is Y", with the specific meaning "X is equal to Y" (like "Mars is a planet" or "Paris is the capital of France", but not for example "Jupiter is big"). The structure is:
* '''First part''': An Abstract part representing the first part of the copula structure.
* '''Second part''': An Abstract part representing the second part of the copula structure.
* '''Tense''': Of type Abstract tense, represents when the copula is true.
* '''Complements''': A list of the eventual Abstract parts that complement the copula.
=== Abstract part decoration ===
Represents a visual decoration of an abstract part (like bold or italics). The structure is:
* '''Content''': The Abstract part that has to be decorated.
* '''Decoration''': Of type Text decoration, represent the decoration that needs to be applied.
== Examples of auxiliary types ==
=== Abstract definiteness ===
An enumeration that can be one of the following values:
* ''Absolute'': Refers to entire concept or the entirety of the instances. Supports only the numbers "1" and "Global". In English, with Abstract number "1" it usually corresponds to the article-less singular for uncountable nouns ("''Bread'' is an aliment.") and to the singular with definite article for countable nouns ("''The violin'' is a musical instrument."). With Abstract number "Global", it usually corresponds to the article-less singular for uncountable noun ("''Water'' is wet.") and to the article-less plural for countable nouns ("''Giraffes'' are mammals.").
* ''Definite'': Refers to instances that are completely identifiable. Corresponds to the English definite article.
* ''Indefinite'': Refers to instances that are not identifiable from the given information. Corresponds to the English indefinite article.
=== Abstract number ===
A value that can be either:
* A {{Z|Z13518}}: the exact number of instances (if it is known).
* One of the following values:
** ''Plural'': If it is an unknown quantity greater than 5.
** ''Greater plural'': If it is an unknown quantity greater than an already established plural.
** ''Paucal'': If it is an unknown small quantity.
** ''Greater paucal'': If it is an unknown small quantity greater than an already established paucal.
** ''Global'': If it is the entire quantity that exists.
* An Abstract part, representing a quantifier (like "''a glass of'' water").
=== Abstract tense ===
Either:
* An enumeration of:
** ''Absolute'': A sentence that is always true, regardless of time. In English, is usually represented by a simple present.
** ''Past'': A sentence that was true in the past.
** ''Present'': A sentence that is true only now.
** ''Future'': A sentence that will be true in the future.
* An Abstract relative tense, representing a time relative to a known time.
=== Abstract relative tense ===
Contains:
* '''Relation''': Either ''Before'', ''During'' or ''After''
* '''Reference time''': Of type Abstract tense.
=== Text decoration ===
An enumeration with either one of the following values:
* ''Bold''
* ''Italics''
* ''Underlined''
* ''Crossed''
== Examples of abstract sentences ==
"'''Berlin''' is a city.":
* '''Type''': Abstract copula
* '''First part''':
** '''Type''': Abstract part decoration
** '''Content''':
*** '''Type''': Abstract proper name
*** '''QID''': {{Q|Q64}}
*** '''Complements''': []
** '''Decoration''': ''Bold''
* '''Second part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q515}}
** '''Definiteness''': ''Indefinite''
** '''Number''': 1
** '''Complements''': []
* '''Tense''': ''Absolute''
* '''Complements''': []
"Antelopes are mammals.":
* '''Type''': Abstract copula
* '''First part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q25894}}
** '''Definiteness''': ''Absolute''
** '''Number''': ''Global''
** '''Complements''': []
* '''Second part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q7377}}
** '''Definiteness''': ''Indefinite''
** '''Number''': ''Plural''
** '''Complements''': []
* '''Tense''': ''Absolute''
* '''Complements''': []
== Comments ==
*{{s}}, as the proposer. This page is meant to discuss the general proposal. The specific example types are open to discussion (in particular, I am not particularly convinced of the handling of tenses, since many languages require a very nuanced handling of tenses). [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 10:00, 7 April 2026 (UTC)
*{{s}} lgtm. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 13:56, 7 April 2026 (UTC)
js2f7dlgky9rs42ws9cz8o5v15jfxdj
263785
263742
2026-04-07T15:26:39Z
Mahir256
38
/* Comments */
263785
wikitext
text/x-wiki
== Summary ==
This proposal is an attempt to represent in an abstract way the content of Abstract Wikipedia.
=== Comparison with competing proposals ===
This is an alternative to other proposals like [[Wikifunctions:Type proposal/Syntactic table|Syntactic tables]] and [[Wikifunctions:Type proposals/Semantic unit|Semantic units]], that try to solve the same problem. Both of these have some issues, that this proposal tries to address.
The former proposal has the issue of imposing a bottom-up approach, having functions that need to generate only a part of the sentence and populate a table that should contain all the different variations of the part of the sentence for all the possible grammatical contexts. As it has been pointed out, this approach has the issue that in realistic scenarios for many languages requires the creation of huge tables, only to select at the end just one option, other than not accounting the fact that in some languages, different parts of the sentence may be mixed up.
The [[Wikifunctions:Type proposals/Semantic unit|Semantic unit]] and [[Wikifunctions:Type proposals/Syntactic unit|Syntactic unit]] approach tries to solve these issues by proposing a different approach, which consist in first encode the entire sentence through an object, and then pass it to a function that renders it. The Abstract sentence approach is basically the same one of Semantic units (and leaves purposefully out the proposal of Syntactic unit, since it is an internal tool that is outside the scope of this proposal), but is an attempt to implement it in a way that is more idiomatic to Wikifunctions, exploiting the potential given by Wikifunctions. The hope is to create an approach that is simpler to understand for uninitiated contributors, and that naturally guides Abstract Wikipedia editors to the generation of abstract content.
== Structure ==
An "Abstract sentence", for the purposes of this page, is the representation of a sentence in a language-neutral way. It is composed of various "Abstract sentence parts" (or "Abstract parts" for brevity), which can consist of entire phrases down to single nouns. The Abstract sentence is modeled as a tree, with Abstract sentence parts containing other Abstract sentence parts, down to the primitive ones. The Abstract parts can be of various types, each corresponding to a different Wikifunctions type. Each Abstract part type should contain all the content of the Abstract part (such as the {{Z|Z6091}}s or the composing Abstract parts), as well as all the grammatical information that some languages need in order to properly inflect the part.
== Usage ==
With this proposal, a typical Abstract Wikipedia fragment would consist in a call to a function like <code>Abstract sentence to HTML (Abstract sentence, Language)</code>. This function would then delegate the NLG to language-specific functions.
In order to fully exploit the functionalities of Wikifunctions types, [[Wikifunctions:Type proposals/configuration of functions for given types|Configurations of functions for given types]] are needed.
== Examples of Abstract part types ==
Those are just some examples of possible Abstract part types, that should be enough to fully encode the fragments generated by {{Z|Z26039}}, {{Z|Z26627}}, and {{Z|Z26095}}.
=== Abstract proper name ===
This Abstract part type encodes an item that has a proper name that is unique to the single real-life item. This should not be used for people, since it is necessary to use a more specialized type to handle all the nuances of people's names. This allows us to just represent it just with a single QID. This type should contain:
* '''QID''': The {{Z|Z6091}} of the object referred by the proper name.
* '''Complements''': A list of the eventual Abstract parts that complement the proper name. Note: they should be of type "Abstract complement", which for now is not included among these examples.
=== Abstract noun ===
This Abstract part type encodes one or multiple items that are identified by a common noun. Note that here "noun" does not necessarily refer to a literal single word noun, since some languages could use an entire construction just to refer to this concept. The structure is:
* '''QID''': The {{Z|Z6091}} of the common noun.
* '''Definiteness''': Of type Abstract definiteness (see below), encodes the definiteness of the noun (in other words, whether this particular noun has been previously introduced or not).
* '''Number''': Of type Abstract number, encodes how many instanced this noun is referring to.
* '''Complements''': A list of the eventual Abstract parts that complement the noun.
=== Abstract copula ===
This type represents a sentence of type "X is Y", with the specific meaning "X is equal to Y" (like "Mars is a planet" or "Paris is the capital of France", but not for example "Jupiter is big"). The structure is:
* '''First part''': An Abstract part representing the first part of the copula structure.
* '''Second part''': An Abstract part representing the second part of the copula structure.
* '''Tense''': Of type Abstract tense, represents when the copula is true.
* '''Complements''': A list of the eventual Abstract parts that complement the copula.
=== Abstract part decoration ===
Represents a visual decoration of an abstract part (like bold or italics). The structure is:
* '''Content''': The Abstract part that has to be decorated.
* '''Decoration''': Of type Text decoration, represent the decoration that needs to be applied.
== Examples of auxiliary types ==
=== Abstract definiteness ===
An enumeration that can be one of the following values:
* ''Absolute'': Refers to entire concept or the entirety of the instances. Supports only the numbers "1" and "Global". In English, with Abstract number "1" it usually corresponds to the article-less singular for uncountable nouns ("''Bread'' is an aliment.") and to the singular with definite article for countable nouns ("''The violin'' is a musical instrument."). With Abstract number "Global", it usually corresponds to the article-less singular for uncountable noun ("''Water'' is wet.") and to the article-less plural for countable nouns ("''Giraffes'' are mammals.").
* ''Definite'': Refers to instances that are completely identifiable. Corresponds to the English definite article.
* ''Indefinite'': Refers to instances that are not identifiable from the given information. Corresponds to the English indefinite article.
=== Abstract number ===
A value that can be either:
* A {{Z|Z13518}}: the exact number of instances (if it is known).
* One of the following values:
** ''Plural'': If it is an unknown quantity greater than 5.
** ''Greater plural'': If it is an unknown quantity greater than an already established plural.
** ''Paucal'': If it is an unknown small quantity.
** ''Greater paucal'': If it is an unknown small quantity greater than an already established paucal.
** ''Global'': If it is the entire quantity that exists.
* An Abstract part, representing a quantifier (like "''a glass of'' water").
=== Abstract tense ===
Either:
* An enumeration of:
** ''Absolute'': A sentence that is always true, regardless of time. In English, is usually represented by a simple present.
** ''Past'': A sentence that was true in the past.
** ''Present'': A sentence that is true only now.
** ''Future'': A sentence that will be true in the future.
* An Abstract relative tense, representing a time relative to a known time.
=== Abstract relative tense ===
Contains:
* '''Relation''': Either ''Before'', ''During'' or ''After''
* '''Reference time''': Of type Abstract tense.
=== Text decoration ===
An enumeration with either one of the following values:
* ''Bold''
* ''Italics''
* ''Underlined''
* ''Crossed''
== Examples of abstract sentences ==
"'''Berlin''' is a city.":
* '''Type''': Abstract copula
* '''First part''':
** '''Type''': Abstract part decoration
** '''Content''':
*** '''Type''': Abstract proper name
*** '''QID''': {{Q|Q64}}
*** '''Complements''': []
** '''Decoration''': ''Bold''
* '''Second part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q515}}
** '''Definiteness''': ''Indefinite''
** '''Number''': 1
** '''Complements''': []
* '''Tense''': ''Absolute''
* '''Complements''': []
"Antelopes are mammals.":
* '''Type''': Abstract copula
* '''First part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q25894}}
** '''Definiteness''': ''Absolute''
** '''Number''': ''Global''
** '''Complements''': []
* '''Second part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q7377}}
** '''Definiteness''': ''Indefinite''
** '''Number''': ''Plural''
** '''Complements''': []
* '''Tense''': ''Absolute''
* '''Complements''': []
== Comments ==
*{{s}}, as the proposer. This page is meant to discuss the general proposal. The specific example types are open to discussion (in particular, I am not particularly convinced of the handling of tenses, since many languages require a very nuanced handling of tenses). [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 10:00, 7 April 2026 (UTC)
*{{s}} lgtm. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 13:56, 7 April 2026 (UTC)
*Regretfully {{o}} as the types here seem rather limited in the arguments they require--what of arbitrary proper names not mapped to items? what of nouns that haven't been mapped to items yet and may not warrant such mapping?--and there does not seem to be an ability to extend this to treat arbitrary predicates (that is, verbs that are not 'to be' or 'to have'). I fear that subordinating the flexibility for handling arbitrary linguistic phenomena to some notion of Wikifunctions idiomaticity will kneecap the expressive ability of abstract content; if we are to help new contributors out, then this should come from (as sort of tried by Immanuelle on the current Abstract Wikipedia) tooling on top of the abstract content format and (as hinted at by VivianIsBee on Abstract Wikipedia's Project chat) a flexible authoring language that is defined and maintained alongside any defined abstract content types. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 15:26, 7 April 2026 (UTC)
419z7a0f2sfk45wuvtrlrg1wa1228yt
263789
263785
2026-04-07T15:36:22Z
YoshiRulz
10156
/* Comments */ Reply
263789
wikitext
text/x-wiki
== Summary ==
This proposal is an attempt to represent in an abstract way the content of Abstract Wikipedia.
=== Comparison with competing proposals ===
This is an alternative to other proposals like [[Wikifunctions:Type proposal/Syntactic table|Syntactic tables]] and [[Wikifunctions:Type proposals/Semantic unit|Semantic units]], that try to solve the same problem. Both of these have some issues, that this proposal tries to address.
The former proposal has the issue of imposing a bottom-up approach, having functions that need to generate only a part of the sentence and populate a table that should contain all the different variations of the part of the sentence for all the possible grammatical contexts. As it has been pointed out, this approach has the issue that in realistic scenarios for many languages requires the creation of huge tables, only to select at the end just one option, other than not accounting the fact that in some languages, different parts of the sentence may be mixed up.
The [[Wikifunctions:Type proposals/Semantic unit|Semantic unit]] and [[Wikifunctions:Type proposals/Syntactic unit|Syntactic unit]] approach tries to solve these issues by proposing a different approach, which consist in first encode the entire sentence through an object, and then pass it to a function that renders it. The Abstract sentence approach is basically the same one of Semantic units (and leaves purposefully out the proposal of Syntactic unit, since it is an internal tool that is outside the scope of this proposal), but is an attempt to implement it in a way that is more idiomatic to Wikifunctions, exploiting the potential given by Wikifunctions. The hope is to create an approach that is simpler to understand for uninitiated contributors, and that naturally guides Abstract Wikipedia editors to the generation of abstract content.
== Structure ==
An "Abstract sentence", for the purposes of this page, is the representation of a sentence in a language-neutral way. It is composed of various "Abstract sentence parts" (or "Abstract parts" for brevity), which can consist of entire phrases down to single nouns. The Abstract sentence is modeled as a tree, with Abstract sentence parts containing other Abstract sentence parts, down to the primitive ones. The Abstract parts can be of various types, each corresponding to a different Wikifunctions type. Each Abstract part type should contain all the content of the Abstract part (such as the {{Z|Z6091}}s or the composing Abstract parts), as well as all the grammatical information that some languages need in order to properly inflect the part.
== Usage ==
With this proposal, a typical Abstract Wikipedia fragment would consist in a call to a function like <code>Abstract sentence to HTML (Abstract sentence, Language)</code>. This function would then delegate the NLG to language-specific functions.
In order to fully exploit the functionalities of Wikifunctions types, [[Wikifunctions:Type proposals/configuration of functions for given types|Configurations of functions for given types]] are needed.
== Examples of Abstract part types ==
Those are just some examples of possible Abstract part types, that should be enough to fully encode the fragments generated by {{Z|Z26039}}, {{Z|Z26627}}, and {{Z|Z26095}}.
=== Abstract proper name ===
This Abstract part type encodes an item that has a proper name that is unique to the single real-life item. This should not be used for people, since it is necessary to use a more specialized type to handle all the nuances of people's names. This allows us to just represent it just with a single QID. This type should contain:
* '''QID''': The {{Z|Z6091}} of the object referred by the proper name.
* '''Complements''': A list of the eventual Abstract parts that complement the proper name. Note: they should be of type "Abstract complement", which for now is not included among these examples.
=== Abstract noun ===
This Abstract part type encodes one or multiple items that are identified by a common noun. Note that here "noun" does not necessarily refer to a literal single word noun, since some languages could use an entire construction just to refer to this concept. The structure is:
* '''QID''': The {{Z|Z6091}} of the common noun.
* '''Definiteness''': Of type Abstract definiteness (see below), encodes the definiteness of the noun (in other words, whether this particular noun has been previously introduced or not).
* '''Number''': Of type Abstract number, encodes how many instanced this noun is referring to.
* '''Complements''': A list of the eventual Abstract parts that complement the noun.
=== Abstract copula ===
This type represents a sentence of type "X is Y", with the specific meaning "X is equal to Y" (like "Mars is a planet" or "Paris is the capital of France", but not for example "Jupiter is big"). The structure is:
* '''First part''': An Abstract part representing the first part of the copula structure.
* '''Second part''': An Abstract part representing the second part of the copula structure.
* '''Tense''': Of type Abstract tense, represents when the copula is true.
* '''Complements''': A list of the eventual Abstract parts that complement the copula.
=== Abstract part decoration ===
Represents a visual decoration of an abstract part (like bold or italics). The structure is:
* '''Content''': The Abstract part that has to be decorated.
* '''Decoration''': Of type Text decoration, represent the decoration that needs to be applied.
== Examples of auxiliary types ==
=== Abstract definiteness ===
An enumeration that can be one of the following values:
* ''Absolute'': Refers to entire concept or the entirety of the instances. Supports only the numbers "1" and "Global". In English, with Abstract number "1" it usually corresponds to the article-less singular for uncountable nouns ("''Bread'' is an aliment.") and to the singular with definite article for countable nouns ("''The violin'' is a musical instrument."). With Abstract number "Global", it usually corresponds to the article-less singular for uncountable noun ("''Water'' is wet.") and to the article-less plural for countable nouns ("''Giraffes'' are mammals.").
* ''Definite'': Refers to instances that are completely identifiable. Corresponds to the English definite article.
* ''Indefinite'': Refers to instances that are not identifiable from the given information. Corresponds to the English indefinite article.
=== Abstract number ===
A value that can be either:
* A {{Z|Z13518}}: the exact number of instances (if it is known).
* One of the following values:
** ''Plural'': If it is an unknown quantity greater than 5.
** ''Greater plural'': If it is an unknown quantity greater than an already established plural.
** ''Paucal'': If it is an unknown small quantity.
** ''Greater paucal'': If it is an unknown small quantity greater than an already established paucal.
** ''Global'': If it is the entire quantity that exists.
* An Abstract part, representing a quantifier (like "''a glass of'' water").
=== Abstract tense ===
Either:
* An enumeration of:
** ''Absolute'': A sentence that is always true, regardless of time. In English, is usually represented by a simple present.
** ''Past'': A sentence that was true in the past.
** ''Present'': A sentence that is true only now.
** ''Future'': A sentence that will be true in the future.
* An Abstract relative tense, representing a time relative to a known time.
=== Abstract relative tense ===
Contains:
* '''Relation''': Either ''Before'', ''During'' or ''After''
* '''Reference time''': Of type Abstract tense.
=== Text decoration ===
An enumeration with either one of the following values:
* ''Bold''
* ''Italics''
* ''Underlined''
* ''Crossed''
== Examples of abstract sentences ==
"'''Berlin''' is a city.":
* '''Type''': Abstract copula
* '''First part''':
** '''Type''': Abstract part decoration
** '''Content''':
*** '''Type''': Abstract proper name
*** '''QID''': {{Q|Q64}}
*** '''Complements''': []
** '''Decoration''': ''Bold''
* '''Second part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q515}}
** '''Definiteness''': ''Indefinite''
** '''Number''': 1
** '''Complements''': []
* '''Tense''': ''Absolute''
* '''Complements''': []
"Antelopes are mammals.":
* '''Type''': Abstract copula
* '''First part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q25894}}
** '''Definiteness''': ''Absolute''
** '''Number''': ''Global''
** '''Complements''': []
* '''Second part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q7377}}
** '''Definiteness''': ''Indefinite''
** '''Number''': ''Plural''
** '''Complements''': []
* '''Tense''': ''Absolute''
* '''Complements''': []
== Comments ==
*{{s}}, as the proposer. This page is meant to discuss the general proposal. The specific example types are open to discussion (in particular, I am not particularly convinced of the handling of tenses, since many languages require a very nuanced handling of tenses). [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 10:00, 7 April 2026 (UTC)
*:Can you come up with an example that goes beyond what already exists in WF, to show in what way this would be more powerful? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 15:36, 7 April 2026 (UTC)
*{{s}} lgtm. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 13:56, 7 April 2026 (UTC)
*Regretfully {{o}} as the types here seem rather limited in the arguments they require--what of arbitrary proper names not mapped to items? what of nouns that haven't been mapped to items yet and may not warrant such mapping?--and there does not seem to be an ability to extend this to treat arbitrary predicates (that is, verbs that are not 'to be' or 'to have'). I fear that subordinating the flexibility for handling arbitrary linguistic phenomena to some notion of Wikifunctions idiomaticity will kneecap the expressive ability of abstract content; if we are to help new contributors out, then this should come from (as sort of tried by Immanuelle on the current Abstract Wikipedia) tooling on top of the abstract content format and (as hinted at by VivianIsBee on Abstract Wikipedia's Project chat) a flexible authoring language that is defined and maintained alongside any defined abstract content types. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 15:26, 7 April 2026 (UTC)
mikrwwd58k5pl2dl3cp6pleqk4f8fy8
263796
263789
2026-04-07T19:34:02Z
Dv103
11127
/* Structure */ Clarified that this proposal would mainly consist in the progressive creation of many new types
263796
wikitext
text/x-wiki
== Summary ==
This proposal is an attempt to represent in an abstract way the content of Abstract Wikipedia.
=== Comparison with competing proposals ===
This is an alternative to other proposals like [[Wikifunctions:Type proposal/Syntactic table|Syntactic tables]] and [[Wikifunctions:Type proposals/Semantic unit|Semantic units]], that try to solve the same problem. Both of these have some issues, that this proposal tries to address.
The former proposal has the issue of imposing a bottom-up approach, having functions that need to generate only a part of the sentence and populate a table that should contain all the different variations of the part of the sentence for all the possible grammatical contexts. As it has been pointed out, this approach has the issue that in realistic scenarios for many languages requires the creation of huge tables, only to select at the end just one option, other than not accounting the fact that in some languages, different parts of the sentence may be mixed up.
The [[Wikifunctions:Type proposals/Semantic unit|Semantic unit]] and [[Wikifunctions:Type proposals/Syntactic unit|Syntactic unit]] approach tries to solve these issues by proposing a different approach, which consist in first encode the entire sentence through an object, and then pass it to a function that renders it. The Abstract sentence approach is basically the same one of Semantic units (and leaves purposefully out the proposal of Syntactic unit, since it is an internal tool that is outside the scope of this proposal), but is an attempt to implement it in a way that is more idiomatic to Wikifunctions, exploiting the potential given by Wikifunctions. The hope is to create an approach that is simpler to understand for uninitiated contributors, and that naturally guides Abstract Wikipedia editors to the generation of abstract content.
== Structure ==
An "Abstract sentence", for the purposes of this page, is the representation of a sentence in a language-neutral way. It is composed of various "Abstract sentence parts" (or "Abstract parts" for brevity), which can consist of entire phrases down to single nouns. The Abstract sentence is modeled as a tree, with Abstract sentence parts containing other Abstract sentence parts, down to the primitive ones. The Abstract parts can be of various types, each corresponding to a different Wikifunctions type. Each Abstract part type should contain all the content of the Abstract part (such as the {{Z|Z6091}}s or the composing Abstract parts), as well as all the grammatical information that some languages need in order to properly inflect the part.
For every structure that is needed for the encoding of abstract content, there would be a different type that encodes the specific structure. For example, there would be types representing specific nouns, types encoding for various types of attributes, various sentence structures... Each new type would be discussed with the same procedure currently followed for the creation of new types. This would allow the organic growth of the different types of sentences that can be represented with the Abstract sentence model, ideally with the ability in the end to encode all the possible structures that are used in natural languages.
== Usage ==
With this proposal, a typical Abstract Wikipedia fragment would consist in a call to a function like <code>Abstract sentence to HTML (Abstract sentence, Language)</code>. This function would then delegate the NLG to language-specific functions.
In order to fully exploit the functionalities of Wikifunctions types, [[Wikifunctions:Type proposals/configuration of functions for given types|Configurations of functions for given types]] are needed.
== Examples of Abstract part types ==
Those are just some examples of possible Abstract part types, that should be enough to fully encode the fragments generated by {{Z|Z26039}}, {{Z|Z26627}}, and {{Z|Z26095}}.
=== Abstract proper name ===
This Abstract part type encodes an item that has a proper name that is unique to the single real-life item. This should not be used for people, since it is necessary to use a more specialized type to handle all the nuances of people's names. This allows us to just represent it just with a single QID. This type should contain:
* '''QID''': The {{Z|Z6091}} of the object referred by the proper name.
* '''Complements''': A list of the eventual Abstract parts that complement the proper name. Note: they should be of type "Abstract complement", which for now is not included among these examples.
=== Abstract noun ===
This Abstract part type encodes one or multiple items that are identified by a common noun. Note that here "noun" does not necessarily refer to a literal single word noun, since some languages could use an entire construction just to refer to this concept. The structure is:
* '''QID''': The {{Z|Z6091}} of the common noun.
* '''Definiteness''': Of type Abstract definiteness (see below), encodes the definiteness of the noun (in other words, whether this particular noun has been previously introduced or not).
* '''Number''': Of type Abstract number, encodes how many instanced this noun is referring to.
* '''Complements''': A list of the eventual Abstract parts that complement the noun.
=== Abstract copula ===
This type represents a sentence of type "X is Y", with the specific meaning "X is equal to Y" (like "Mars is a planet" or "Paris is the capital of France", but not for example "Jupiter is big"). The structure is:
* '''First part''': An Abstract part representing the first part of the copula structure.
* '''Second part''': An Abstract part representing the second part of the copula structure.
* '''Tense''': Of type Abstract tense, represents when the copula is true.
* '''Complements''': A list of the eventual Abstract parts that complement the copula.
=== Abstract part decoration ===
Represents a visual decoration of an abstract part (like bold or italics). The structure is:
* '''Content''': The Abstract part that has to be decorated.
* '''Decoration''': Of type Text decoration, represent the decoration that needs to be applied.
== Examples of auxiliary types ==
=== Abstract definiteness ===
An enumeration that can be one of the following values:
* ''Absolute'': Refers to entire concept or the entirety of the instances. Supports only the numbers "1" and "Global". In English, with Abstract number "1" it usually corresponds to the article-less singular for uncountable nouns ("''Bread'' is an aliment.") and to the singular with definite article for countable nouns ("''The violin'' is a musical instrument."). With Abstract number "Global", it usually corresponds to the article-less singular for uncountable noun ("''Water'' is wet.") and to the article-less plural for countable nouns ("''Giraffes'' are mammals.").
* ''Definite'': Refers to instances that are completely identifiable. Corresponds to the English definite article.
* ''Indefinite'': Refers to instances that are not identifiable from the given information. Corresponds to the English indefinite article.
=== Abstract number ===
A value that can be either:
* A {{Z|Z13518}}: the exact number of instances (if it is known).
* One of the following values:
** ''Plural'': If it is an unknown quantity greater than 5.
** ''Greater plural'': If it is an unknown quantity greater than an already established plural.
** ''Paucal'': If it is an unknown small quantity.
** ''Greater paucal'': If it is an unknown small quantity greater than an already established paucal.
** ''Global'': If it is the entire quantity that exists.
* An Abstract part, representing a quantifier (like "''a glass of'' water").
=== Abstract tense ===
Either:
* An enumeration of:
** ''Absolute'': A sentence that is always true, regardless of time. In English, is usually represented by a simple present.
** ''Past'': A sentence that was true in the past.
** ''Present'': A sentence that is true only now.
** ''Future'': A sentence that will be true in the future.
* An Abstract relative tense, representing a time relative to a known time.
=== Abstract relative tense ===
Contains:
* '''Relation''': Either ''Before'', ''During'' or ''After''
* '''Reference time''': Of type Abstract tense.
=== Text decoration ===
An enumeration with either one of the following values:
* ''Bold''
* ''Italics''
* ''Underlined''
* ''Crossed''
== Examples of abstract sentences ==
"'''Berlin''' is a city.":
* '''Type''': Abstract copula
* '''First part''':
** '''Type''': Abstract part decoration
** '''Content''':
*** '''Type''': Abstract proper name
*** '''QID''': {{Q|Q64}}
*** '''Complements''': []
** '''Decoration''': ''Bold''
* '''Second part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q515}}
** '''Definiteness''': ''Indefinite''
** '''Number''': 1
** '''Complements''': []
* '''Tense''': ''Absolute''
* '''Complements''': []
"Antelopes are mammals.":
* '''Type''': Abstract copula
* '''First part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q25894}}
** '''Definiteness''': ''Absolute''
** '''Number''': ''Global''
** '''Complements''': []
* '''Second part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q7377}}
** '''Definiteness''': ''Indefinite''
** '''Number''': ''Plural''
** '''Complements''': []
* '''Tense''': ''Absolute''
* '''Complements''': []
== Comments ==
*{{s}}, as the proposer. This page is meant to discuss the general proposal. The specific example types are open to discussion (in particular, I am not particularly convinced of the handling of tenses, since many languages require a very nuanced handling of tenses). [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 10:00, 7 April 2026 (UTC)
*:Can you come up with an example that goes beyond what already exists in WF, to show in what way this would be more powerful? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 15:36, 7 April 2026 (UTC)
*{{s}} lgtm. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 13:56, 7 April 2026 (UTC)
*Regretfully {{o}} as the types here seem rather limited in the arguments they require--what of arbitrary proper names not mapped to items? what of nouns that haven't been mapped to items yet and may not warrant such mapping?--and there does not seem to be an ability to extend this to treat arbitrary predicates (that is, verbs that are not 'to be' or 'to have'). I fear that subordinating the flexibility for handling arbitrary linguistic phenomena to some notion of Wikifunctions idiomaticity will kneecap the expressive ability of abstract content; if we are to help new contributors out, then this should come from (as sort of tried by Immanuelle on the current Abstract Wikipedia) tooling on top of the abstract content format and (as hinted at by VivianIsBee on Abstract Wikipedia's Project chat) a flexible authoring language that is defined and maintained alongside any defined abstract content types. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 15:26, 7 April 2026 (UTC)
ddju2aly4kksb2i8u0436insh3azil5
263797
263796
2026-04-07T19:38:02Z
Dv103
11127
/* Examples of Abstract part types */ Clarified that these examples are just a minimal part of all the types that will be employed
263797
wikitext
text/x-wiki
== Summary ==
This proposal is an attempt to represent in an abstract way the content of Abstract Wikipedia.
=== Comparison with competing proposals ===
This is an alternative to other proposals like [[Wikifunctions:Type proposal/Syntactic table|Syntactic tables]] and [[Wikifunctions:Type proposals/Semantic unit|Semantic units]], that try to solve the same problem. Both of these have some issues, that this proposal tries to address.
The former proposal has the issue of imposing a bottom-up approach, having functions that need to generate only a part of the sentence and populate a table that should contain all the different variations of the part of the sentence for all the possible grammatical contexts. As it has been pointed out, this approach has the issue that in realistic scenarios for many languages requires the creation of huge tables, only to select at the end just one option, other than not accounting the fact that in some languages, different parts of the sentence may be mixed up.
The [[Wikifunctions:Type proposals/Semantic unit|Semantic unit]] and [[Wikifunctions:Type proposals/Syntactic unit|Syntactic unit]] approach tries to solve these issues by proposing a different approach, which consist in first encode the entire sentence through an object, and then pass it to a function that renders it. The Abstract sentence approach is basically the same one of Semantic units (and leaves purposefully out the proposal of Syntactic unit, since it is an internal tool that is outside the scope of this proposal), but is an attempt to implement it in a way that is more idiomatic to Wikifunctions, exploiting the potential given by Wikifunctions. The hope is to create an approach that is simpler to understand for uninitiated contributors, and that naturally guides Abstract Wikipedia editors to the generation of abstract content.
== Structure ==
An "Abstract sentence", for the purposes of this page, is the representation of a sentence in a language-neutral way. It is composed of various "Abstract sentence parts" (or "Abstract parts" for brevity), which can consist of entire phrases down to single nouns. The Abstract sentence is modeled as a tree, with Abstract sentence parts containing other Abstract sentence parts, down to the primitive ones. The Abstract parts can be of various types, each corresponding to a different Wikifunctions type. Each Abstract part type should contain all the content of the Abstract part (such as the {{Z|Z6091}}s or the composing Abstract parts), as well as all the grammatical information that some languages need in order to properly inflect the part.
For every structure that is needed for the encoding of abstract content, there would be a different type that encodes the specific structure. For example, there would be types representing specific nouns, types encoding for various types of attributes, various sentence structures... Each new type would be discussed with the same procedure currently followed for the creation of new types. This would allow the organic growth of the different types of sentences that can be represented with the Abstract sentence model, ideally with the ability in the end to encode all the possible structures that are used in natural languages.
== Usage ==
With this proposal, a typical Abstract Wikipedia fragment would consist in a call to a function like <code>Abstract sentence to HTML (Abstract sentence, Language)</code>. This function would then delegate the NLG to language-specific functions.
In order to fully exploit the functionalities of Wikifunctions types, [[Wikifunctions:Type proposals/configuration of functions for given types|Configurations of functions for given types]] are needed.
== Examples of Abstract part types ==
Those are just some examples of possible Abstract part types, that should be enough to fully encode the fragments generated by {{Z|Z26039}}, {{Z|Z26627}}, and {{Z|Z26095}}. These examples are still a draft, and are purposefully limited in order to just provide minimal working examples. Through progressive implementation of many new types, in the future it will be possible to encode many more language structures.
=== Abstract proper name ===
This Abstract part type encodes an item that has a proper name that is unique to the single real-life item. This should not be used for people, since it is necessary to use a more specialized type to handle all the nuances of people's names. This allows us to just represent it just with a single QID. This type should contain:
* '''QID''': The {{Z|Z6091}} of the object referred by the proper name.
* '''Complements''': A list of the eventual Abstract parts that complement the proper name. Note: they should be of type "Abstract complement", which for now is not included among these examples.
=== Abstract noun ===
This Abstract part type encodes one or multiple items that are identified by a common noun. Note that here "noun" does not necessarily refer to a literal single word noun, since some languages could use an entire construction just to refer to this concept. The structure is:
* '''QID''': The {{Z|Z6091}} of the common noun.
* '''Definiteness''': Of type Abstract definiteness (see below), encodes the definiteness of the noun (in other words, whether this particular noun has been previously introduced or not).
* '''Number''': Of type Abstract number, encodes how many instanced this noun is referring to.
* '''Complements''': A list of the eventual Abstract parts that complement the noun.
=== Abstract copula ===
This type represents a sentence of type "X is Y", with the specific meaning "X is equal to Y" (like "Mars is a planet" or "Paris is the capital of France", but not for example "Jupiter is big"). The structure is:
* '''First part''': An Abstract part representing the first part of the copula structure.
* '''Second part''': An Abstract part representing the second part of the copula structure.
* '''Tense''': Of type Abstract tense, represents when the copula is true.
* '''Complements''': A list of the eventual Abstract parts that complement the copula.
=== Abstract part decoration ===
Represents a visual decoration of an abstract part (like bold or italics). The structure is:
* '''Content''': The Abstract part that has to be decorated.
* '''Decoration''': Of type Text decoration, represent the decoration that needs to be applied.
== Examples of auxiliary types ==
=== Abstract definiteness ===
An enumeration that can be one of the following values:
* ''Absolute'': Refers to entire concept or the entirety of the instances. Supports only the numbers "1" and "Global". In English, with Abstract number "1" it usually corresponds to the article-less singular for uncountable nouns ("''Bread'' is an aliment.") and to the singular with definite article for countable nouns ("''The violin'' is a musical instrument."). With Abstract number "Global", it usually corresponds to the article-less singular for uncountable noun ("''Water'' is wet.") and to the article-less plural for countable nouns ("''Giraffes'' are mammals.").
* ''Definite'': Refers to instances that are completely identifiable. Corresponds to the English definite article.
* ''Indefinite'': Refers to instances that are not identifiable from the given information. Corresponds to the English indefinite article.
=== Abstract number ===
A value that can be either:
* A {{Z|Z13518}}: the exact number of instances (if it is known).
* One of the following values:
** ''Plural'': If it is an unknown quantity greater than 5.
** ''Greater plural'': If it is an unknown quantity greater than an already established plural.
** ''Paucal'': If it is an unknown small quantity.
** ''Greater paucal'': If it is an unknown small quantity greater than an already established paucal.
** ''Global'': If it is the entire quantity that exists.
* An Abstract part, representing a quantifier (like "''a glass of'' water").
=== Abstract tense ===
Either:
* An enumeration of:
** ''Absolute'': A sentence that is always true, regardless of time. In English, is usually represented by a simple present.
** ''Past'': A sentence that was true in the past.
** ''Present'': A sentence that is true only now.
** ''Future'': A sentence that will be true in the future.
* An Abstract relative tense, representing a time relative to a known time.
=== Abstract relative tense ===
Contains:
* '''Relation''': Either ''Before'', ''During'' or ''After''
* '''Reference time''': Of type Abstract tense.
=== Text decoration ===
An enumeration with either one of the following values:
* ''Bold''
* ''Italics''
* ''Underlined''
* ''Crossed''
== Examples of abstract sentences ==
"'''Berlin''' is a city.":
* '''Type''': Abstract copula
* '''First part''':
** '''Type''': Abstract part decoration
** '''Content''':
*** '''Type''': Abstract proper name
*** '''QID''': {{Q|Q64}}
*** '''Complements''': []
** '''Decoration''': ''Bold''
* '''Second part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q515}}
** '''Definiteness''': ''Indefinite''
** '''Number''': 1
** '''Complements''': []
* '''Tense''': ''Absolute''
* '''Complements''': []
"Antelopes are mammals.":
* '''Type''': Abstract copula
* '''First part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q25894}}
** '''Definiteness''': ''Absolute''
** '''Number''': ''Global''
** '''Complements''': []
* '''Second part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q7377}}
** '''Definiteness''': ''Indefinite''
** '''Number''': ''Plural''
** '''Complements''': []
* '''Tense''': ''Absolute''
* '''Complements''': []
== Comments ==
*{{s}}, as the proposer. This page is meant to discuss the general proposal. The specific example types are open to discussion (in particular, I am not particularly convinced of the handling of tenses, since many languages require a very nuanced handling of tenses). [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 10:00, 7 April 2026 (UTC)
*:Can you come up with an example that goes beyond what already exists in WF, to show in what way this would be more powerful? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 15:36, 7 April 2026 (UTC)
*{{s}} lgtm. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 13:56, 7 April 2026 (UTC)
*Regretfully {{o}} as the types here seem rather limited in the arguments they require--what of arbitrary proper names not mapped to items? what of nouns that haven't been mapped to items yet and may not warrant such mapping?--and there does not seem to be an ability to extend this to treat arbitrary predicates (that is, verbs that are not 'to be' or 'to have'). I fear that subordinating the flexibility for handling arbitrary linguistic phenomena to some notion of Wikifunctions idiomaticity will kneecap the expressive ability of abstract content; if we are to help new contributors out, then this should come from (as sort of tried by Immanuelle on the current Abstract Wikipedia) tooling on top of the abstract content format and (as hinted at by VivianIsBee on Abstract Wikipedia's Project chat) a flexible authoring language that is defined and maintained alongside any defined abstract content types. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 15:26, 7 April 2026 (UTC)
0bcs8ar04rpddhf82e3o3fm0lfmhhse
263798
263797
2026-04-07T19:52:48Z
Dv103
11127
/* Comments */ Reply
263798
wikitext
text/x-wiki
== Summary ==
This proposal is an attempt to represent in an abstract way the content of Abstract Wikipedia.
=== Comparison with competing proposals ===
This is an alternative to other proposals like [[Wikifunctions:Type proposal/Syntactic table|Syntactic tables]] and [[Wikifunctions:Type proposals/Semantic unit|Semantic units]], that try to solve the same problem. Both of these have some issues, that this proposal tries to address.
The former proposal has the issue of imposing a bottom-up approach, having functions that need to generate only a part of the sentence and populate a table that should contain all the different variations of the part of the sentence for all the possible grammatical contexts. As it has been pointed out, this approach has the issue that in realistic scenarios for many languages requires the creation of huge tables, only to select at the end just one option, other than not accounting the fact that in some languages, different parts of the sentence may be mixed up.
The [[Wikifunctions:Type proposals/Semantic unit|Semantic unit]] and [[Wikifunctions:Type proposals/Syntactic unit|Syntactic unit]] approach tries to solve these issues by proposing a different approach, which consist in first encode the entire sentence through an object, and then pass it to a function that renders it. The Abstract sentence approach is basically the same one of Semantic units (and leaves purposefully out the proposal of Syntactic unit, since it is an internal tool that is outside the scope of this proposal), but is an attempt to implement it in a way that is more idiomatic to Wikifunctions, exploiting the potential given by Wikifunctions. The hope is to create an approach that is simpler to understand for uninitiated contributors, and that naturally guides Abstract Wikipedia editors to the generation of abstract content.
== Structure ==
An "Abstract sentence", for the purposes of this page, is the representation of a sentence in a language-neutral way. It is composed of various "Abstract sentence parts" (or "Abstract parts" for brevity), which can consist of entire phrases down to single nouns. The Abstract sentence is modeled as a tree, with Abstract sentence parts containing other Abstract sentence parts, down to the primitive ones. The Abstract parts can be of various types, each corresponding to a different Wikifunctions type. Each Abstract part type should contain all the content of the Abstract part (such as the {{Z|Z6091}}s or the composing Abstract parts), as well as all the grammatical information that some languages need in order to properly inflect the part.
For every structure that is needed for the encoding of abstract content, there would be a different type that encodes the specific structure. For example, there would be types representing specific nouns, types encoding for various types of attributes, various sentence structures... Each new type would be discussed with the same procedure currently followed for the creation of new types. This would allow the organic growth of the different types of sentences that can be represented with the Abstract sentence model, ideally with the ability in the end to encode all the possible structures that are used in natural languages.
== Usage ==
With this proposal, a typical Abstract Wikipedia fragment would consist in a call to a function like <code>Abstract sentence to HTML (Abstract sentence, Language)</code>. This function would then delegate the NLG to language-specific functions.
In order to fully exploit the functionalities of Wikifunctions types, [[Wikifunctions:Type proposals/configuration of functions for given types|Configurations of functions for given types]] are needed.
== Examples of Abstract part types ==
Those are just some examples of possible Abstract part types, that should be enough to fully encode the fragments generated by {{Z|Z26039}}, {{Z|Z26627}}, and {{Z|Z26095}}. These examples are still a draft, and are purposefully limited in order to just provide minimal working examples. Through progressive implementation of many new types, in the future it will be possible to encode many more language structures.
=== Abstract proper name ===
This Abstract part type encodes an item that has a proper name that is unique to the single real-life item. This should not be used for people, since it is necessary to use a more specialized type to handle all the nuances of people's names. This allows us to just represent it just with a single QID. This type should contain:
* '''QID''': The {{Z|Z6091}} of the object referred by the proper name.
* '''Complements''': A list of the eventual Abstract parts that complement the proper name. Note: they should be of type "Abstract complement", which for now is not included among these examples.
=== Abstract noun ===
This Abstract part type encodes one or multiple items that are identified by a common noun. Note that here "noun" does not necessarily refer to a literal single word noun, since some languages could use an entire construction just to refer to this concept. The structure is:
* '''QID''': The {{Z|Z6091}} of the common noun.
* '''Definiteness''': Of type Abstract definiteness (see below), encodes the definiteness of the noun (in other words, whether this particular noun has been previously introduced or not).
* '''Number''': Of type Abstract number, encodes how many instanced this noun is referring to.
* '''Complements''': A list of the eventual Abstract parts that complement the noun.
=== Abstract copula ===
This type represents a sentence of type "X is Y", with the specific meaning "X is equal to Y" (like "Mars is a planet" or "Paris is the capital of France", but not for example "Jupiter is big"). The structure is:
* '''First part''': An Abstract part representing the first part of the copula structure.
* '''Second part''': An Abstract part representing the second part of the copula structure.
* '''Tense''': Of type Abstract tense, represents when the copula is true.
* '''Complements''': A list of the eventual Abstract parts that complement the copula.
=== Abstract part decoration ===
Represents a visual decoration of an abstract part (like bold or italics). The structure is:
* '''Content''': The Abstract part that has to be decorated.
* '''Decoration''': Of type Text decoration, represent the decoration that needs to be applied.
== Examples of auxiliary types ==
=== Abstract definiteness ===
An enumeration that can be one of the following values:
* ''Absolute'': Refers to entire concept or the entirety of the instances. Supports only the numbers "1" and "Global". In English, with Abstract number "1" it usually corresponds to the article-less singular for uncountable nouns ("''Bread'' is an aliment.") and to the singular with definite article for countable nouns ("''The violin'' is a musical instrument."). With Abstract number "Global", it usually corresponds to the article-less singular for uncountable noun ("''Water'' is wet.") and to the article-less plural for countable nouns ("''Giraffes'' are mammals.").
* ''Definite'': Refers to instances that are completely identifiable. Corresponds to the English definite article.
* ''Indefinite'': Refers to instances that are not identifiable from the given information. Corresponds to the English indefinite article.
=== Abstract number ===
A value that can be either:
* A {{Z|Z13518}}: the exact number of instances (if it is known).
* One of the following values:
** ''Plural'': If it is an unknown quantity greater than 5.
** ''Greater plural'': If it is an unknown quantity greater than an already established plural.
** ''Paucal'': If it is an unknown small quantity.
** ''Greater paucal'': If it is an unknown small quantity greater than an already established paucal.
** ''Global'': If it is the entire quantity that exists.
* An Abstract part, representing a quantifier (like "''a glass of'' water").
=== Abstract tense ===
Either:
* An enumeration of:
** ''Absolute'': A sentence that is always true, regardless of time. In English, is usually represented by a simple present.
** ''Past'': A sentence that was true in the past.
** ''Present'': A sentence that is true only now.
** ''Future'': A sentence that will be true in the future.
* An Abstract relative tense, representing a time relative to a known time.
=== Abstract relative tense ===
Contains:
* '''Relation''': Either ''Before'', ''During'' or ''After''
* '''Reference time''': Of type Abstract tense.
=== Text decoration ===
An enumeration with either one of the following values:
* ''Bold''
* ''Italics''
* ''Underlined''
* ''Crossed''
== Examples of abstract sentences ==
"'''Berlin''' is a city.":
* '''Type''': Abstract copula
* '''First part''':
** '''Type''': Abstract part decoration
** '''Content''':
*** '''Type''': Abstract proper name
*** '''QID''': {{Q|Q64}}
*** '''Complements''': []
** '''Decoration''': ''Bold''
* '''Second part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q515}}
** '''Definiteness''': ''Indefinite''
** '''Number''': 1
** '''Complements''': []
* '''Tense''': ''Absolute''
* '''Complements''': []
"Antelopes are mammals.":
* '''Type''': Abstract copula
* '''First part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q25894}}
** '''Definiteness''': ''Absolute''
** '''Number''': ''Global''
** '''Complements''': []
* '''Second part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q7377}}
** '''Definiteness''': ''Indefinite''
** '''Number''': ''Plural''
** '''Complements''': []
* '''Tense''': ''Absolute''
* '''Complements''': []
== Comments ==
*{{s}}, as the proposer. This page is meant to discuss the general proposal. The specific example types are open to discussion (in particular, I am not particularly convinced of the handling of tenses, since many languages require a very nuanced handling of tenses). [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 10:00, 7 April 2026 (UTC)
*:Can you come up with an example that goes beyond what already exists in WF, to show in what way this would be more powerful? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 15:36, 7 April 2026 (UTC)
*{{s}} lgtm. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 13:56, 7 April 2026 (UTC)
*Regretfully {{o}} as the types here seem rather limited in the arguments they require--what of arbitrary proper names not mapped to items? what of nouns that haven't been mapped to items yet and may not warrant such mapping?--and there does not seem to be an ability to extend this to treat arbitrary predicates (that is, verbs that are not 'to be' or 'to have'). I fear that subordinating the flexibility for handling arbitrary linguistic phenomena to some notion of Wikifunctions idiomaticity will kneecap the expressive ability of abstract content; if we are to help new contributors out, then this should come from (as sort of tried by Immanuelle on the current Abstract Wikipedia) tooling on top of the abstract content format and (as hinted at by VivianIsBee on Abstract Wikipedia's Project chat) a flexible authoring language that is defined and maintained alongside any defined abstract content types. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 15:26, 7 April 2026 (UTC)
*:Perhaps it was not very clear (I've now tried to clarify more), but the examples of Abstract part types present in this page are just a minimal part of the entirety of types that would be created in order to encode Abstract parts. One of the features of this proposal is the ability to encode a very diverse variety of structures, exploiting the polymorphism provided by [[Wikifunctions:Type proposals/configuration of functions for given types|Configurations of functions for given types]] in order to maintain scalability. For example, there will be a type encoding people's names (handling all the nuances due to the many different ways a name can be expressed), a type encoding arbitrary predicates (again, handling all the nuances due to how differently the various languages treat them). (For now, I don't see an incumbent need to encode arbitrary proper names not on Wikidata that are not people's names, but if the Abstract Wikipedia community felt the need to include this corner case, it would be easy to create a new type handling it.) [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 19:52, 7 April 2026 (UTC)
mymja2z5puavmc4vckq60qyf0lwj1v7
263800
263798
2026-04-07T20:10:25Z
Dv103
11127
/* Comments */ Reply
263800
wikitext
text/x-wiki
== Summary ==
This proposal is an attempt to represent in an abstract way the content of Abstract Wikipedia.
=== Comparison with competing proposals ===
This is an alternative to other proposals like [[Wikifunctions:Type proposal/Syntactic table|Syntactic tables]] and [[Wikifunctions:Type proposals/Semantic unit|Semantic units]], that try to solve the same problem. Both of these have some issues, that this proposal tries to address.
The former proposal has the issue of imposing a bottom-up approach, having functions that need to generate only a part of the sentence and populate a table that should contain all the different variations of the part of the sentence for all the possible grammatical contexts. As it has been pointed out, this approach has the issue that in realistic scenarios for many languages requires the creation of huge tables, only to select at the end just one option, other than not accounting the fact that in some languages, different parts of the sentence may be mixed up.
The [[Wikifunctions:Type proposals/Semantic unit|Semantic unit]] and [[Wikifunctions:Type proposals/Syntactic unit|Syntactic unit]] approach tries to solve these issues by proposing a different approach, which consist in first encode the entire sentence through an object, and then pass it to a function that renders it. The Abstract sentence approach is basically the same one of Semantic units (and leaves purposefully out the proposal of Syntactic unit, since it is an internal tool that is outside the scope of this proposal), but is an attempt to implement it in a way that is more idiomatic to Wikifunctions, exploiting the potential given by Wikifunctions. The hope is to create an approach that is simpler to understand for uninitiated contributors, and that naturally guides Abstract Wikipedia editors to the generation of abstract content.
== Structure ==
An "Abstract sentence", for the purposes of this page, is the representation of a sentence in a language-neutral way. It is composed of various "Abstract sentence parts" (or "Abstract parts" for brevity), which can consist of entire phrases down to single nouns. The Abstract sentence is modeled as a tree, with Abstract sentence parts containing other Abstract sentence parts, down to the primitive ones. The Abstract parts can be of various types, each corresponding to a different Wikifunctions type. Each Abstract part type should contain all the content of the Abstract part (such as the {{Z|Z6091}}s or the composing Abstract parts), as well as all the grammatical information that some languages need in order to properly inflect the part.
For every structure that is needed for the encoding of abstract content, there would be a different type that encodes the specific structure. For example, there would be types representing specific nouns, types encoding for various types of attributes, various sentence structures... Each new type would be discussed with the same procedure currently followed for the creation of new types. This would allow the organic growth of the different types of sentences that can be represented with the Abstract sentence model, ideally with the ability in the end to encode all the possible structures that are used in natural languages.
== Usage ==
With this proposal, a typical Abstract Wikipedia fragment would consist in a call to a function like <code>Abstract sentence to HTML (Abstract sentence, Language)</code>. This function would then delegate the NLG to language-specific functions.
In order to fully exploit the functionalities of Wikifunctions types, [[Wikifunctions:Type proposals/configuration of functions for given types|Configurations of functions for given types]] are needed.
== Examples of Abstract part types ==
Those are just some examples of possible Abstract part types, that should be enough to fully encode the fragments generated by {{Z|Z26039}}, {{Z|Z26627}}, and {{Z|Z26095}}. These examples are still a draft, and are purposefully limited in order to just provide minimal working examples. Through progressive implementation of many new types, in the future it will be possible to encode many more language structures.
=== Abstract proper name ===
This Abstract part type encodes an item that has a proper name that is unique to the single real-life item. This should not be used for people, since it is necessary to use a more specialized type to handle all the nuances of people's names. This allows us to just represent it just with a single QID. This type should contain:
* '''QID''': The {{Z|Z6091}} of the object referred by the proper name.
* '''Complements''': A list of the eventual Abstract parts that complement the proper name. Note: they should be of type "Abstract complement", which for now is not included among these examples.
=== Abstract noun ===
This Abstract part type encodes one or multiple items that are identified by a common noun. Note that here "noun" does not necessarily refer to a literal single word noun, since some languages could use an entire construction just to refer to this concept. The structure is:
* '''QID''': The {{Z|Z6091}} of the common noun.
* '''Definiteness''': Of type Abstract definiteness (see below), encodes the definiteness of the noun (in other words, whether this particular noun has been previously introduced or not).
* '''Number''': Of type Abstract number, encodes how many instanced this noun is referring to.
* '''Complements''': A list of the eventual Abstract parts that complement the noun.
=== Abstract copula ===
This type represents a sentence of type "X is Y", with the specific meaning "X is equal to Y" (like "Mars is a planet" or "Paris is the capital of France", but not for example "Jupiter is big"). The structure is:
* '''First part''': An Abstract part representing the first part of the copula structure.
* '''Second part''': An Abstract part representing the second part of the copula structure.
* '''Tense''': Of type Abstract tense, represents when the copula is true.
* '''Complements''': A list of the eventual Abstract parts that complement the copula.
=== Abstract part decoration ===
Represents a visual decoration of an abstract part (like bold or italics). The structure is:
* '''Content''': The Abstract part that has to be decorated.
* '''Decoration''': Of type Text decoration, represent the decoration that needs to be applied.
== Examples of auxiliary types ==
=== Abstract definiteness ===
An enumeration that can be one of the following values:
* ''Absolute'': Refers to entire concept or the entirety of the instances. Supports only the numbers "1" and "Global". In English, with Abstract number "1" it usually corresponds to the article-less singular for uncountable nouns ("''Bread'' is an aliment.") and to the singular with definite article for countable nouns ("''The violin'' is a musical instrument."). With Abstract number "Global", it usually corresponds to the article-less singular for uncountable noun ("''Water'' is wet.") and to the article-less plural for countable nouns ("''Giraffes'' are mammals.").
* ''Definite'': Refers to instances that are completely identifiable. Corresponds to the English definite article.
* ''Indefinite'': Refers to instances that are not identifiable from the given information. Corresponds to the English indefinite article.
=== Abstract number ===
A value that can be either:
* A {{Z|Z13518}}: the exact number of instances (if it is known).
* One of the following values:
** ''Plural'': If it is an unknown quantity greater than 5.
** ''Greater plural'': If it is an unknown quantity greater than an already established plural.
** ''Paucal'': If it is an unknown small quantity.
** ''Greater paucal'': If it is an unknown small quantity greater than an already established paucal.
** ''Global'': If it is the entire quantity that exists.
* An Abstract part, representing a quantifier (like "''a glass of'' water").
=== Abstract tense ===
Either:
* An enumeration of:
** ''Absolute'': A sentence that is always true, regardless of time. In English, is usually represented by a simple present.
** ''Past'': A sentence that was true in the past.
** ''Present'': A sentence that is true only now.
** ''Future'': A sentence that will be true in the future.
* An Abstract relative tense, representing a time relative to a known time.
=== Abstract relative tense ===
Contains:
* '''Relation''': Either ''Before'', ''During'' or ''After''
* '''Reference time''': Of type Abstract tense.
=== Text decoration ===
An enumeration with either one of the following values:
* ''Bold''
* ''Italics''
* ''Underlined''
* ''Crossed''
== Examples of abstract sentences ==
"'''Berlin''' is a city.":
* '''Type''': Abstract copula
* '''First part''':
** '''Type''': Abstract part decoration
** '''Content''':
*** '''Type''': Abstract proper name
*** '''QID''': {{Q|Q64}}
*** '''Complements''': []
** '''Decoration''': ''Bold''
* '''Second part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q515}}
** '''Definiteness''': ''Indefinite''
** '''Number''': 1
** '''Complements''': []
* '''Tense''': ''Absolute''
* '''Complements''': []
"Antelopes are mammals.":
* '''Type''': Abstract copula
* '''First part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q25894}}
** '''Definiteness''': ''Absolute''
** '''Number''': ''Global''
** '''Complements''': []
* '''Second part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q7377}}
** '''Definiteness''': ''Indefinite''
** '''Number''': ''Plural''
** '''Complements''': []
* '''Tense''': ''Absolute''
* '''Complements''': []
== Comments ==
*{{s}}, as the proposer. This page is meant to discuss the general proposal. The specific example types are open to discussion (in particular, I am not particularly convinced of the handling of tenses, since many languages require a very nuanced handling of tenses). [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 10:00, 7 April 2026 (UTC)
*:Can you come up with an example that goes beyond what already exists in WF, to show in what way this would be more powerful? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 15:36, 7 April 2026 (UTC)
*::For now the example Abstract part types are very limited (since ideally every new type should require discussion and the reach of community consensus, so I purposefully limitated them to just the bare minimum), so it is very difficult to come up with more elaborated examples. But I think the first example already exemplifies a new feature that currently would need hyper-specific functions, which is the ability to bold just a part of the sentence, and it would not be a stretch to conceive a new similar type that would allow the encoding of hyperlinks. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 20:10, 7 April 2026 (UTC)
*{{s}} lgtm. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 13:56, 7 April 2026 (UTC)
*Regretfully {{o}} as the types here seem rather limited in the arguments they require--what of arbitrary proper names not mapped to items? what of nouns that haven't been mapped to items yet and may not warrant such mapping?--and there does not seem to be an ability to extend this to treat arbitrary predicates (that is, verbs that are not 'to be' or 'to have'). I fear that subordinating the flexibility for handling arbitrary linguistic phenomena to some notion of Wikifunctions idiomaticity will kneecap the expressive ability of abstract content; if we are to help new contributors out, then this should come from (as sort of tried by Immanuelle on the current Abstract Wikipedia) tooling on top of the abstract content format and (as hinted at by VivianIsBee on Abstract Wikipedia's Project chat) a flexible authoring language that is defined and maintained alongside any defined abstract content types. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 15:26, 7 April 2026 (UTC)
*:Perhaps it was not very clear (I've now tried to clarify more), but the examples of Abstract part types present in this page are just a minimal part of the entirety of types that would be created in order to encode Abstract parts. One of the features of this proposal is the ability to encode a very diverse variety of structures, exploiting the polymorphism provided by [[Wikifunctions:Type proposals/configuration of functions for given types|Configurations of functions for given types]] in order to maintain scalability. For example, there will be a type encoding people's names (handling all the nuances due to the many different ways a name can be expressed), a type encoding arbitrary predicates (again, handling all the nuances due to how differently the various languages treat them). (For now, I don't see an incumbent need to encode arbitrary proper names not on Wikidata that are not people's names, but if the Abstract Wikipedia community felt the need to include this corner case, it would be easy to create a new type handling it.) [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 19:52, 7 April 2026 (UTC)
3e5hif1na9dim968q5ws2bk6evx0d7z
263801
263800
2026-04-07T20:37:31Z
Dv103
11127
Added part decoration recursive option and topicality; added new example
263801
wikitext
text/x-wiki
== Summary ==
This proposal is an attempt to represent in an abstract way the content of Abstract Wikipedia.
=== Comparison with competing proposals ===
This is an alternative to other proposals like [[Wikifunctions:Type proposal/Syntactic table|Syntactic tables]] and [[Wikifunctions:Type proposals/Semantic unit|Semantic units]], that try to solve the same problem. Both of these have some issues, that this proposal tries to address.
The former proposal has the issue of imposing a bottom-up approach, having functions that need to generate only a part of the sentence and populate a table that should contain all the different variations of the part of the sentence for all the possible grammatical contexts. As it has been pointed out, this approach has the issue that in realistic scenarios for many languages requires the creation of huge tables, only to select at the end just one option, other than not accounting the fact that in some languages, different parts of the sentence may be mixed up.
The [[Wikifunctions:Type proposals/Semantic unit|Semantic unit]] and [[Wikifunctions:Type proposals/Syntactic unit|Syntactic unit]] approach tries to solve these issues by proposing a different approach, which consist in first encode the entire sentence through an object, and then pass it to a function that renders it. The Abstract sentence approach is basically the same one of Semantic units (and leaves purposefully out the proposal of Syntactic unit, since it is an internal tool that is outside the scope of this proposal), but is an attempt to implement it in a way that is more idiomatic to Wikifunctions, exploiting the potential given by Wikifunctions. The hope is to create an approach that is simpler to understand for uninitiated contributors, and that naturally guides Abstract Wikipedia editors to the generation of abstract content.
== Structure ==
An "Abstract sentence", for the purposes of this page, is the representation of a sentence in a language-neutral way. It is composed of various "Abstract sentence parts" (or "Abstract parts" for brevity), which can consist of entire phrases down to single nouns. The Abstract sentence is modeled as a tree, with Abstract sentence parts containing other Abstract sentence parts, down to the primitive ones. The Abstract parts can be of various types, each corresponding to a different Wikifunctions type. Each Abstract part type should contain all the content of the Abstract part (such as the {{Z|Z6091}}s or the composing Abstract parts), as well as all the grammatical information that some languages need in order to properly inflect the part.
For every structure that is needed for the encoding of abstract content, there would be a different type that encodes the specific structure. For example, there would be types representing specific nouns, types encoding for various types of attributes, various sentence structures... Each new type would be discussed with the same procedure currently followed for the creation of new types. This would allow the organic growth of the different types of sentences that can be represented with the Abstract sentence model, ideally with the ability in the end to encode all the possible structures that are used in natural languages.
== Usage ==
With this proposal, a typical Abstract Wikipedia fragment would consist in a call to a function like <code>Abstract sentence to HTML (Abstract sentence, Language)</code>. This function would then delegate the NLG to language-specific functions.
In order to fully exploit the functionalities of Wikifunctions types, [[Wikifunctions:Type proposals/configuration of functions for given types|Configurations of functions for given types]] are needed.
== Examples of Abstract part types ==
Those are just some examples of possible Abstract part types, that should be enough to fully encode the fragments generated by {{Z|Z26039}}, {{Z|Z26627}}, and {{Z|Z26095}}. These examples are still a draft, and are purposefully limited in order to just provide minimal working examples. Through progressive implementation of many new types, in the future it will be possible to encode many more language structures.
=== Abstract proper name ===
This Abstract part type encodes an item that has a proper name that is unique to the single real-life item. This should not be used for people, since it is necessary to use a more specialized type to handle all the nuances of people's names. This allows us to just represent it just with a single QID. This type should contain:
* '''QID''': The {{Z|Z6091}} of the object referred by the proper name.
* '''Topicality''': Of type [[Wikifunctions:Type proposals/Topic-comment|Topic-comment]], encodes the topicality of the proper name.
* '''Complements''': A list of the eventual Abstract parts that complement the proper name. Note: they should be of type "Abstract complement", which for now is not included among these examples.
=== Abstract noun ===
This Abstract part type encodes one or multiple items that are identified by a common noun. Note that here "noun" does not necessarily refer to a literal single word noun, since some languages could use an entire construction just to refer to this concept. The structure is:
* '''QID''': The {{Z|Z6091}} of the common noun.
* '''Definiteness''': Of type Abstract definiteness (see below), encodes the definiteness of the noun (in other words, whether this particular noun has been previously introduced or not).
* '''Number''': Of type Abstract number, encodes how many instanced this noun is referring to.
* '''Topicality''': Of type [[Wikifunctions:Type proposals/Topic-comment|Topic-comment]], encodes the topicality of the noun.
* '''Complements''': A list of the eventual Abstract parts that complement the noun.
=== Abstract copula ===
This type represents a sentence of type "X is Y", with the specific meaning "X is equal to Y" (like "Mars is a planet" or "Paris is the capital of France", but not for example "Jupiter is big"). The structure is:
* '''First part''': An Abstract part representing the first part of the copula structure.
* '''Second part''': An Abstract part representing the second part of the copula structure.
* '''Tense''': Of type Abstract tense, represents when the copula is true.
* '''Complements''': A list of the eventual Abstract parts that complement the copula.
=== Abstract part decoration ===
Represents a visual decoration of an abstract part (like bold or italics). The structure is:
* '''Content''': The Abstract part that has to be decorated.
* '''Decoration''': Of type Text decoration, represent the decoration that needs to be applied.
* '''Applies recursively''': Of type {{Z|Z40}}, encodes whether the decoration should also apply to all the child Abstract parts.
== Examples of auxiliary types ==
=== Abstract definiteness ===
An enumeration that can be one of the following values:
* ''Absolute'': Refers to entire concept or the entirety of the instances. Supports only the numbers "1" and "Global". In English, with Abstract number "1" it usually corresponds to the article-less singular for uncountable nouns ("''Bread'' is an aliment.") and to the singular with definite article for countable nouns ("''The violin'' is a musical instrument."). With Abstract number "Global", it usually corresponds to the article-less singular for uncountable noun ("''Water'' is wet.") and to the article-less plural for countable nouns ("''Giraffes'' are mammals.").
* ''Definite'': Refers to instances that are completely identifiable. Corresponds to the English definite article.
* ''Indefinite'': Refers to instances that are not identifiable from the given information. Corresponds to the English indefinite article.
=== Abstract number ===
A value that can be either:
* A {{Z|Z13518}}: the exact number of instances (if it is known).
* One of the following values:
** ''Plural'': If it is an unknown quantity greater than 5.
** ''Greater plural'': If it is an unknown quantity greater than an already established plural.
** ''Paucal'': If it is an unknown small quantity.
** ''Greater paucal'': If it is an unknown small quantity greater than an already established paucal.
** ''Global'': If it is the entire quantity that exists.
* An Abstract part, representing a quantifier (like "''a glass of'' water").
=== Abstract tense ===
Either:
* An enumeration of:
** ''Absolute'': A sentence that is always true, regardless of time. In English, is usually represented by a simple present.
** ''Past'': A sentence that was true in the past.
** ''Present'': A sentence that is true only now.
** ''Future'': A sentence that will be true in the future.
* An Abstract relative tense, representing a time relative to a known time.
=== Abstract relative tense ===
Contains:
* '''Relation''': Either ''Before'', ''During'' or ''After''
* '''Reference time''': Of type Abstract tense.
=== Text decoration ===
An enumeration with either one of the following values:
* ''Bold''
* ''Italics''
* ''Underlined''
* ''Crossed''
== Examples of abstract sentences ==
"'''Berlin''' is a city.":
* '''Type''': Abstract copula
* '''First part''':
** '''Type''': Abstract part decoration
** '''Content''':
*** '''Type''': Abstract proper name
*** '''QID''': {{Q|Q64}}
*** '''Topicality''': {{Q|Q200801}}
*** '''Complements''': []
** '''Decoration''': ''Bold''
** '''Applies recursively''': {{Z|Z42}}
* '''Second part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q515}}
** '''Definiteness''': ''Indefinite''
** '''Number''': 1
** '''Topicality''': {{Q|Q1435289}}
** '''Complements''': []
* '''Tense''': ''Absolute''
* '''Complements''': []
"Antelopes are mammals." (assuming that this sentence is in a text speaking about mammals, and antelopes are just an example of mammals):
* '''Type''': Abstract copula
* '''First part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q25894}}
** '''Definiteness''': ''Absolute''
** '''Number''': ''Global''
** '''Topicality''': {{Q|Q1435289}}
** '''Complements''': []
* '''Second part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q7377}}
** '''Definiteness''': ''Indefinite''
** '''Number''': ''Plural''
** '''Topicality''': {{Q|Q200801}}
** '''Complements''': []
* '''Tense''': ''Absolute''
* '''Complements''': []
The presence of topicality allows some languages to properly mark it, and for [[wikipedia:Topic-prominent language|topic-prominent languages]] to properly organize the syntax, if necessary.
"The eyes were a door." (assuming that it is referring to 2 eyes that have been previously introduced; this is just a demonstration of the potential versatility of this model):
* '''Type''': Abstract copula
* '''First part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q7364}}
** '''Definiteness''': ''Definite''
** '''Number''': 2
** '''Topicality''': {{Q|Q200801}}
** '''Complements''': []
* '''Second part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q7377}}
** '''Definiteness''': ''Indefinite''
** '''Number''': ''Singular''
** '''Topicality''': {{Q|Q1435289}}
** '''Complements''': []
* '''Tense''': ''Past''
* '''Complements''': []
Note how with this representation, it is possible for languages that have the dual number to properly employ it to indicate that the eyes are 2.
== Comments ==
*{{s}}, as the proposer. This page is meant to discuss the general proposal. The specific example types are open to discussion (in particular, I am not particularly convinced of the handling of tenses, since many languages require a very nuanced handling of tenses). [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 10:00, 7 April 2026 (UTC)
*:Can you come up with an example that goes beyond what already exists in WF, to show in what way this would be more powerful? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 15:36, 7 April 2026 (UTC)
*::For now the example Abstract part types are very limited (since ideally every new type should require discussion and the reach of community consensus, so I purposefully limitated them to just the bare minimum), so it is very difficult to come up with more elaborated examples. But I think the first example already exemplifies a new feature that currently would need hyper-specific functions, which is the ability to bold just a part of the sentence, and it would not be a stretch to conceive a new similar type that would allow the encoding of hyperlinks. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 20:10, 7 April 2026 (UTC)
*{{s}} lgtm. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 13:56, 7 April 2026 (UTC)
*Regretfully {{o}} as the types here seem rather limited in the arguments they require--what of arbitrary proper names not mapped to items? what of nouns that haven't been mapped to items yet and may not warrant such mapping?--and there does not seem to be an ability to extend this to treat arbitrary predicates (that is, verbs that are not 'to be' or 'to have'). I fear that subordinating the flexibility for handling arbitrary linguistic phenomena to some notion of Wikifunctions idiomaticity will kneecap the expressive ability of abstract content; if we are to help new contributors out, then this should come from (as sort of tried by Immanuelle on the current Abstract Wikipedia) tooling on top of the abstract content format and (as hinted at by VivianIsBee on Abstract Wikipedia's Project chat) a flexible authoring language that is defined and maintained alongside any defined abstract content types. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 15:26, 7 April 2026 (UTC)
*:Perhaps it was not very clear (I've now tried to clarify more), but the examples of Abstract part types present in this page are just a minimal part of the entirety of types that would be created in order to encode Abstract parts. One of the features of this proposal is the ability to encode a very diverse variety of structures, exploiting the polymorphism provided by [[Wikifunctions:Type proposals/configuration of functions for given types|Configurations of functions for given types]] in order to maintain scalability. For example, there will be a type encoding people's names (handling all the nuances due to the many different ways a name can be expressed), a type encoding arbitrary predicates (again, handling all the nuances due to how differently the various languages treat them). (For now, I don't see an incumbent need to encode arbitrary proper names not on Wikidata that are not people's names, but if the Abstract Wikipedia community felt the need to include this corner case, it would be easy to create a new type handling it.) [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 19:52, 7 April 2026 (UTC)
ogssn0si1670v6lh6k0pgao9a0d69e1
263802
263801
2026-04-07T20:39:20Z
Dv103
11127
/* Comments */ Reply
263802
wikitext
text/x-wiki
== Summary ==
This proposal is an attempt to represent in an abstract way the content of Abstract Wikipedia.
=== Comparison with competing proposals ===
This is an alternative to other proposals like [[Wikifunctions:Type proposal/Syntactic table|Syntactic tables]] and [[Wikifunctions:Type proposals/Semantic unit|Semantic units]], that try to solve the same problem. Both of these have some issues, that this proposal tries to address.
The former proposal has the issue of imposing a bottom-up approach, having functions that need to generate only a part of the sentence and populate a table that should contain all the different variations of the part of the sentence for all the possible grammatical contexts. As it has been pointed out, this approach has the issue that in realistic scenarios for many languages requires the creation of huge tables, only to select at the end just one option, other than not accounting the fact that in some languages, different parts of the sentence may be mixed up.
The [[Wikifunctions:Type proposals/Semantic unit|Semantic unit]] and [[Wikifunctions:Type proposals/Syntactic unit|Syntactic unit]] approach tries to solve these issues by proposing a different approach, which consist in first encode the entire sentence through an object, and then pass it to a function that renders it. The Abstract sentence approach is basically the same one of Semantic units (and leaves purposefully out the proposal of Syntactic unit, since it is an internal tool that is outside the scope of this proposal), but is an attempt to implement it in a way that is more idiomatic to Wikifunctions, exploiting the potential given by Wikifunctions. The hope is to create an approach that is simpler to understand for uninitiated contributors, and that naturally guides Abstract Wikipedia editors to the generation of abstract content.
== Structure ==
An "Abstract sentence", for the purposes of this page, is the representation of a sentence in a language-neutral way. It is composed of various "Abstract sentence parts" (or "Abstract parts" for brevity), which can consist of entire phrases down to single nouns. The Abstract sentence is modeled as a tree, with Abstract sentence parts containing other Abstract sentence parts, down to the primitive ones. The Abstract parts can be of various types, each corresponding to a different Wikifunctions type. Each Abstract part type should contain all the content of the Abstract part (such as the {{Z|Z6091}}s or the composing Abstract parts), as well as all the grammatical information that some languages need in order to properly inflect the part.
For every structure that is needed for the encoding of abstract content, there would be a different type that encodes the specific structure. For example, there would be types representing specific nouns, types encoding for various types of attributes, various sentence structures... Each new type would be discussed with the same procedure currently followed for the creation of new types. This would allow the organic growth of the different types of sentences that can be represented with the Abstract sentence model, ideally with the ability in the end to encode all the possible structures that are used in natural languages.
== Usage ==
With this proposal, a typical Abstract Wikipedia fragment would consist in a call to a function like <code>Abstract sentence to HTML (Abstract sentence, Language)</code>. This function would then delegate the NLG to language-specific functions.
In order to fully exploit the functionalities of Wikifunctions types, [[Wikifunctions:Type proposals/configuration of functions for given types|Configurations of functions for given types]] are needed.
== Examples of Abstract part types ==
Those are just some examples of possible Abstract part types, that should be enough to fully encode the fragments generated by {{Z|Z26039}}, {{Z|Z26627}}, and {{Z|Z26095}}. These examples are still a draft, and are purposefully limited in order to just provide minimal working examples. Through progressive implementation of many new types, in the future it will be possible to encode many more language structures.
=== Abstract proper name ===
This Abstract part type encodes an item that has a proper name that is unique to the single real-life item. This should not be used for people, since it is necessary to use a more specialized type to handle all the nuances of people's names. This allows us to just represent it just with a single QID. This type should contain:
* '''QID''': The {{Z|Z6091}} of the object referred by the proper name.
* '''Topicality''': Of type [[Wikifunctions:Type proposals/Topic-comment|Topic-comment]], encodes the topicality of the proper name.
* '''Complements''': A list of the eventual Abstract parts that complement the proper name. Note: they should be of type "Abstract complement", which for now is not included among these examples.
=== Abstract noun ===
This Abstract part type encodes one or multiple items that are identified by a common noun. Note that here "noun" does not necessarily refer to a literal single word noun, since some languages could use an entire construction just to refer to this concept. The structure is:
* '''QID''': The {{Z|Z6091}} of the common noun.
* '''Definiteness''': Of type Abstract definiteness (see below), encodes the definiteness of the noun (in other words, whether this particular noun has been previously introduced or not).
* '''Number''': Of type Abstract number, encodes how many instanced this noun is referring to.
* '''Topicality''': Of type [[Wikifunctions:Type proposals/Topic-comment|Topic-comment]], encodes the topicality of the noun.
* '''Complements''': A list of the eventual Abstract parts that complement the noun.
=== Abstract copula ===
This type represents a sentence of type "X is Y", with the specific meaning "X is equal to Y" (like "Mars is a planet" or "Paris is the capital of France", but not for example "Jupiter is big"). The structure is:
* '''First part''': An Abstract part representing the first part of the copula structure.
* '''Second part''': An Abstract part representing the second part of the copula structure.
* '''Tense''': Of type Abstract tense, represents when the copula is true.
* '''Complements''': A list of the eventual Abstract parts that complement the copula.
=== Abstract part decoration ===
Represents a visual decoration of an abstract part (like bold or italics). The structure is:
* '''Content''': The Abstract part that has to be decorated.
* '''Decoration''': Of type Text decoration, represent the decoration that needs to be applied.
* '''Applies recursively''': Of type {{Z|Z40}}, encodes whether the decoration should also apply to all the child Abstract parts.
== Examples of auxiliary types ==
=== Abstract definiteness ===
An enumeration that can be one of the following values:
* ''Absolute'': Refers to entire concept or the entirety of the instances. Supports only the numbers "1" and "Global". In English, with Abstract number "1" it usually corresponds to the article-less singular for uncountable nouns ("''Bread'' is an aliment.") and to the singular with definite article for countable nouns ("''The violin'' is a musical instrument."). With Abstract number "Global", it usually corresponds to the article-less singular for uncountable noun ("''Water'' is wet.") and to the article-less plural for countable nouns ("''Giraffes'' are mammals.").
* ''Definite'': Refers to instances that are completely identifiable. Corresponds to the English definite article.
* ''Indefinite'': Refers to instances that are not identifiable from the given information. Corresponds to the English indefinite article.
=== Abstract number ===
A value that can be either:
* A {{Z|Z13518}}: the exact number of instances (if it is known).
* One of the following values:
** ''Plural'': If it is an unknown quantity greater than 5.
** ''Greater plural'': If it is an unknown quantity greater than an already established plural.
** ''Paucal'': If it is an unknown small quantity.
** ''Greater paucal'': If it is an unknown small quantity greater than an already established paucal.
** ''Global'': If it is the entire quantity that exists.
* An Abstract part, representing a quantifier (like "''a glass of'' water").
=== Abstract tense ===
Either:
* An enumeration of:
** ''Absolute'': A sentence that is always true, regardless of time. In English, is usually represented by a simple present.
** ''Past'': A sentence that was true in the past.
** ''Present'': A sentence that is true only now.
** ''Future'': A sentence that will be true in the future.
* An Abstract relative tense, representing a time relative to a known time.
=== Abstract relative tense ===
Contains:
* '''Relation''': Either ''Before'', ''During'' or ''After''
* '''Reference time''': Of type Abstract tense.
=== Text decoration ===
An enumeration with either one of the following values:
* ''Bold''
* ''Italics''
* ''Underlined''
* ''Crossed''
== Examples of abstract sentences ==
"'''Berlin''' is a city.":
* '''Type''': Abstract copula
* '''First part''':
** '''Type''': Abstract part decoration
** '''Content''':
*** '''Type''': Abstract proper name
*** '''QID''': {{Q|Q64}}
*** '''Topicality''': {{Q|Q200801}}
*** '''Complements''': []
** '''Decoration''': ''Bold''
** '''Applies recursively''': {{Z|Z42}}
* '''Second part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q515}}
** '''Definiteness''': ''Indefinite''
** '''Number''': 1
** '''Topicality''': {{Q|Q1435289}}
** '''Complements''': []
* '''Tense''': ''Absolute''
* '''Complements''': []
"Antelopes are mammals." (assuming that this sentence is in a text speaking about mammals, and antelopes are just an example of mammals):
* '''Type''': Abstract copula
* '''First part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q25894}}
** '''Definiteness''': ''Absolute''
** '''Number''': ''Global''
** '''Topicality''': {{Q|Q1435289}}
** '''Complements''': []
* '''Second part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q7377}}
** '''Definiteness''': ''Indefinite''
** '''Number''': ''Plural''
** '''Topicality''': {{Q|Q200801}}
** '''Complements''': []
* '''Tense''': ''Absolute''
* '''Complements''': []
The presence of topicality allows some languages to properly mark it, and for [[wikipedia:Topic-prominent language|topic-prominent languages]] to properly organize the syntax, if necessary.
"The eyes were a door." (assuming that it is referring to 2 eyes that have been previously introduced; this is just a demonstration of the potential versatility of this model):
* '''Type''': Abstract copula
* '''First part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q7364}}
** '''Definiteness''': ''Definite''
** '''Number''': 2
** '''Topicality''': {{Q|Q200801}}
** '''Complements''': []
* '''Second part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q7377}}
** '''Definiteness''': ''Indefinite''
** '''Number''': ''Singular''
** '''Topicality''': {{Q|Q1435289}}
** '''Complements''': []
* '''Tense''': ''Past''
* '''Complements''': []
Note how with this representation, it is possible for languages that have the dual number to properly employ it to indicate that the eyes are 2.
== Comments ==
*{{s}}, as the proposer. This page is meant to discuss the general proposal. The specific example types are open to discussion (in particular, I am not particularly convinced of the handling of tenses, since many languages require a very nuanced handling of tenses). [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 10:00, 7 April 2026 (UTC)
*:Can you come up with an example that goes beyond what already exists in WF, to show in what way this would be more powerful? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 15:36, 7 April 2026 (UTC)
*::For now the example Abstract part types are very limited (since ideally every new type should require discussion and the reach of community consensus, so I purposefully limitated them to just the bare minimum), so it is very difficult to come up with more elaborated examples. But I think the first example already exemplifies a new feature that currently would need hyper-specific functions, which is the ability to bold just a part of the sentence, and it would not be a stretch to conceive a new similar type that would allow the encoding of hyperlinks. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 20:10, 7 April 2026 (UTC)
*:::I have now added a new example that tries to show the versatility of this structure. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 20:39, 7 April 2026 (UTC)
*{{s}} lgtm. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 13:56, 7 April 2026 (UTC)
*Regretfully {{o}} as the types here seem rather limited in the arguments they require--what of arbitrary proper names not mapped to items? what of nouns that haven't been mapped to items yet and may not warrant such mapping?--and there does not seem to be an ability to extend this to treat arbitrary predicates (that is, verbs that are not 'to be' or 'to have'). I fear that subordinating the flexibility for handling arbitrary linguistic phenomena to some notion of Wikifunctions idiomaticity will kneecap the expressive ability of abstract content; if we are to help new contributors out, then this should come from (as sort of tried by Immanuelle on the current Abstract Wikipedia) tooling on top of the abstract content format and (as hinted at by VivianIsBee on Abstract Wikipedia's Project chat) a flexible authoring language that is defined and maintained alongside any defined abstract content types. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 15:26, 7 April 2026 (UTC)
*:Perhaps it was not very clear (I've now tried to clarify more), but the examples of Abstract part types present in this page are just a minimal part of the entirety of types that would be created in order to encode Abstract parts. One of the features of this proposal is the ability to encode a very diverse variety of structures, exploiting the polymorphism provided by [[Wikifunctions:Type proposals/configuration of functions for given types|Configurations of functions for given types]] in order to maintain scalability. For example, there will be a type encoding people's names (handling all the nuances due to the many different ways a name can be expressed), a type encoding arbitrary predicates (again, handling all the nuances due to how differently the various languages treat them). (For now, I don't see an incumbent need to encode arbitrary proper names not on Wikidata that are not people's names, but if the Abstract Wikipedia community felt the need to include this corner case, it would be easy to create a new type handling it.) [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 19:52, 7 April 2026 (UTC)
kuxxe3aghdb5fpntv5562srfzi865ju
263803
263802
2026-04-07T20:41:41Z
Dv103
11127
/* Comments */ Reply
263803
wikitext
text/x-wiki
== Summary ==
This proposal is an attempt to represent in an abstract way the content of Abstract Wikipedia.
=== Comparison with competing proposals ===
This is an alternative to other proposals like [[Wikifunctions:Type proposal/Syntactic table|Syntactic tables]] and [[Wikifunctions:Type proposals/Semantic unit|Semantic units]], that try to solve the same problem. Both of these have some issues, that this proposal tries to address.
The former proposal has the issue of imposing a bottom-up approach, having functions that need to generate only a part of the sentence and populate a table that should contain all the different variations of the part of the sentence for all the possible grammatical contexts. As it has been pointed out, this approach has the issue that in realistic scenarios for many languages requires the creation of huge tables, only to select at the end just one option, other than not accounting the fact that in some languages, different parts of the sentence may be mixed up.
The [[Wikifunctions:Type proposals/Semantic unit|Semantic unit]] and [[Wikifunctions:Type proposals/Syntactic unit|Syntactic unit]] approach tries to solve these issues by proposing a different approach, which consist in first encode the entire sentence through an object, and then pass it to a function that renders it. The Abstract sentence approach is basically the same one of Semantic units (and leaves purposefully out the proposal of Syntactic unit, since it is an internal tool that is outside the scope of this proposal), but is an attempt to implement it in a way that is more idiomatic to Wikifunctions, exploiting the potential given by Wikifunctions. The hope is to create an approach that is simpler to understand for uninitiated contributors, and that naturally guides Abstract Wikipedia editors to the generation of abstract content.
== Structure ==
An "Abstract sentence", for the purposes of this page, is the representation of a sentence in a language-neutral way. It is composed of various "Abstract sentence parts" (or "Abstract parts" for brevity), which can consist of entire phrases down to single nouns. The Abstract sentence is modeled as a tree, with Abstract sentence parts containing other Abstract sentence parts, down to the primitive ones. The Abstract parts can be of various types, each corresponding to a different Wikifunctions type. Each Abstract part type should contain all the content of the Abstract part (such as the {{Z|Z6091}}s or the composing Abstract parts), as well as all the grammatical information that some languages need in order to properly inflect the part.
For every structure that is needed for the encoding of abstract content, there would be a different type that encodes the specific structure. For example, there would be types representing specific nouns, types encoding for various types of attributes, various sentence structures... Each new type would be discussed with the same procedure currently followed for the creation of new types. This would allow the organic growth of the different types of sentences that can be represented with the Abstract sentence model, ideally with the ability in the end to encode all the possible structures that are used in natural languages.
== Usage ==
With this proposal, a typical Abstract Wikipedia fragment would consist in a call to a function like <code>Abstract sentence to HTML (Abstract sentence, Language)</code>. This function would then delegate the NLG to language-specific functions.
In order to fully exploit the functionalities of Wikifunctions types, [[Wikifunctions:Type proposals/configuration of functions for given types|Configurations of functions for given types]] are needed.
== Examples of Abstract part types ==
Those are just some examples of possible Abstract part types, that should be enough to fully encode the fragments generated by {{Z|Z26039}}, {{Z|Z26627}}, and {{Z|Z26095}}. These examples are still a draft, and are purposefully limited in order to just provide minimal working examples. Through progressive implementation of many new types, in the future it will be possible to encode many more language structures.
=== Abstract proper name ===
This Abstract part type encodes an item that has a proper name that is unique to the single real-life item. This should not be used for people, since it is necessary to use a more specialized type to handle all the nuances of people's names. This allows us to just represent it just with a single QID. This type should contain:
* '''QID''': The {{Z|Z6091}} of the object referred by the proper name.
* '''Topicality''': Of type [[Wikifunctions:Type proposals/Topic-comment|Topic-comment]], encodes the topicality of the proper name.
* '''Complements''': A list of the eventual Abstract parts that complement the proper name. Note: they should be of type "Abstract complement", which for now is not included among these examples.
=== Abstract noun ===
This Abstract part type encodes one or multiple items that are identified by a common noun. Note that here "noun" does not necessarily refer to a literal single word noun, since some languages could use an entire construction just to refer to this concept. The structure is:
* '''QID''': The {{Z|Z6091}} of the common noun.
* '''Definiteness''': Of type Abstract definiteness (see below), encodes the definiteness of the noun (in other words, whether this particular noun has been previously introduced or not).
* '''Number''': Of type Abstract number, encodes how many instanced this noun is referring to.
* '''Topicality''': Of type [[Wikifunctions:Type proposals/Topic-comment|Topic-comment]], encodes the topicality of the noun.
* '''Complements''': A list of the eventual Abstract parts that complement the noun.
=== Abstract copula ===
This type represents a sentence of type "X is Y", with the specific meaning "X is equal to Y" (like "Mars is a planet" or "Paris is the capital of France", but not for example "Jupiter is big"). The structure is:
* '''First part''': An Abstract part representing the first part of the copula structure.
* '''Second part''': An Abstract part representing the second part of the copula structure.
* '''Tense''': Of type Abstract tense, represents when the copula is true.
* '''Complements''': A list of the eventual Abstract parts that complement the copula.
=== Abstract part decoration ===
Represents a visual decoration of an abstract part (like bold or italics). The structure is:
* '''Content''': The Abstract part that has to be decorated.
* '''Decoration''': Of type Text decoration, represent the decoration that needs to be applied.
* '''Applies recursively''': Of type {{Z|Z40}}, encodes whether the decoration should also apply to all the child Abstract parts.
== Examples of auxiliary types ==
=== Abstract definiteness ===
An enumeration that can be one of the following values:
* ''Absolute'': Refers to entire concept or the entirety of the instances. Supports only the numbers "1" and "Global". In English, with Abstract number "1" it usually corresponds to the article-less singular for uncountable nouns ("''Bread'' is an aliment.") and to the singular with definite article for countable nouns ("''The violin'' is a musical instrument."). With Abstract number "Global", it usually corresponds to the article-less singular for uncountable noun ("''Water'' is wet.") and to the article-less plural for countable nouns ("''Giraffes'' are mammals.").
* ''Definite'': Refers to instances that are completely identifiable. Corresponds to the English definite article.
* ''Indefinite'': Refers to instances that are not identifiable from the given information. Corresponds to the English indefinite article.
=== Abstract number ===
A value that can be either:
* A {{Z|Z13518}}: the exact number of instances (if it is known).
* One of the following values:
** ''Plural'': If it is an unknown quantity greater than 5.
** ''Greater plural'': If it is an unknown quantity greater than an already established plural.
** ''Paucal'': If it is an unknown small quantity.
** ''Greater paucal'': If it is an unknown small quantity greater than an already established paucal.
** ''Global'': If it is the entire quantity that exists.
* An Abstract part, representing a quantifier (like "''a glass of'' water").
=== Abstract tense ===
Either:
* An enumeration of:
** ''Absolute'': A sentence that is always true, regardless of time. In English, is usually represented by a simple present.
** ''Past'': A sentence that was true in the past.
** ''Present'': A sentence that is true only now.
** ''Future'': A sentence that will be true in the future.
* An Abstract relative tense, representing a time relative to a known time.
=== Abstract relative tense ===
Contains:
* '''Relation''': Either ''Before'', ''During'' or ''After''
* '''Reference time''': Of type Abstract tense.
=== Text decoration ===
An enumeration with either one of the following values:
* ''Bold''
* ''Italics''
* ''Underlined''
* ''Crossed''
== Examples of abstract sentences ==
"'''Berlin''' is a city.":
* '''Type''': Abstract copula
* '''First part''':
** '''Type''': Abstract part decoration
** '''Content''':
*** '''Type''': Abstract proper name
*** '''QID''': {{Q|Q64}}
*** '''Topicality''': {{Q|Q200801}}
*** '''Complements''': []
** '''Decoration''': ''Bold''
** '''Applies recursively''': {{Z|Z42}}
* '''Second part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q515}}
** '''Definiteness''': ''Indefinite''
** '''Number''': 1
** '''Topicality''': {{Q|Q1435289}}
** '''Complements''': []
* '''Tense''': ''Absolute''
* '''Complements''': []
"Antelopes are mammals." (assuming that this sentence is in a text speaking about mammals, and antelopes are just an example of mammals):
* '''Type''': Abstract copula
* '''First part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q25894}}
** '''Definiteness''': ''Absolute''
** '''Number''': ''Global''
** '''Topicality''': {{Q|Q1435289}}
** '''Complements''': []
* '''Second part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q7377}}
** '''Definiteness''': ''Indefinite''
** '''Number''': ''Plural''
** '''Topicality''': {{Q|Q200801}}
** '''Complements''': []
* '''Tense''': ''Absolute''
* '''Complements''': []
The presence of topicality allows some languages to properly mark it, and for [[wikipedia:Topic-prominent language|topic-prominent languages]] to properly organize the syntax, if necessary.
"The eyes were a door." (assuming that it is referring to 2 eyes that have been previously introduced; this is just a demonstration of the potential versatility of this model):
* '''Type''': Abstract copula
* '''First part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q7364}}
** '''Definiteness''': ''Definite''
** '''Number''': 2
** '''Topicality''': {{Q|Q200801}}
** '''Complements''': []
* '''Second part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q7377}}
** '''Definiteness''': ''Indefinite''
** '''Number''': ''Singular''
** '''Topicality''': {{Q|Q1435289}}
** '''Complements''': []
* '''Tense''': ''Past''
* '''Complements''': []
Note how with this representation, it is possible for languages that have the dual number to properly employ it to indicate that the eyes are 2.
== Comments ==
*{{s}}, as the proposer. This page is meant to discuss the general proposal. The specific example types are open to discussion (in particular, I am not particularly convinced of the handling of tenses, since many languages require a very nuanced handling of tenses). [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 10:00, 7 April 2026 (UTC)
*:Can you come up with an example that goes beyond what already exists in WF, to show in what way this would be more powerful? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 15:36, 7 April 2026 (UTC)
*::For now the example Abstract part types are very limited (since ideally every new type should require discussion and the reach of community consensus, so I purposefully limitated them to just the bare minimum), so it is very difficult to come up with more elaborated examples. But I think the first example already exemplifies a new feature that currently would need hyper-specific functions, which is the ability to bold just a part of the sentence, and it would not be a stretch to conceive a new similar type that would allow the encoding of hyperlinks. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 20:10, 7 April 2026 (UTC)
*:::I have now added a new example that tries to show the versatility of this structure. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 20:39, 7 April 2026 (UTC)
*:I have now tried to add support for topicality in the example types. Since I don't speak any language that marks it grammatically (outside the typical indo-european active and passive voices), please check if my implementation makes sense. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 20:41, 7 April 2026 (UTC)
*{{s}} lgtm. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 13:56, 7 April 2026 (UTC)
*Regretfully {{o}} as the types here seem rather limited in the arguments they require--what of arbitrary proper names not mapped to items? what of nouns that haven't been mapped to items yet and may not warrant such mapping?--and there does not seem to be an ability to extend this to treat arbitrary predicates (that is, verbs that are not 'to be' or 'to have'). I fear that subordinating the flexibility for handling arbitrary linguistic phenomena to some notion of Wikifunctions idiomaticity will kneecap the expressive ability of abstract content; if we are to help new contributors out, then this should come from (as sort of tried by Immanuelle on the current Abstract Wikipedia) tooling on top of the abstract content format and (as hinted at by VivianIsBee on Abstract Wikipedia's Project chat) a flexible authoring language that is defined and maintained alongside any defined abstract content types. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 15:26, 7 April 2026 (UTC)
*:Perhaps it was not very clear (I've now tried to clarify more), but the examples of Abstract part types present in this page are just a minimal part of the entirety of types that would be created in order to encode Abstract parts. One of the features of this proposal is the ability to encode a very diverse variety of structures, exploiting the polymorphism provided by [[Wikifunctions:Type proposals/configuration of functions for given types|Configurations of functions for given types]] in order to maintain scalability. For example, there will be a type encoding people's names (handling all the nuances due to the many different ways a name can be expressed), a type encoding arbitrary predicates (again, handling all the nuances due to how differently the various languages treat them). (For now, I don't see an incumbent need to encode arbitrary proper names not on Wikidata that are not people's names, but if the Abstract Wikipedia community felt the need to include this corner case, it would be easy to create a new type handling it.) [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 19:52, 7 April 2026 (UTC)
qtxh45ykvic4byelwhimg70z31s0tvi
263809
263803
2026-04-07T21:15:17Z
Dv103
11127
/* Examples of abstract sentences */
263809
wikitext
text/x-wiki
== Summary ==
This proposal is an attempt to represent in an abstract way the content of Abstract Wikipedia.
=== Comparison with competing proposals ===
This is an alternative to other proposals like [[Wikifunctions:Type proposal/Syntactic table|Syntactic tables]] and [[Wikifunctions:Type proposals/Semantic unit|Semantic units]], that try to solve the same problem. Both of these have some issues, that this proposal tries to address.
The former proposal has the issue of imposing a bottom-up approach, having functions that need to generate only a part of the sentence and populate a table that should contain all the different variations of the part of the sentence for all the possible grammatical contexts. As it has been pointed out, this approach has the issue that in realistic scenarios for many languages requires the creation of huge tables, only to select at the end just one option, other than not accounting the fact that in some languages, different parts of the sentence may be mixed up.
The [[Wikifunctions:Type proposals/Semantic unit|Semantic unit]] and [[Wikifunctions:Type proposals/Syntactic unit|Syntactic unit]] approach tries to solve these issues by proposing a different approach, which consist in first encode the entire sentence through an object, and then pass it to a function that renders it. The Abstract sentence approach is basically the same one of Semantic units (and leaves purposefully out the proposal of Syntactic unit, since it is an internal tool that is outside the scope of this proposal), but is an attempt to implement it in a way that is more idiomatic to Wikifunctions, exploiting the potential given by Wikifunctions. The hope is to create an approach that is simpler to understand for uninitiated contributors, and that naturally guides Abstract Wikipedia editors to the generation of abstract content.
== Structure ==
An "Abstract sentence", for the purposes of this page, is the representation of a sentence in a language-neutral way. It is composed of various "Abstract sentence parts" (or "Abstract parts" for brevity), which can consist of entire phrases down to single nouns. The Abstract sentence is modeled as a tree, with Abstract sentence parts containing other Abstract sentence parts, down to the primitive ones. The Abstract parts can be of various types, each corresponding to a different Wikifunctions type. Each Abstract part type should contain all the content of the Abstract part (such as the {{Z|Z6091}}s or the composing Abstract parts), as well as all the grammatical information that some languages need in order to properly inflect the part.
For every structure that is needed for the encoding of abstract content, there would be a different type that encodes the specific structure. For example, there would be types representing specific nouns, types encoding for various types of attributes, various sentence structures... Each new type would be discussed with the same procedure currently followed for the creation of new types. This would allow the organic growth of the different types of sentences that can be represented with the Abstract sentence model, ideally with the ability in the end to encode all the possible structures that are used in natural languages.
== Usage ==
With this proposal, a typical Abstract Wikipedia fragment would consist in a call to a function like <code>Abstract sentence to HTML (Abstract sentence, Language)</code>. This function would then delegate the NLG to language-specific functions.
In order to fully exploit the functionalities of Wikifunctions types, [[Wikifunctions:Type proposals/configuration of functions for given types|Configurations of functions for given types]] are needed.
== Examples of Abstract part types ==
Those are just some examples of possible Abstract part types, that should be enough to fully encode the fragments generated by {{Z|Z26039}}, {{Z|Z26627}}, and {{Z|Z26095}}. These examples are still a draft, and are purposefully limited in order to just provide minimal working examples. Through progressive implementation of many new types, in the future it will be possible to encode many more language structures.
=== Abstract proper name ===
This Abstract part type encodes an item that has a proper name that is unique to the single real-life item. This should not be used for people, since it is necessary to use a more specialized type to handle all the nuances of people's names. This allows us to just represent it just with a single QID. This type should contain:
* '''QID''': The {{Z|Z6091}} of the object referred by the proper name.
* '''Topicality''': Of type [[Wikifunctions:Type proposals/Topic-comment|Topic-comment]], encodes the topicality of the proper name.
* '''Complements''': A list of the eventual Abstract parts that complement the proper name. Note: they should be of type "Abstract complement", which for now is not included among these examples.
=== Abstract noun ===
This Abstract part type encodes one or multiple items that are identified by a common noun. Note that here "noun" does not necessarily refer to a literal single word noun, since some languages could use an entire construction just to refer to this concept. The structure is:
* '''QID''': The {{Z|Z6091}} of the common noun.
* '''Definiteness''': Of type Abstract definiteness (see below), encodes the definiteness of the noun (in other words, whether this particular noun has been previously introduced or not).
* '''Number''': Of type Abstract number, encodes how many instanced this noun is referring to.
* '''Topicality''': Of type [[Wikifunctions:Type proposals/Topic-comment|Topic-comment]], encodes the topicality of the noun.
* '''Complements''': A list of the eventual Abstract parts that complement the noun.
=== Abstract copula ===
This type represents a sentence of type "X is Y", with the specific meaning "X is equal to Y" (like "Mars is a planet" or "Paris is the capital of France", but not for example "Jupiter is big"). The structure is:
* '''First part''': An Abstract part representing the first part of the copula structure.
* '''Second part''': An Abstract part representing the second part of the copula structure.
* '''Tense''': Of type Abstract tense, represents when the copula is true.
* '''Complements''': A list of the eventual Abstract parts that complement the copula.
=== Abstract part decoration ===
Represents a visual decoration of an abstract part (like bold or italics). The structure is:
* '''Content''': The Abstract part that has to be decorated.
* '''Decoration''': Of type Text decoration, represent the decoration that needs to be applied.
* '''Applies recursively''': Of type {{Z|Z40}}, encodes whether the decoration should also apply to all the child Abstract parts.
== Examples of auxiliary types ==
=== Abstract definiteness ===
An enumeration that can be one of the following values:
* ''Absolute'': Refers to entire concept or the entirety of the instances. Supports only the numbers "1" and "Global". In English, with Abstract number "1" it usually corresponds to the article-less singular for uncountable nouns ("''Bread'' is an aliment.") and to the singular with definite article for countable nouns ("''The violin'' is a musical instrument."). With Abstract number "Global", it usually corresponds to the article-less singular for uncountable noun ("''Water'' is wet.") and to the article-less plural for countable nouns ("''Giraffes'' are mammals.").
* ''Definite'': Refers to instances that are completely identifiable. Corresponds to the English definite article.
* ''Indefinite'': Refers to instances that are not identifiable from the given information. Corresponds to the English indefinite article.
=== Abstract number ===
A value that can be either:
* A {{Z|Z13518}}: the exact number of instances (if it is known).
* One of the following values:
** ''Plural'': If it is an unknown quantity greater than 5.
** ''Greater plural'': If it is an unknown quantity greater than an already established plural.
** ''Paucal'': If it is an unknown small quantity.
** ''Greater paucal'': If it is an unknown small quantity greater than an already established paucal.
** ''Global'': If it is the entire quantity that exists.
* An Abstract part, representing a quantifier (like "''a glass of'' water").
=== Abstract tense ===
Either:
* An enumeration of:
** ''Absolute'': A sentence that is always true, regardless of time. In English, is usually represented by a simple present.
** ''Past'': A sentence that was true in the past.
** ''Present'': A sentence that is true only now.
** ''Future'': A sentence that will be true in the future.
* An Abstract relative tense, representing a time relative to a known time.
=== Abstract relative tense ===
Contains:
* '''Relation''': Either ''Before'', ''During'' or ''After''
* '''Reference time''': Of type Abstract tense.
=== Text decoration ===
An enumeration with either one of the following values:
* ''Bold''
* ''Italics''
* ''Underlined''
* ''Crossed''
== Examples of abstract sentences ==
"'''Berlin''' is a city.":
* '''Type''': Abstract copula
* '''First part''':
** '''Type''': Abstract part decoration
** '''Content''':
*** '''Type''': Abstract proper name
*** '''QID''': {{Q|Q64}}
*** '''Topicality''': {{Q|Q200801}}
*** '''Complements''': []
** '''Decoration''': ''Bold''
** '''Applies recursively''': {{Z|Z42}}
* '''Second part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q515}}
** '''Definiteness''': ''Indefinite''
** '''Number''': 1
** '''Topicality''': {{Q|Q1435289}}
** '''Complements''': []
* '''Tense''': ''Absolute''
* '''Complements''': []
"Antelopes are mammals." (assuming that this sentence is in a text speaking about mammals, and antelopes are just an example of mammals):
* '''Type''': Abstract copula
* '''First part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q25894}}
** '''Definiteness''': ''Absolute''
** '''Number''': ''Global''
** '''Topicality''': {{Q|Q1435289}}
** '''Complements''': []
* '''Second part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q7377}}
** '''Definiteness''': ''Indefinite''
** '''Number''': ''Plural''
** '''Topicality''': {{Q|Q200801}}
** '''Complements''': []
* '''Tense''': ''Absolute''
* '''Complements''': []
The presence of topicality allows some languages to properly mark it, and for [[wikipedia:Topic-prominent language|topic-prominent languages]] to properly organize the syntax, if necessary.
"The eyes were a door." (assuming that it is referring to 2 eyes that have been previously introduced; this is just a demonstration of the potential versatility of this model):
* '''Type''': Abstract copula
* '''First part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q7364}}
** '''Definiteness''': ''Definite''
** '''Number''': 2
** '''Topicality''': {{Q|Q200801}}
** '''Complements''': []
* '''Second part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q36794}}
** '''Definiteness''': ''Indefinite''
** '''Number''': ''Singular''
** '''Topicality''': {{Q|Q1435289}}
** '''Complements''': []
* '''Tense''': ''Past''
* '''Complements''': []
Note how with this representation, it is possible for languages that have the dual number to properly employ it to indicate that the eyes are 2.
== Comments ==
*{{s}}, as the proposer. This page is meant to discuss the general proposal. The specific example types are open to discussion (in particular, I am not particularly convinced of the handling of tenses, since many languages require a very nuanced handling of tenses). [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 10:00, 7 April 2026 (UTC)
*:Can you come up with an example that goes beyond what already exists in WF, to show in what way this would be more powerful? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 15:36, 7 April 2026 (UTC)
*::For now the example Abstract part types are very limited (since ideally every new type should require discussion and the reach of community consensus, so I purposefully limitated them to just the bare minimum), so it is very difficult to come up with more elaborated examples. But I think the first example already exemplifies a new feature that currently would need hyper-specific functions, which is the ability to bold just a part of the sentence, and it would not be a stretch to conceive a new similar type that would allow the encoding of hyperlinks. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 20:10, 7 April 2026 (UTC)
*:::I have now added a new example that tries to show the versatility of this structure. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 20:39, 7 April 2026 (UTC)
*:I have now tried to add support for topicality in the example types. Since I don't speak any language that marks it grammatically (outside the typical indo-european active and passive voices), please check if my implementation makes sense. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 20:41, 7 April 2026 (UTC)
*{{s}} lgtm. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 13:56, 7 April 2026 (UTC)
*Regretfully {{o}} as the types here seem rather limited in the arguments they require--what of arbitrary proper names not mapped to items? what of nouns that haven't been mapped to items yet and may not warrant such mapping?--and there does not seem to be an ability to extend this to treat arbitrary predicates (that is, verbs that are not 'to be' or 'to have'). I fear that subordinating the flexibility for handling arbitrary linguistic phenomena to some notion of Wikifunctions idiomaticity will kneecap the expressive ability of abstract content; if we are to help new contributors out, then this should come from (as sort of tried by Immanuelle on the current Abstract Wikipedia) tooling on top of the abstract content format and (as hinted at by VivianIsBee on Abstract Wikipedia's Project chat) a flexible authoring language that is defined and maintained alongside any defined abstract content types. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 15:26, 7 April 2026 (UTC)
*:Perhaps it was not very clear (I've now tried to clarify more), but the examples of Abstract part types present in this page are just a minimal part of the entirety of types that would be created in order to encode Abstract parts. One of the features of this proposal is the ability to encode a very diverse variety of structures, exploiting the polymorphism provided by [[Wikifunctions:Type proposals/configuration of functions for given types|Configurations of functions for given types]] in order to maintain scalability. For example, there will be a type encoding people's names (handling all the nuances due to the many different ways a name can be expressed), a type encoding arbitrary predicates (again, handling all the nuances due to how differently the various languages treat them). (For now, I don't see an incumbent need to encode arbitrary proper names not on Wikidata that are not people's names, but if the Abstract Wikipedia community felt the need to include this corner case, it would be easy to create a new type handling it.) [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 19:52, 7 April 2026 (UTC)
8ycr6cfoi1o4zpzx9nuejg3mcj62o48
263810
263809
2026-04-07T21:20:58Z
Dv103
11127
/* Examples of abstract sentences */
263810
wikitext
text/x-wiki
== Summary ==
This proposal is an attempt to represent in an abstract way the content of Abstract Wikipedia.
=== Comparison with competing proposals ===
This is an alternative to other proposals like [[Wikifunctions:Type proposal/Syntactic table|Syntactic tables]] and [[Wikifunctions:Type proposals/Semantic unit|Semantic units]], that try to solve the same problem. Both of these have some issues, that this proposal tries to address.
The former proposal has the issue of imposing a bottom-up approach, having functions that need to generate only a part of the sentence and populate a table that should contain all the different variations of the part of the sentence for all the possible grammatical contexts. As it has been pointed out, this approach has the issue that in realistic scenarios for many languages requires the creation of huge tables, only to select at the end just one option, other than not accounting the fact that in some languages, different parts of the sentence may be mixed up.
The [[Wikifunctions:Type proposals/Semantic unit|Semantic unit]] and [[Wikifunctions:Type proposals/Syntactic unit|Syntactic unit]] approach tries to solve these issues by proposing a different approach, which consist in first encode the entire sentence through an object, and then pass it to a function that renders it. The Abstract sentence approach is basically the same one of Semantic units (and leaves purposefully out the proposal of Syntactic unit, since it is an internal tool that is outside the scope of this proposal), but is an attempt to implement it in a way that is more idiomatic to Wikifunctions, exploiting the potential given by Wikifunctions. The hope is to create an approach that is simpler to understand for uninitiated contributors, and that naturally guides Abstract Wikipedia editors to the generation of abstract content.
== Structure ==
An "Abstract sentence", for the purposes of this page, is the representation of a sentence in a language-neutral way. It is composed of various "Abstract sentence parts" (or "Abstract parts" for brevity), which can consist of entire phrases down to single nouns. The Abstract sentence is modeled as a tree, with Abstract sentence parts containing other Abstract sentence parts, down to the primitive ones. The Abstract parts can be of various types, each corresponding to a different Wikifunctions type. Each Abstract part type should contain all the content of the Abstract part (such as the {{Z|Z6091}}s or the composing Abstract parts), as well as all the grammatical information that some languages need in order to properly inflect the part.
For every structure that is needed for the encoding of abstract content, there would be a different type that encodes the specific structure. For example, there would be types representing specific nouns, types encoding for various types of attributes, various sentence structures... Each new type would be discussed with the same procedure currently followed for the creation of new types. This would allow the organic growth of the different types of sentences that can be represented with the Abstract sentence model, ideally with the ability in the end to encode all the possible structures that are used in natural languages.
== Usage ==
With this proposal, a typical Abstract Wikipedia fragment would consist in a call to a function like <code>Abstract sentence to HTML (Abstract sentence, Language)</code>. This function would then delegate the NLG to language-specific functions.
In order to fully exploit the functionalities of Wikifunctions types, [[Wikifunctions:Type proposals/configuration of functions for given types|Configurations of functions for given types]] are needed.
== Examples of Abstract part types ==
Those are just some examples of possible Abstract part types, that should be enough to fully encode the fragments generated by {{Z|Z26039}}, {{Z|Z26627}}, and {{Z|Z26095}}. These examples are still a draft, and are purposefully limited in order to just provide minimal working examples. Through progressive implementation of many new types, in the future it will be possible to encode many more language structures.
=== Abstract proper name ===
This Abstract part type encodes an item that has a proper name that is unique to the single real-life item. This should not be used for people, since it is necessary to use a more specialized type to handle all the nuances of people's names. This allows us to just represent it just with a single QID. This type should contain:
* '''QID''': The {{Z|Z6091}} of the object referred by the proper name.
* '''Topicality''': Of type [[Wikifunctions:Type proposals/Topic-comment|Topic-comment]], encodes the topicality of the proper name.
* '''Complements''': A list of the eventual Abstract parts that complement the proper name. Note: they should be of type "Abstract complement", which for now is not included among these examples.
=== Abstract noun ===
This Abstract part type encodes one or multiple items that are identified by a common noun. Note that here "noun" does not necessarily refer to a literal single word noun, since some languages could use an entire construction just to refer to this concept. The structure is:
* '''QID''': The {{Z|Z6091}} of the common noun.
* '''Definiteness''': Of type Abstract definiteness (see below), encodes the definiteness of the noun (in other words, whether this particular noun has been previously introduced or not).
* '''Number''': Of type Abstract number, encodes how many instanced this noun is referring to.
* '''Topicality''': Of type [[Wikifunctions:Type proposals/Topic-comment|Topic-comment]], encodes the topicality of the noun.
* '''Complements''': A list of the eventual Abstract parts that complement the noun.
=== Abstract copula ===
This type represents a sentence of type "X is Y", with the specific meaning "X is equal to Y" (like "Mars is a planet" or "Paris is the capital of France", but not for example "Jupiter is big"). The structure is:
* '''First part''': An Abstract part representing the first part of the copula structure.
* '''Second part''': An Abstract part representing the second part of the copula structure.
* '''Tense''': Of type Abstract tense, represents when the copula is true.
* '''Complements''': A list of the eventual Abstract parts that complement the copula.
=== Abstract part decoration ===
Represents a visual decoration of an abstract part (like bold or italics). The structure is:
* '''Content''': The Abstract part that has to be decorated.
* '''Decoration''': Of type Text decoration, represent the decoration that needs to be applied.
* '''Applies recursively''': Of type {{Z|Z40}}, encodes whether the decoration should also apply to all the child Abstract parts.
== Examples of auxiliary types ==
=== Abstract definiteness ===
An enumeration that can be one of the following values:
* ''Absolute'': Refers to entire concept or the entirety of the instances. Supports only the numbers "1" and "Global". In English, with Abstract number "1" it usually corresponds to the article-less singular for uncountable nouns ("''Bread'' is an aliment.") and to the singular with definite article for countable nouns ("''The violin'' is a musical instrument."). With Abstract number "Global", it usually corresponds to the article-less singular for uncountable noun ("''Water'' is wet.") and to the article-less plural for countable nouns ("''Giraffes'' are mammals.").
* ''Definite'': Refers to instances that are completely identifiable. Corresponds to the English definite article.
* ''Indefinite'': Refers to instances that are not identifiable from the given information. Corresponds to the English indefinite article.
=== Abstract number ===
A value that can be either:
* A {{Z|Z13518}}: the exact number of instances (if it is known).
* One of the following values:
** ''Plural'': If it is an unknown quantity greater than 5.
** ''Greater plural'': If it is an unknown quantity greater than an already established plural.
** ''Paucal'': If it is an unknown small quantity.
** ''Greater paucal'': If it is an unknown small quantity greater than an already established paucal.
** ''Global'': If it is the entire quantity that exists.
* An Abstract part, representing a quantifier (like "''a glass of'' water").
=== Abstract tense ===
Either:
* An enumeration of:
** ''Absolute'': A sentence that is always true, regardless of time. In English, is usually represented by a simple present.
** ''Past'': A sentence that was true in the past.
** ''Present'': A sentence that is true only now.
** ''Future'': A sentence that will be true in the future.
* An Abstract relative tense, representing a time relative to a known time.
=== Abstract relative tense ===
Contains:
* '''Relation''': Either ''Before'', ''During'' or ''After''
* '''Reference time''': Of type Abstract tense.
=== Text decoration ===
An enumeration with either one of the following values:
* ''Bold''
* ''Italics''
* ''Underlined''
* ''Crossed''
== Examples of abstract sentences ==
"'''Berlin''' is a city.":
* '''Type''': Abstract copula
* '''First part''':
** '''Type''': Abstract part decoration
** '''Content''':
*** '''Type''': Abstract proper name
*** '''QID''': {{Q|Q64}}
*** '''Topicality''': {{Q|Q200801}}
*** '''Complements''': []
** '''Decoration''': ''Bold''
** '''Applies recursively''': {{Z|Z42}}
* '''Second part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q515}}
** '''Definiteness''': ''Indefinite''
** '''Number''': 1
** '''Topicality''': {{Q|Q1435289}}
** '''Complements''': []
* '''Tense''': ''Absolute''
* '''Complements''': []
"Antelopes are mammals." (assuming that this sentence is in a text speaking about mammals, and antelopes are just an example of mammals):
* '''Type''': Abstract copula
* '''First part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q25894}}
** '''Definiteness''': ''Absolute''
** '''Number''': ''Global''
** '''Topicality''': {{Q|Q1435289}}
** '''Complements''': []
* '''Second part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q7377}}
** '''Definiteness''': ''Indefinite''
** '''Number''': ''Plural''
** '''Topicality''': {{Q|Q200801}}
** '''Complements''': []
* '''Tense''': ''Absolute''
* '''Complements''': []
The presence of topicality allows some languages to properly mark it, and for [[wikipedia:Topic-prominent language|topic-prominent languages]] to properly organize the syntax, if necessary.
"The eyes were a door." (assuming that it is referring to 2 eyes that have been previously introduced; this is just a demonstration of the potential versatility of this model):
* '''Type''': Abstract copula
* '''First part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q7364}}
** '''Definiteness''': ''Definite''
** '''Number''': 2
** '''Topicality''': {{Q|Q200801}}
** '''Complements''': []
* '''Second part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q36794}}
** '''Definiteness''': ''Indefinite''
** '''Number''': 1
** '''Topicality''': {{Q|Q1435289}}
** '''Complements''': []
* '''Tense''': ''Past''
* '''Complements''': []
Note how with this representation, it is possible for languages that have the dual number to properly employ it to indicate that the eyes are 2.
== Comments ==
*{{s}}, as the proposer. This page is meant to discuss the general proposal. The specific example types are open to discussion (in particular, I am not particularly convinced of the handling of tenses, since many languages require a very nuanced handling of tenses). [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 10:00, 7 April 2026 (UTC)
*:Can you come up with an example that goes beyond what already exists in WF, to show in what way this would be more powerful? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 15:36, 7 April 2026 (UTC)
*::For now the example Abstract part types are very limited (since ideally every new type should require discussion and the reach of community consensus, so I purposefully limitated them to just the bare minimum), so it is very difficult to come up with more elaborated examples. But I think the first example already exemplifies a new feature that currently would need hyper-specific functions, which is the ability to bold just a part of the sentence, and it would not be a stretch to conceive a new similar type that would allow the encoding of hyperlinks. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 20:10, 7 April 2026 (UTC)
*:::I have now added a new example that tries to show the versatility of this structure. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 20:39, 7 April 2026 (UTC)
*:I have now tried to add support for topicality in the example types. Since I don't speak any language that marks it grammatically (outside the typical indo-european active and passive voices), please check if my implementation makes sense. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 20:41, 7 April 2026 (UTC)
*{{s}} lgtm. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 13:56, 7 April 2026 (UTC)
*Regretfully {{o}} as the types here seem rather limited in the arguments they require--what of arbitrary proper names not mapped to items? what of nouns that haven't been mapped to items yet and may not warrant such mapping?--and there does not seem to be an ability to extend this to treat arbitrary predicates (that is, verbs that are not 'to be' or 'to have'). I fear that subordinating the flexibility for handling arbitrary linguistic phenomena to some notion of Wikifunctions idiomaticity will kneecap the expressive ability of abstract content; if we are to help new contributors out, then this should come from (as sort of tried by Immanuelle on the current Abstract Wikipedia) tooling on top of the abstract content format and (as hinted at by VivianIsBee on Abstract Wikipedia's Project chat) a flexible authoring language that is defined and maintained alongside any defined abstract content types. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 15:26, 7 April 2026 (UTC)
*:Perhaps it was not very clear (I've now tried to clarify more), but the examples of Abstract part types present in this page are just a minimal part of the entirety of types that would be created in order to encode Abstract parts. One of the features of this proposal is the ability to encode a very diverse variety of structures, exploiting the polymorphism provided by [[Wikifunctions:Type proposals/configuration of functions for given types|Configurations of functions for given types]] in order to maintain scalability. For example, there will be a type encoding people's names (handling all the nuances due to the many different ways a name can be expressed), a type encoding arbitrary predicates (again, handling all the nuances due to how differently the various languages treat them). (For now, I don't see an incumbent need to encode arbitrary proper names not on Wikidata that are not people's names, but if the Abstract Wikipedia community felt the need to include this corner case, it would be easy to create a new type handling it.) [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 19:52, 7 April 2026 (UTC)
o46gqxygohx0x4319zky6uvyfndq3bl
263898
263810
2026-04-08T07:55:34Z
Dv103
11127
Added noun specificity
263898
wikitext
text/x-wiki
== Summary ==
This proposal is an attempt to represent in an abstract way the content of Abstract Wikipedia.
=== Comparison with competing proposals ===
This is an alternative to other proposals like [[Wikifunctions:Type proposal/Syntactic table|Syntactic tables]] and [[Wikifunctions:Type proposals/Semantic unit|Semantic units]], that try to solve the same problem. Both of these have some issues, that this proposal tries to address.
The former proposal has the issue of imposing a bottom-up approach, having functions that need to generate only a part of the sentence and populate a table that should contain all the different variations of the part of the sentence for all the possible grammatical contexts. As it has been pointed out, this approach has the issue that in realistic scenarios for many languages requires the creation of huge tables, only to select at the end just one option, other than not accounting the fact that in some languages, different parts of the sentence may be mixed up.
The [[Wikifunctions:Type proposals/Semantic unit|Semantic unit]] and [[Wikifunctions:Type proposals/Syntactic unit|Syntactic unit]] approach tries to solve these issues by proposing a different approach, which consist in first encode the entire sentence through an object, and then pass it to a function that renders it. The Abstract sentence approach is basically the same one of Semantic units (and leaves purposefully out the proposal of Syntactic unit, since it is an internal tool that is outside the scope of this proposal), but is an attempt to implement it in a way that is more idiomatic to Wikifunctions, exploiting the potential given by Wikifunctions. The hope is to create an approach that is simpler to understand for uninitiated contributors, and that naturally guides Abstract Wikipedia editors to the generation of abstract content.
== Structure ==
An "Abstract sentence", for the purposes of this page, is the representation of a sentence in a language-neutral way. It is composed of various "Abstract sentence parts" (or "Abstract parts" for brevity), which can consist of entire phrases down to single nouns. The Abstract sentence is modeled as a tree, with Abstract sentence parts containing other Abstract sentence parts, down to the primitive ones. The Abstract parts can be of various types, each corresponding to a different Wikifunctions type. Each Abstract part type should contain all the content of the Abstract part (such as the {{Z|Z6091}}s or the composing Abstract parts), as well as all the grammatical information that some languages need in order to properly inflect the part.
For every structure that is needed for the encoding of abstract content, there would be a different type that encodes the specific structure. For example, there would be types representing specific nouns, types encoding for various types of attributes, various sentence structures... Each new type would be discussed with the same procedure currently followed for the creation of new types. This would allow the organic growth of the different types of sentences that can be represented with the Abstract sentence model, ideally with the ability in the end to encode all the possible structures that are used in natural languages.
== Usage ==
With this proposal, a typical Abstract Wikipedia fragment would consist in a call to a function like <code>Abstract sentence to HTML (Abstract sentence, Language)</code>. This function would then delegate the NLG to language-specific functions.
In order to fully exploit the functionalities of Wikifunctions types, [[Wikifunctions:Type proposals/configuration of functions for given types|Configurations of functions for given types]] are needed.
== Examples of Abstract part types ==
Those are just some examples of possible Abstract part types, that should be enough to fully encode the fragments generated by {{Z|Z26039}}, {{Z|Z26627}}, and {{Z|Z26095}}. These examples are still a draft, and are purposefully limited in order to just provide minimal working examples. Through progressive implementation of many new types, in the future it will be possible to encode many more language structures.
=== Abstract proper name ===
This Abstract part type encodes an item that has a proper name that is unique to the single real-life item. This should not be used for people, since it is necessary to use a more specialized type to handle all the nuances of people's names. This allows us to just represent it just with a single QID. This type should contain:
* '''QID''': The {{Z|Z6091}} of the object referred by the proper name.
* '''Topicality''': Of type [[Wikifunctions:Type proposals/Topic-comment|Topic-comment]], encodes the topicality of the proper name.
* '''Complements''': A list of the eventual Abstract parts that complement the proper name. Note: they should be of type "Abstract complement", which for now is not included among these examples.
=== Abstract noun ===
This Abstract part type encodes one or multiple items that are identified by a common noun. Note that here "noun" does not necessarily refer to a literal single word noun, since some languages could use an entire construction just to refer to this concept. The structure is:
* '''QID''': The {{Z|Z6091}} of the common noun.
* '''Definiteness''': Of type Abstract definiteness (see below), encodes the definiteness of the noun (in other words, whether this particular noun has been previously introduced or not).
* '''Specificity''': Of type [[Wikifunctions:Type proposals/Grammatical specificity|Grammatical specificity]], represents the specificity of the noun (i.e., whether the noun refers to a specific object)
* '''Number''': Of type Abstract number, encodes how many instanced this noun is referring to.
* '''Topicality''': Of type [[Wikifunctions:Type proposals/Topic-comment|Topic-comment]], encodes the topicality of the noun.
* '''Complements''': A list of the eventual Abstract parts that complement the noun.
=== Abstract copula ===
This type represents a sentence of type "X is Y", with the specific meaning "X is equal to Y" (like "Mars is a planet" or "Paris is the capital of France", but not for example "Jupiter is big"). The structure is:
* '''First part''': An Abstract part representing the first part of the copula structure.
* '''Second part''': An Abstract part representing the second part of the copula structure.
* '''Tense''': Of type Abstract tense, represents when the copula is true.
* '''Complements''': A list of the eventual Abstract parts that complement the copula.
=== Abstract part decoration ===
Represents a visual decoration of an abstract part (like bold or italics). The structure is:
* '''Content''': The Abstract part that has to be decorated.
* '''Decoration''': Of type Text decoration, represent the decoration that needs to be applied.
* '''Applies recursively''': Of type {{Z|Z40}}, encodes whether the decoration should also apply to all the child Abstract parts.
== Examples of auxiliary types ==
=== Abstract definiteness ===
An enumeration that can be one of the following values:
* ''Absolute'': Refers to entire concept or the entirety of the instances. Supports only the numbers "1" and "Global". In English, with Abstract number "1" it usually corresponds to the article-less singular for uncountable nouns ("''Bread'' is an aliment.") and to the singular with definite article for countable nouns ("''The violin'' is a musical instrument."). With Abstract number "Global", it usually corresponds to the article-less singular for uncountable noun ("''Water'' is wet.") and to the article-less plural for countable nouns ("''Giraffes'' are mammals.").
* ''Definite'': Refers to instances that are completely identifiable. Corresponds to the English definite article.
* ''Indefinite'': Refers to instances that are not identifiable from the given information. Corresponds to the English indefinite article.
=== Abstract number ===
A value that can be either:
* A {{Z|Z13518}}: the exact number of instances (if it is known).
* One of the following values:
** ''Plural'': If it is an unknown quantity greater than 5.
** ''Greater plural'': If it is an unknown quantity greater than an already established plural.
** ''Paucal'': If it is an unknown small quantity.
** ''Greater paucal'': If it is an unknown small quantity greater than an already established paucal.
** ''Global'': If it is the entire quantity that exists.
* An Abstract part, representing a quantifier (like "''a glass of'' water").
=== Abstract tense ===
Either:
* An enumeration of:
** ''Absolute'': A sentence that is always true, regardless of time. In English, is usually represented by a simple present.
** ''Past'': A sentence that was true in the past.
** ''Present'': A sentence that is true only now.
** ''Future'': A sentence that will be true in the future.
* An Abstract relative tense, representing a time relative to a known time.
=== Abstract relative tense ===
Contains:
* '''Relation''': Either ''Before'', ''During'' or ''After''
* '''Reference time''': Of type Abstract tense.
=== Text decoration ===
An enumeration with either one of the following values:
* ''Bold''
* ''Italics''
* ''Underlined''
* ''Crossed''
== Examples of abstract sentences ==
"'''Berlin''' is a city.":
* '''Type''': Abstract copula
* '''First part''':
** '''Type''': Abstract part decoration
** '''Content''':
*** '''Type''': Abstract proper name
*** '''QID''': {{Q|Q64}}
*** '''Topicality''': {{Q|Q200801}}
*** '''Complements''': []
** '''Decoration''': ''Bold''
** '''Applies recursively''': {{Z|Z42}}
* '''Second part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q515}}
** '''Definiteness''': ''Indefinite''
** '''Specificity''': {{Q|Q139008195}}
** '''Number''': 1
** '''Topicality''': {{Q|Q1435289}}
** '''Complements''': []
* '''Tense''': ''Absolute''
* '''Complements''': []
"Antelopes are mammals." (assuming that this sentence is in a text speaking about mammals, and antelopes are just an example of mammals):
* '''Type''': Abstract copula
* '''First part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q25894}}
** '''Definiteness''': ''Absolute''
** '''Specificity''': {{Q|Q139008195}}
** '''Number''': ''Global''
** '''Topicality''': {{Q|Q1435289}}
** '''Complements''': []
* '''Second part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q7377}}
** '''Definiteness''': ''Indefinite''
** '''Specificity''': {{Q|Q139008195}}
** '''Number''': ''Plural''
** '''Topicality''': {{Q|Q200801}}
** '''Complements''': []
* '''Tense''': ''Absolute''
* '''Complements''': []
The presence of topicality allows some languages to properly mark it, and for [[wikipedia:Topic-prominent language|topic-prominent languages]] to properly organize the syntax, if necessary.
"The eyes were a door." (assuming that it is referring to 2 eyes that have been previously introduced; this is just a demonstration of the potential versatility of this model):
* '''Type''': Abstract copula
* '''First part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q7364}}
** '''Definiteness''': ''Definite''
** '''Specificity''': {{Q|Q139008174}}
** '''Number''': 2
** '''Topicality''': {{Q|Q200801}}
** '''Complements''': []
* '''Second part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q36794}}
** '''Definiteness''': ''Indefinite''
** '''Specificity''': {{Q|Q139008195}}
** '''Number''': 1
** '''Topicality''': {{Q|Q1435289}}
** '''Complements''': []
* '''Tense''': ''Past''
* '''Complements''': []
Note how with this representation, it is possible for languages that have the dual number to properly employ it to indicate that the eyes are 2.
== Comments ==
*{{s}}, as the proposer. This page is meant to discuss the general proposal. The specific example types are open to discussion (in particular, I am not particularly convinced of the handling of tenses, since many languages require a very nuanced handling of tenses). [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 10:00, 7 April 2026 (UTC)
*:Can you come up with an example that goes beyond what already exists in WF, to show in what way this would be more powerful? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 15:36, 7 April 2026 (UTC)
*::For now the example Abstract part types are very limited (since ideally every new type should require discussion and the reach of community consensus, so I purposefully limitated them to just the bare minimum), so it is very difficult to come up with more elaborated examples. But I think the first example already exemplifies a new feature that currently would need hyper-specific functions, which is the ability to bold just a part of the sentence, and it would not be a stretch to conceive a new similar type that would allow the encoding of hyperlinks. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 20:10, 7 April 2026 (UTC)
*:::I have now added a new example that tries to show the versatility of this structure. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 20:39, 7 April 2026 (UTC)
*:I have now tried to add support for topicality in the example types. Since I don't speak any language that marks it grammatically (outside the typical indo-european active and passive voices), please check if my implementation makes sense. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 20:41, 7 April 2026 (UTC)
*{{s}} lgtm. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 13:56, 7 April 2026 (UTC)
*Regretfully {{o}} as the types here seem rather limited in the arguments they require--what of arbitrary proper names not mapped to items? what of nouns that haven't been mapped to items yet and may not warrant such mapping?--and there does not seem to be an ability to extend this to treat arbitrary predicates (that is, verbs that are not 'to be' or 'to have'). I fear that subordinating the flexibility for handling arbitrary linguistic phenomena to some notion of Wikifunctions idiomaticity will kneecap the expressive ability of abstract content; if we are to help new contributors out, then this should come from (as sort of tried by Immanuelle on the current Abstract Wikipedia) tooling on top of the abstract content format and (as hinted at by VivianIsBee on Abstract Wikipedia's Project chat) a flexible authoring language that is defined and maintained alongside any defined abstract content types. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 15:26, 7 April 2026 (UTC)
*:Perhaps it was not very clear (I've now tried to clarify more), but the examples of Abstract part types present in this page are just a minimal part of the entirety of types that would be created in order to encode Abstract parts. One of the features of this proposal is the ability to encode a very diverse variety of structures, exploiting the polymorphism provided by [[Wikifunctions:Type proposals/configuration of functions for given types|Configurations of functions for given types]] in order to maintain scalability. For example, there will be a type encoding people's names (handling all the nuances due to the many different ways a name can be expressed), a type encoding arbitrary predicates (again, handling all the nuances due to how differently the various languages treat them). (For now, I don't see an incumbent need to encode arbitrary proper names not on Wikidata that are not people's names, but if the Abstract Wikipedia community felt the need to include this corner case, it would be easy to create a new type handling it.) [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 19:52, 7 April 2026 (UTC)
0jgb0dw05n15wav7twilc2oe8rt0fh2
263899
263898
2026-04-08T08:03:18Z
Dv103
11127
/* Comments */
263899
wikitext
text/x-wiki
== Summary ==
This proposal is an attempt to represent in an abstract way the content of Abstract Wikipedia.
=== Comparison with competing proposals ===
This is an alternative to other proposals like [[Wikifunctions:Type proposal/Syntactic table|Syntactic tables]] and [[Wikifunctions:Type proposals/Semantic unit|Semantic units]], that try to solve the same problem. Both of these have some issues, that this proposal tries to address.
The former proposal has the issue of imposing a bottom-up approach, having functions that need to generate only a part of the sentence and populate a table that should contain all the different variations of the part of the sentence for all the possible grammatical contexts. As it has been pointed out, this approach has the issue that in realistic scenarios for many languages requires the creation of huge tables, only to select at the end just one option, other than not accounting the fact that in some languages, different parts of the sentence may be mixed up.
The [[Wikifunctions:Type proposals/Semantic unit|Semantic unit]] and [[Wikifunctions:Type proposals/Syntactic unit|Syntactic unit]] approach tries to solve these issues by proposing a different approach, which consist in first encode the entire sentence through an object, and then pass it to a function that renders it. The Abstract sentence approach is basically the same one of Semantic units (and leaves purposefully out the proposal of Syntactic unit, since it is an internal tool that is outside the scope of this proposal), but is an attempt to implement it in a way that is more idiomatic to Wikifunctions, exploiting the potential given by Wikifunctions. The hope is to create an approach that is simpler to understand for uninitiated contributors, and that naturally guides Abstract Wikipedia editors to the generation of abstract content.
== Structure ==
An "Abstract sentence", for the purposes of this page, is the representation of a sentence in a language-neutral way. It is composed of various "Abstract sentence parts" (or "Abstract parts" for brevity), which can consist of entire phrases down to single nouns. The Abstract sentence is modeled as a tree, with Abstract sentence parts containing other Abstract sentence parts, down to the primitive ones. The Abstract parts can be of various types, each corresponding to a different Wikifunctions type. Each Abstract part type should contain all the content of the Abstract part (such as the {{Z|Z6091}}s or the composing Abstract parts), as well as all the grammatical information that some languages need in order to properly inflect the part.
For every structure that is needed for the encoding of abstract content, there would be a different type that encodes the specific structure. For example, there would be types representing specific nouns, types encoding for various types of attributes, various sentence structures... Each new type would be discussed with the same procedure currently followed for the creation of new types. This would allow the organic growth of the different types of sentences that can be represented with the Abstract sentence model, ideally with the ability in the end to encode all the possible structures that are used in natural languages.
== Usage ==
With this proposal, a typical Abstract Wikipedia fragment would consist in a call to a function like <code>Abstract sentence to HTML (Abstract sentence, Language)</code>. This function would then delegate the NLG to language-specific functions.
In order to fully exploit the functionalities of Wikifunctions types, [[Wikifunctions:Type proposals/configuration of functions for given types|Configurations of functions for given types]] are needed.
== Examples of Abstract part types ==
Those are just some examples of possible Abstract part types, that should be enough to fully encode the fragments generated by {{Z|Z26039}}, {{Z|Z26627}}, and {{Z|Z26095}}. These examples are still a draft, and are purposefully limited in order to just provide minimal working examples. Through progressive implementation of many new types, in the future it will be possible to encode many more language structures.
=== Abstract proper name ===
This Abstract part type encodes an item that has a proper name that is unique to the single real-life item. This should not be used for people, since it is necessary to use a more specialized type to handle all the nuances of people's names. This allows us to just represent it just with a single QID. This type should contain:
* '''QID''': The {{Z|Z6091}} of the object referred by the proper name.
* '''Topicality''': Of type [[Wikifunctions:Type proposals/Topic-comment|Topic-comment]], encodes the topicality of the proper name.
* '''Complements''': A list of the eventual Abstract parts that complement the proper name. Note: they should be of type "Abstract complement", which for now is not included among these examples.
=== Abstract noun ===
This Abstract part type encodes one or multiple items that are identified by a common noun. Note that here "noun" does not necessarily refer to a literal single word noun, since some languages could use an entire construction just to refer to this concept. The structure is:
* '''QID''': The {{Z|Z6091}} of the common noun.
* '''Definiteness''': Of type Abstract definiteness (see below), encodes the definiteness of the noun (in other words, whether this particular noun has been previously introduced or not).
* '''Specificity''': Of type [[Wikifunctions:Type proposals/Grammatical specificity|Grammatical specificity]], represents the specificity of the noun (i.e., whether the noun refers to a specific object)
* '''Number''': Of type Abstract number, encodes how many instanced this noun is referring to.
* '''Topicality''': Of type [[Wikifunctions:Type proposals/Topic-comment|Topic-comment]], encodes the topicality of the noun.
* '''Complements''': A list of the eventual Abstract parts that complement the noun.
=== Abstract copula ===
This type represents a sentence of type "X is Y", with the specific meaning "X is equal to Y" (like "Mars is a planet" or "Paris is the capital of France", but not for example "Jupiter is big"). The structure is:
* '''First part''': An Abstract part representing the first part of the copula structure.
* '''Second part''': An Abstract part representing the second part of the copula structure.
* '''Tense''': Of type Abstract tense, represents when the copula is true.
* '''Complements''': A list of the eventual Abstract parts that complement the copula.
=== Abstract part decoration ===
Represents a visual decoration of an abstract part (like bold or italics). The structure is:
* '''Content''': The Abstract part that has to be decorated.
* '''Decoration''': Of type Text decoration, represent the decoration that needs to be applied.
* '''Applies recursively''': Of type {{Z|Z40}}, encodes whether the decoration should also apply to all the child Abstract parts.
== Examples of auxiliary types ==
=== Abstract definiteness ===
An enumeration that can be one of the following values:
* ''Absolute'': Refers to entire concept or the entirety of the instances. Supports only the numbers "1" and "Global". In English, with Abstract number "1" it usually corresponds to the article-less singular for uncountable nouns ("''Bread'' is an aliment.") and to the singular with definite article for countable nouns ("''The violin'' is a musical instrument."). With Abstract number "Global", it usually corresponds to the article-less singular for uncountable noun ("''Water'' is wet.") and to the article-less plural for countable nouns ("''Giraffes'' are mammals.").
* ''Definite'': Refers to instances that are completely identifiable. Corresponds to the English definite article.
* ''Indefinite'': Refers to instances that are not identifiable from the given information. Corresponds to the English indefinite article.
=== Abstract number ===
A value that can be either:
* A {{Z|Z13518}}: the exact number of instances (if it is known).
* One of the following values:
** ''Plural'': If it is an unknown quantity greater than 5.
** ''Greater plural'': If it is an unknown quantity greater than an already established plural.
** ''Paucal'': If it is an unknown small quantity.
** ''Greater paucal'': If it is an unknown small quantity greater than an already established paucal.
** ''Global'': If it is the entire quantity that exists.
* An Abstract part, representing a quantifier (like "''a glass of'' water").
=== Abstract tense ===
Either:
* An enumeration of:
** ''Absolute'': A sentence that is always true, regardless of time. In English, is usually represented by a simple present.
** ''Past'': A sentence that was true in the past.
** ''Present'': A sentence that is true only now.
** ''Future'': A sentence that will be true in the future.
* An Abstract relative tense, representing a time relative to a known time.
=== Abstract relative tense ===
Contains:
* '''Relation''': Either ''Before'', ''During'' or ''After''
* '''Reference time''': Of type Abstract tense.
=== Text decoration ===
An enumeration with either one of the following values:
* ''Bold''
* ''Italics''
* ''Underlined''
* ''Crossed''
== Examples of abstract sentences ==
"'''Berlin''' is a city.":
* '''Type''': Abstract copula
* '''First part''':
** '''Type''': Abstract part decoration
** '''Content''':
*** '''Type''': Abstract proper name
*** '''QID''': {{Q|Q64}}
*** '''Topicality''': {{Q|Q200801}}
*** '''Complements''': []
** '''Decoration''': ''Bold''
** '''Applies recursively''': {{Z|Z42}}
* '''Second part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q515}}
** '''Definiteness''': ''Indefinite''
** '''Specificity''': {{Q|Q139008195}}
** '''Number''': 1
** '''Topicality''': {{Q|Q1435289}}
** '''Complements''': []
* '''Tense''': ''Absolute''
* '''Complements''': []
"Antelopes are mammals." (assuming that this sentence is in a text speaking about mammals, and antelopes are just an example of mammals):
* '''Type''': Abstract copula
* '''First part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q25894}}
** '''Definiteness''': ''Absolute''
** '''Specificity''': {{Q|Q139008195}}
** '''Number''': ''Global''
** '''Topicality''': {{Q|Q1435289}}
** '''Complements''': []
* '''Second part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q7377}}
** '''Definiteness''': ''Indefinite''
** '''Specificity''': {{Q|Q139008195}}
** '''Number''': ''Plural''
** '''Topicality''': {{Q|Q200801}}
** '''Complements''': []
* '''Tense''': ''Absolute''
* '''Complements''': []
The presence of topicality allows some languages to properly mark it, and for [[wikipedia:Topic-prominent language|topic-prominent languages]] to properly organize the syntax, if necessary.
"The eyes were a door." (assuming that it is referring to 2 eyes that have been previously introduced; this is just a demonstration of the potential versatility of this model):
* '''Type''': Abstract copula
* '''First part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q7364}}
** '''Definiteness''': ''Definite''
** '''Specificity''': {{Q|Q139008174}}
** '''Number''': 2
** '''Topicality''': {{Q|Q200801}}
** '''Complements''': []
* '''Second part''':
** '''Type''': Abstract noun
** '''QID''': {{Q|Q36794}}
** '''Definiteness''': ''Indefinite''
** '''Specificity''': {{Q|Q139008195}}
** '''Number''': 1
** '''Topicality''': {{Q|Q1435289}}
** '''Complements''': []
* '''Tense''': ''Past''
* '''Complements''': []
Note how with this representation, it is possible for languages that have the dual number to properly employ it to indicate that the eyes are 2.
== Comments ==
''Please comment mainly the general Abstract sentence proposal; if it will receive enough support, the singular types exemplified in this page will be discussed singularly in dedicated pages.''
*{{s}}, as the proposer. This page is meant to discuss the general proposal. The specific example types are open to discussion (in particular, I am not particularly convinced of the handling of tenses, since many languages require a very nuanced handling of tenses). [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 10:00, 7 April 2026 (UTC)
*:Can you come up with an example that goes beyond what already exists in WF, to show in what way this would be more powerful? [[User:YoshiRulz|YoshiRulz]] ([[User talk:YoshiRulz|talk]]) 15:36, 7 April 2026 (UTC)
*::For now the example Abstract part types are very limited (since ideally every new type should require discussion and the reach of community consensus, so I purposefully limitated them to just the bare minimum), so it is very difficult to come up with more elaborated examples. But I think the first example already exemplifies a new feature that currently would need hyper-specific functions, which is the ability to bold just a part of the sentence, and it would not be a stretch to conceive a new similar type that would allow the encoding of hyperlinks. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 20:10, 7 April 2026 (UTC)
*:::I have now added a new example that tries to show the versatility of this structure. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 20:39, 7 April 2026 (UTC)
*:I have now tried to add support for topicality in the example types. Since I don't speak any language that marks it grammatically (outside the typical indo-european active and passive voices), please check if my implementation makes sense. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 20:41, 7 April 2026 (UTC)
*{{s}} lgtm. [[User:Feeglgeef|Feeglgeef]] ([[User talk:Feeglgeef|talk]]) 13:56, 7 April 2026 (UTC)
*Regretfully {{o}} as the types here seem rather limited in the arguments they require--what of arbitrary proper names not mapped to items? what of nouns that haven't been mapped to items yet and may not warrant such mapping?--and there does not seem to be an ability to extend this to treat arbitrary predicates (that is, verbs that are not 'to be' or 'to have'). I fear that subordinating the flexibility for handling arbitrary linguistic phenomena to some notion of Wikifunctions idiomaticity will kneecap the expressive ability of abstract content; if we are to help new contributors out, then this should come from (as sort of tried by Immanuelle on the current Abstract Wikipedia) tooling on top of the abstract content format and (as hinted at by VivianIsBee on Abstract Wikipedia's Project chat) a flexible authoring language that is defined and maintained alongside any defined abstract content types. [[User:Mahir256|Mahir256]] ([[User talk:Mahir256|talk]]) 15:26, 7 April 2026 (UTC)
*:Perhaps it was not very clear (I've now tried to clarify more), but the examples of Abstract part types present in this page are just a minimal part of the entirety of types that would be created in order to encode Abstract parts. One of the features of this proposal is the ability to encode a very diverse variety of structures, exploiting the polymorphism provided by [[Wikifunctions:Type proposals/configuration of functions for given types|Configurations of functions for given types]] in order to maintain scalability. For example, there will be a type encoding people's names (handling all the nuances due to the many different ways a name can be expressed), a type encoding arbitrary predicates (again, handling all the nuances due to how differently the various languages treat them). (For now, I don't see an incumbent need to encode arbitrary proper names not on Wikidata that are not people's names, but if the Abstract Wikipedia community felt the need to include this corner case, it would be easy to create a new type handling it.) [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 19:52, 7 April 2026 (UTC)
pt9mizmr912jc80metgcnxf4zcns4o3
Z33198
0
79821
263647
263639
2026-04-07T12:21:00Z
Dv103
11127
263647
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33198"
},
"Z2K2": {
"Z1K1": "Z4",
"Z4K1": "Z33198",
"Z4K2": [
"Z3",
{
"Z1K1": "Z3",
"Z3K1": "Z20838",
"Z3K2": "Z33198K1",
"Z3K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "real"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "parte reale"
}
]
},
"Z3K4": {
"Z1K1": "Z40",
"Z40K1": "Z42"
}
},
{
"Z1K1": "Z3",
"Z3K1": "Z20838",
"Z3K2": "Z33198K2",
"Z3K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "imaginary"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "parte immaginaria"
}
]
},
"Z3K4": {
"Z1K1": "Z40",
"Z40K1": "Z42"
}
}
],
"Z4K3": "Z101",
"Z4K4": "Z33202",
"Z4K7": [
"Z46",
"Z33199"
],
"Z4K8": [
"Z64",
"Z33200"
]
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "[do not use, in construction] Complex number"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
nlq41bfjdc52plh4ld906yib4szyuch
263651
263647
2026-04-07T12:27:22Z
DVrandecic (WMF)
7
added python
263651
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33198"
},
"Z2K2": {
"Z1K1": "Z4",
"Z4K1": "Z33198",
"Z4K2": [
"Z3",
{
"Z1K1": "Z3",
"Z3K1": "Z20838",
"Z3K2": "Z33198K1",
"Z3K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "real"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "parte reale"
}
]
},
"Z3K4": {
"Z1K1": "Z40",
"Z40K1": "Z42"
}
},
{
"Z1K1": "Z3",
"Z3K1": "Z20838",
"Z3K2": "Z33198K2",
"Z3K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "imaginary"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "parte immaginaria"
}
]
},
"Z3K4": {
"Z1K1": "Z40",
"Z40K1": "Z42"
}
}
],
"Z4K3": "Z101",
"Z4K4": "Z33202",
"Z4K7": [
"Z46",
"Z33199",
"Z33209"
],
"Z4K8": [
"Z64",
"Z33200",
"Z33210"
]
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "[do not use, in construction] Complex number"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
8d2cazh4366v8i7ad2xiwnjoviqbg6e
263682
263651
2026-04-07T12:50:58Z
ChaoticVermillion
31127
add desc
263682
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33198"
},
"Z2K2": {
"Z1K1": "Z4",
"Z4K1": "Z33198",
"Z4K2": [
"Z3",
{
"Z1K1": "Z3",
"Z3K1": "Z20838",
"Z3K2": "Z33198K1",
"Z3K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "real"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "parte reale"
}
]
},
"Z3K4": {
"Z1K1": "Z40",
"Z40K1": "Z42"
}
},
{
"Z1K1": "Z3",
"Z3K1": "Z20838",
"Z3K2": "Z33198K2",
"Z3K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "imaginary"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "parte immaginaria"
}
]
},
"Z3K4": {
"Z1K1": "Z40",
"Z40K1": "Z42"
}
}
],
"Z4K3": "Z101",
"Z4K4": "Z33202",
"Z4K7": [
"Z46",
"Z33199",
"Z33209"
],
"Z4K8": [
"Z64",
"Z33200",
"Z33210"
]
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "[do not use, in construction] Complex number"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "complex number made up of two float64s."
}
]
}
}
hrx576ra215x7bz6owse1ujfwi84z8q
263709
263682
2026-04-07T13:04:13Z
DVrandecic (WMF)
7
263709
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33198"
},
"Z2K2": {
"Z1K1": "Z4",
"Z4K1": "Z33198",
"Z4K2": [
"Z3",
{
"Z1K1": "Z3",
"Z3K1": "Z20838",
"Z3K2": "Z33198K1",
"Z3K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "real"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "parte reale"
}
]
},
"Z3K4": {
"Z1K1": "Z40",
"Z40K1": "Z42"
}
},
{
"Z1K1": "Z3",
"Z3K1": "Z20838",
"Z3K2": "Z33198K2",
"Z3K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "imaginary"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "parte immaginaria"
}
]
},
"Z3K4": {
"Z1K1": "Z40",
"Z40K1": "Z42"
}
}
],
"Z4K3": "Z101",
"Z4K4": "Z33202",
"Z4K7": [
"Z46",
"Z33199",
"Z33209"
],
"Z4K8": [
"Z64",
"Z33200",
"Z33210"
]
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Complex number"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "complex number made up of two float64s."
}
]
}
}
63qozjwtcivcn66pud93hta5lkdwiln
263719
263709
2026-04-07T13:32:24Z
Dv103
11127
+it
263719
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33198"
},
"Z2K2": {
"Z1K1": "Z4",
"Z4K1": "Z33198",
"Z4K2": [
"Z3",
{
"Z1K1": "Z3",
"Z3K1": "Z20838",
"Z3K2": "Z33198K1",
"Z3K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "real"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "parte reale"
}
]
},
"Z3K4": {
"Z1K1": "Z40",
"Z40K1": "Z42"
}
},
{
"Z1K1": "Z3",
"Z3K1": "Z20838",
"Z3K2": "Z33198K2",
"Z3K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "imaginary"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "parte immaginaria"
}
]
},
"Z3K4": {
"Z1K1": "Z40",
"Z40K1": "Z42"
}
}
],
"Z4K3": "Z101",
"Z4K4": "Z33202",
"Z4K7": [
"Z46",
"Z33199",
"Z33209"
],
"Z4K8": [
"Z64",
"Z33200",
"Z33210"
]
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Complex number"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "Numero complesso"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "complex number made up of two float64s."
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "Numero complesso composto da due float64"
}
]
}
}
dnkun3nz76p2zrz9a5rl2zrg60lne2x
263754
263719
2026-04-07T14:15:45Z
Feeglgeef
8776
encouraged by my rename to float64 a year or so ago, I'm boldly changing the name to complex128 to emphasize that this type uses floats, not integers or naturals or rationals
263754
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33198"
},
"Z2K2": {
"Z1K1": "Z4",
"Z4K1": "Z33198",
"Z4K2": [
"Z3",
{
"Z1K1": "Z3",
"Z3K1": "Z20838",
"Z3K2": "Z33198K1",
"Z3K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "real"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "parte reale"
}
]
},
"Z3K4": {
"Z1K1": "Z40",
"Z40K1": "Z42"
}
},
{
"Z1K1": "Z3",
"Z3K1": "Z20838",
"Z3K2": "Z33198K2",
"Z3K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "imaginary"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "parte immaginaria"
}
]
},
"Z3K4": {
"Z1K1": "Z40",
"Z40K1": "Z42"
}
}
],
"Z4K3": "Z101",
"Z4K4": "Z33202",
"Z4K7": [
"Z46",
"Z33199",
"Z33209"
],
"Z4K8": [
"Z64",
"Z33200",
"Z33210"
]
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "complex128"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "Numero complesso"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "complex number made up of two float64s."
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "Numero complesso composto da due float64"
}
]
}
}
p5e31xscbfvxx94s5qbisgwqtxztrm6
263806
263754
2026-04-07T21:11:15Z
Dv103
11127
263806
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33198"
},
"Z2K2": {
"Z1K1": "Z4",
"Z4K1": "Z33198",
"Z4K2": [
"Z3",
{
"Z1K1": "Z3",
"Z3K1": "Z20838",
"Z3K2": "Z33198K1",
"Z3K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "real"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "parte reale"
}
]
},
"Z3K4": {
"Z1K1": "Z40",
"Z40K1": "Z42"
}
},
{
"Z1K1": "Z3",
"Z3K1": "Z20838",
"Z3K2": "Z33198K2",
"Z3K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "imaginary"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "parte immaginaria"
}
]
},
"Z3K4": {
"Z1K1": "Z40",
"Z40K1": "Z42"
}
}
],
"Z4K3": "Z101",
"Z4K4": "Z33202",
"Z4K7": [
"Z46",
"Z33199",
"Z33209"
],
"Z4K8": [
"Z64",
"Z33200",
"Z33210"
]
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "complex128"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "complex128"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31",
{
"Z1K1": "Z31",
"Z31K1": "Z1787",
"Z31K2": [
"Z6",
"Numero complesso"
]
}
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "complex number made up of two float64s."
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "Numero complesso composto da due float64"
}
]
}
}
06jrk3vhp4q1iaf4qrob740yv8hiwj2
Z33199
0
79822
263755
263626
2026-04-07T14:22:22Z
Feeglgeef
8776
263755
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33199"
},
"Z2K2": {
"Z1K1": "Z46",
"Z46K1": "Z33199",
"Z46K2": "Z33198",
"Z46K3": {
"Z1K1": "Z16",
"Z16K1": "Z600",
"Z16K2": "function Z33199( Z33199K1 ) {\n\tfunction ToFloat( K1 ) {\n\t\t// is it a special value?\n\t\tlet special = K1.Z20838K4.Z20825K1;\n\t\tif (typeof special === 'object') {\n\t\t\tspecial = special.Z9K1;\n\t\t}\n\t\tif ( special === 'Z20829' ) {\n\t\t\treturn +0.0;\n\t\t}\n\t\tif ( special === 'Z20831' ) {\n\t\t\treturn -0.0;\n\t\t}\n\t\tif ( special === 'Z20832' ) {\n\t\t\treturn Number.POSITIVE_INFINITY;\n\t\t}\n\t\tif ( special === 'Z20833' ) {\n\t\t\treturn Number.NEGATIVE_INFINITY;\n\t\t}\n\t\tif ( ( special === 'Z20834' )\n\t\t\t|| ( special === 'Z20835' )\n\t\t\t|| ( special === 'Z20836' ) ) {\n\t\t\treturn Number.NaN;\n\t\t}\n\t\n\t\t// is it a positive number?\n\t\tlet sign = K1.Z20838K1.Z16659K1;\n\t\tif (typeof sign === 'object') {\n\t\t\tsign = sign.Z9K1;\n\t\t}\n\t\tconst positive = ( sign === 'Z16660' ) ? 0n : 1n;\n\t\tconst signBit = positive \u003C\u003C 63n;\n\t\n\t\t// exponent\n\t\tlet expvalue = K1.Z20838K2.Z16683K2.Z13518K1;\n\t\tif (typeof expvalue === 'string') {\n\t\t\texpvalue = BigInt( K1.Z20838K2.Z16683K2.Z13518K1 );\n\t\t} else {\n\t\t\texpvalue = BigInt( K1.Z20838K2.Z16683K2.Z13518K1.Z6K1 );\n\t\t}\n\t\tlet expsign = K1.Z20838K2.Z16683K1.Z16659K1;\n\t\n\t\twhile ( typeof expsign === 'object' ) {\n\t\t\tif ( 'Z9K1' in expsign ) {\n\t\t\t\texpsign = expsign.Z9K1;\n\t\t\t} else if ( 'Z16659K1' in expsign ) {\n\t\t\t\texpsign = expsign.Z16659K1;\n\t\t\t} else {\n\t\t\t\texpsign = '';\n\t\t\t}\n\t\t}\n\t\tif ( expsign === 'Z16662' ) { \n\t\t\texpsign = -1n;\n\t\t} else {\n\t\t\texpsign = 1n;\n\t\t}\n\t\tconst exponent = expsign * expvalue;\n\t\tif ( ( exponent \u003E 1023n ) || ( exponent \u003C -1023n ) ) {\n\t\t\treturn Number.NaN;\n\t\t}\n\n\t\t// mantissa\n\t\tlet mantvalue = K1.Z20838K3.Z13518K1;\n\t\tif (typeof mantvalue === 'string') {\n\t\t\tmantvalue = BigInt( mantvalue );\n\t\t} else {\n\t\t\tmantvalue = BigInt( mantvalue.Z6K1 );\n\t\t}\n\t\n \t// Handle subnormals separately (exponent = -1023)\n\t\tlet exponentBits, mantissaBits;\n\t\tif (exponent === -1023n) {\n\t\t\t// subnormal: exponent bits are all 0, raw mantissa used directly\n\t\t\texponentBits = 0n;\n\t\t\tmantissaBits = mantvalue;\n\t\t} else {\n\t\t\t// normalised: exponent bias +1023\n\t\t\texponentBits = ((exponent + 1023n) \u0026 0x7FFn) \u003C\u003C 52n;\n\t\t\tconst MANTISSA_MASK = (1n \u003C\u003C 52n) - 1n;\n \t\tmantissaBits = mantvalue \u0026 MANTISSA_MASK;\n\t\t}\n \n \tconst floatBits = signBit | exponentBits | mantissaBits;\n\n\t // Convert to a JavaScript Number\n \tconst buffer = new ArrayBuffer(8);\n \tconst view = new DataView(buffer);\n \tview.setBigUint64(0, floatBits, false); // Big-endian\n \treturn view.getFloat64(0, false);\t\n\t}\n\t\n\treturn {\n\t\treal: ToFloat( Z33199K1.Z33198K1 ),\n\t\timaginary: ToFloat( Z33199K1.Z33198K2 )\n\t};\n}"
},
"Z46K4": "Object"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "JavaScript converter from Complex128 (to Object)"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Returns an object { real: r, imaginary: i }"
}
]
}
}
3j4micyg4f0p2wd9tr8tbu5vj51zd6q
263756
263755
2026-04-07T14:22:39Z
Feeglgeef
8776
263756
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33199"
},
"Z2K2": {
"Z1K1": "Z46",
"Z46K1": "Z33199",
"Z46K2": "Z33198",
"Z46K3": {
"Z1K1": "Z16",
"Z16K1": "Z600",
"Z16K2": "function Z33199( Z33199K1 ) {\n\tfunction ToFloat( K1 ) {\n\t\t// is it a special value?\n\t\tlet special = K1.Z20838K4.Z20825K1;\n\t\tif (typeof special === 'object') {\n\t\t\tspecial = special.Z9K1;\n\t\t}\n\t\tif ( special === 'Z20829' ) {\n\t\t\treturn +0.0;\n\t\t}\n\t\tif ( special === 'Z20831' ) {\n\t\t\treturn -0.0;\n\t\t}\n\t\tif ( special === 'Z20832' ) {\n\t\t\treturn Number.POSITIVE_INFINITY;\n\t\t}\n\t\tif ( special === 'Z20833' ) {\n\t\t\treturn Number.NEGATIVE_INFINITY;\n\t\t}\n\t\tif ( ( special === 'Z20834' )\n\t\t\t|| ( special === 'Z20835' )\n\t\t\t|| ( special === 'Z20836' ) ) {\n\t\t\treturn Number.NaN;\n\t\t}\n\t\n\t\t// is it a positive number?\n\t\tlet sign = K1.Z20838K1.Z16659K1;\n\t\tif (typeof sign === 'object') {\n\t\t\tsign = sign.Z9K1;\n\t\t}\n\t\tconst positive = ( sign === 'Z16660' ) ? 0n : 1n;\n\t\tconst signBit = positive \u003C\u003C 63n;\n\t\n\t\t// exponent\n\t\tlet expvalue = K1.Z20838K2.Z16683K2.Z13518K1;\n\t\tif (typeof expvalue === 'string') {\n\t\t\texpvalue = BigInt( K1.Z20838K2.Z16683K2.Z13518K1 );\n\t\t} else {\n\t\t\texpvalue = BigInt( K1.Z20838K2.Z16683K2.Z13518K1.Z6K1 );\n\t\t}\n\t\tlet expsign = K1.Z20838K2.Z16683K1.Z16659K1;\n\t\n\t\twhile ( typeof expsign === 'object' ) {\n\t\t\tif ( 'Z9K1' in expsign ) {\n\t\t\t\texpsign = expsign.Z9K1;\n\t\t\t} else if ( 'Z16659K1' in expsign ) {\n\t\t\t\texpsign = expsign.Z16659K1;\n\t\t\t} else {\n\t\t\t\texpsign = '';\n\t\t\t}\n\t\t}\n\t\tif ( expsign === 'Z16662' ) { \n\t\t\texpsign = -1n;\n\t\t} else {\n\t\t\texpsign = 1n;\n\t\t}\n\t\tconst exponent = expsign * expvalue;\n\t\tif ( ( exponent \u003E 1023n ) || ( exponent \u003C -1023n ) ) {\n\t\t\treturn Number.NaN;\n\t\t}\n\n\t\t// mantissa\n\t\tlet mantvalue = K1.Z20838K3.Z13518K1;\n\t\tif (typeof mantvalue === 'string') {\n\t\t\tmantvalue = BigInt( mantvalue );\n\t\t} else {\n\t\t\tmantvalue = BigInt( mantvalue.Z6K1 );\n\t\t}\n\t\n \t// Handle subnormals separately (exponent = -1023)\n\t\tlet exponentBits, mantissaBits;\n\t\tif (exponent === -1023n) {\n\t\t\t// subnormal: exponent bits are all 0, raw mantissa used directly\n\t\t\texponentBits = 0n;\n\t\t\tmantissaBits = mantvalue;\n\t\t} else {\n\t\t\t// normalised: exponent bias +1023\n\t\t\texponentBits = ((exponent + 1023n) \u0026 0x7FFn) \u003C\u003C 52n;\n\t\t\tconst MANTISSA_MASK = (1n \u003C\u003C 52n) - 1n;\n \t\tmantissaBits = mantvalue \u0026 MANTISSA_MASK;\n\t\t}\n \n \tconst floatBits = signBit | exponentBits | mantissaBits;\n\n\t // Convert to a JavaScript Number\n \tconst buffer = new ArrayBuffer(8);\n \tconst view = new DataView(buffer);\n \tview.setBigUint64(0, floatBits, false); // Big-endian\n \treturn view.getFloat64(0, false);\t\n\t}\n\t\n\treturn {\n\t\treal: ToFloat( Z33199K1.Z33198K1 ),\n\t\timaginary: ToFloat( Z33199K1.Z33198K2 )\n\t};\n}"
},
"Z46K4": "Object"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "JavaScript converter from complex128 (to Object)"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Returns an object { real: r, imaginary: i }"
}
]
}
}
d7q3fvy4blfcx8ic6i56zwzba0mu3k2
Z33200
0
79823
263758
263629
2026-04-07T14:23:04Z
Feeglgeef
8776
263758
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33200"
},
"Z2K2": {
"Z1K1": "Z64",
"Z64K1": "Z33200",
"Z64K2": "Z33198",
"Z64K3": {
"Z1K1": "Z16",
"Z16K1": "Z600",
"Z16K2": "function Z33200( Z33200K1 ) {\n\tfunction complexvalue( real, imaginary ) {\n\t\treturn {\n\t\t\t\"Z1K1\": {\n\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\"Z9K1\": \"Z33198\"\n\t\t\t},\n\t\t\t\"Z33198K1\": real,\n\t\t\t\"Z33198K2\": imaginary\n\t\t};\n\t}\n\n\tfunction floatvalue( positive, exponent, mantisse, special ) {\n\t\treturn {\n\t\t\t\"Z1K1\": {\n\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\"Z9K1\": \"Z20838\"\n\t\t\t},\n\t\t\t\"Z20838K1\": {\n\t\t\t\t\"Z1K1\": {\n\t\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\t\"Z9K1\": \"Z16659\"\n\t\t\t\t},\n\t\t\t\t\"Z16659K1\": {\n\t\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\t\"Z9K1\": positive ? \"Z16660\" : \"Z16662\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"Z20838K2\": {\n\t\t\t\t\"Z1K1\": {\n\t\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\t\"Z9K1\": \"Z16683\"\n\t\t\t\t},\n\t\t\t\t\"Z16683K1\": {\n\t\t\t\t\t\"Z1K1\": {\n\t\t\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\t\t\"Z9K1\": \"Z16659\"\n\t\t\t\t\t},\n\t\t\t\t\t\"Z16659K1\": {\n\t\t\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\t\t\"Z9K1\": ( exponent \u003C 0 ) ? \"Z16662\" : ( exponent === 0 ) ? \"Z16661\" : \"Z16660\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"Z16683K2\": {\n\t\t\t\t\t\"Z1K1\": {\n\t\t\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\t\t\"Z9K1\": \"Z13518\"\n\t\t\t\t\t},\n\t\t\t\t\t\"Z13518K1\": {\n\t\t\t\t\t\t\"Z1K1\": \"Z6\",\n\t\t\t\t\t\t\"Z6K1\": Math.abs( exponent ).toString()\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"Z20838K3\": {\n\t\t\t\t\"Z1K1\": {\n\t\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\t\"Z9K1\": \"Z13518\"\n\t\t\t\t},\n\t\t\t\t\"Z13518K1\": {\n\t\t\t\t\t\"Z1K1\": \"Z6\",\n\t\t\t\t\t\"Z6K1\": mantisse.toString()\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"Z20838K4\": {\n\t\t\t\t\"Z1K1\": {\n\t\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\t\"Z9K1\": \"Z20825\"\n\t\t\t\t},\n\t\t\t\t\"Z20825K1\": {\n\t\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\t\"Z9K1\": special\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\t}\n\t\n\tfunction fromfloat( K1 ) {\n\t\tif ( Number.isNaN( K1 ) ) {\n\t\t\treturn floatvalue( true, 1024, (2n**52n)-1n, \"Z20834\" );\n\t\t}\n\t\tif ( K1 === Number.POSITIVE_INFINITY ) {\n\t\t\treturn floatvalue( true, 1024, 0n, \"Z20832\" );\n\t\t}\n\t\tif ( K1 === Number.NEGATIVE_INFINITY ) {\n\t\t\treturn floatvalue( false, 1024, 0n, \"Z20833\" );\n\t\t}\n\t\tif ( Object.is( K1, -0)) {\n\t\t\treturn floatvalue( false, -1023, 0n, \"Z20831\" );\t\n\t\t}\n\t\tif ( K1 === 0 ) {\n\t\t\treturn floatvalue( true, -1023, 0n, \"Z20829\" );\t\n\t\t}\n\t\tconst positive = K1 \u003E= 0;\n\t\tconst absval = positive ? K1 : -K1;\n\t\n\t\t// Convert to a JavaScript Number\n \tconst buffer = new ArrayBuffer(8);\n \tconst view = new DataView(buffer);\n \tview.setFloat64(0, absval, false);\n \tconst i = view.getBigUint64(0, false);\n\n\t\tconst rawExp = (i \u003E\u003E 52n) \u0026 0x7FFn;\n\t\tconst mantisse = i % (2n ** 52n);\n\n\t\tlet exponent;\n\n\t\tif (rawExp === 0n) {\n\t\t\t// subnormal: exponent fixed at -1023\n\t\t\texponent = -1023;\n\t\t} else {\n\t\t\texponent = Number(rawExp - 1023n);\n\t\t}\n\n\t\treturn floatvalue(positive, exponent, mantisse, \"Z20837\");\n\t}\n\n\treturn complexvalue(\n\t\tfromfloat( Z33200K1.real ),\n\t\tfromfloat( Z33200K1.imaginary )\n\t);\n}"
},
"Z64K4": "Object"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "JavaScript converter to complex128"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Based on an object { real: r, imaginary: i }"
}
]
}
}
2j0mgncm3iavi2959ux3l3adsx0hr8a
Z33201
0
79824
263642
263631
2026-04-07T12:04:58Z
DVrandecic (WMF)
7
Added Z33206 and Z33207 to the approved list of test cases
263642
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33201"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33201K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "addend"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33201K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "addend"
}
]
}
}
],
"Z8K2": "Z33198",
"Z8K3": [
"Z20",
"Z33206",
"Z33207"
],
"Z8K4": [
"Z14"
],
"Z8K5": "Z33201"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "add complex numbers"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
luucm14qe5lum54kdwwdpn61whxj5mz
263644
263642
2026-04-07T12:06:16Z
DVrandecic (WMF)
7
Added Z33208 to the approved list of implementations
263644
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33201"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33201K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "addend"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33201K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "addend"
}
]
}
}
],
"Z8K2": "Z33198",
"Z8K3": [
"Z20",
"Z33206",
"Z33207"
],
"Z8K4": [
"Z14",
"Z33208"
],
"Z8K5": "Z33201"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "add complex numbers"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
bgielcxndzm0gmh78xosw56w2v3ew5n
263654
263644
2026-04-07T12:30:33Z
Dv103
11127
+it; removed ambiguity between arguments (in composition it can become very confusing)
263654
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33201"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33201K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "first addend"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "primo addendo"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33201K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "second addend"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "secondo addendo"
}
]
}
}
],
"Z8K2": "Z33198",
"Z8K3": [
"Z20",
"Z33206",
"Z33207"
],
"Z8K4": [
"Z14",
"Z33208"
],
"Z8K5": "Z33201"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "add complex numbers"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "somma numeri complessi"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31",
{
"Z1K1": "Z31",
"Z31K1": "Z1787",
"Z31K2": [
"Z6",
"addizione di numeri complessi",
"somma di numeri complessi",
"aggiungi numeri complessi"
]
}
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
hx0ftynoqealqfetorbj5lcan02yy5a
263665
263654
2026-04-07T12:34:29Z
DVrandecic (WMF)
7
Added Z33213 to the approved list of implementations
263665
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33201"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33201K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "first addend"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "primo addendo"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33201K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "second addend"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "secondo addendo"
}
]
}
}
],
"Z8K2": "Z33198",
"Z8K3": [
"Z20",
"Z33206",
"Z33207"
],
"Z8K4": [
"Z14",
"Z33208",
"Z33213"
],
"Z8K5": "Z33201"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "add complex numbers"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "somma numeri complessi"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31",
{
"Z1K1": "Z31",
"Z31K1": "Z1787",
"Z31K2": [
"Z6",
"addizione di numeri complessi",
"somma di numeri complessi",
"aggiungi numeri complessi"
]
}
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
aspccus16tqzgjj4b1ed5vhzdsqp1g8
263705
263665
2026-04-07T13:01:05Z
DVrandecic (WMF)
7
Added Z33233 to the approved list of implementations
263705
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33201"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33201K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "first addend"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "primo addendo"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33201K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "second addend"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "secondo addendo"
}
]
}
}
],
"Z8K2": "Z33198",
"Z8K3": [
"Z20",
"Z33206",
"Z33207"
],
"Z8K4": [
"Z14",
"Z33208",
"Z33213",
"Z33233"
],
"Z8K5": "Z33201"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "add complex numbers"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "somma numeri complessi"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31",
{
"Z1K1": "Z31",
"Z31K1": "Z1787",
"Z31K2": [
"Z6",
"addizione di numeri complessi",
"somma di numeri complessi",
"aggiungi numeri complessi"
]
}
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
nh5vrgkmb1o6vve6e8hwk5owxgdbjyk
263764
263705
2026-04-07T14:25:49Z
Feeglgeef
8776
263764
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33201"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33201K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "first addend"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "primo addendo"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33201K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "second addend"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "secondo addendo"
}
]
}
}
],
"Z8K2": "Z33198",
"Z8K3": [
"Z20",
"Z33206",
"Z33207"
],
"Z8K4": [
"Z14",
"Z33208",
"Z33213",
"Z33233"
],
"Z8K5": "Z33201"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "add complex128s"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "somma numeri complessi"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31",
{
"Z1K1": "Z31",
"Z31K1": "Z1787",
"Z31K2": [
"Z6",
"addizione di numeri complessi",
"somma di numeri complessi",
"aggiungi numeri complessi"
]
}
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
2ismbprzcttqcbx3fhpc87senx12jfs
263808
263764
2026-04-07T21:12:32Z
Dv103
11127
to complex128
263808
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33201"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33201K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "first addend"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "primo addendo"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33201K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "second addend"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "secondo addendo"
}
]
}
}
],
"Z8K2": "Z33198",
"Z8K3": [
"Z20",
"Z33206",
"Z33207"
],
"Z8K4": [
"Z14",
"Z33208",
"Z33213",
"Z33233"
],
"Z8K5": "Z33201"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "add complex128s"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "somma complex128"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31",
{
"Z1K1": "Z31",
"Z31K1": "Z1787",
"Z31K2": [
"Z6",
"addizione di numeri complessi",
"somma di numeri complessi",
"aggiungi numeri complessi",
"somma numeri complessi"
]
}
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
t8rcshcwj75empyvwca4hbrjkvtw2a6
Z33202
0
79825
263652
263638
2026-04-07T12:28:30Z
Dv103
11127
+it
263652
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33202"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33202K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "this"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "primo numero complesso"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33202K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "that"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "secondo numero complesso"
}
]
}
}
],
"Z8K2": "Z40",
"Z8K3": [
"Z20",
"Z33203",
"Z33204"
],
"Z8K4": [
"Z14",
"Z33205"
],
"Z8K5": "Z33202"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "same complex number"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "stesso numero complesso"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31",
{
"Z1K1": "Z31",
"Z31K1": "Z1002",
"Z31K2": [
"Z6",
"equality",
"==",
"="
]
}
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
06ofuusx0xiq1091dkuf1r6c9433dzh
263656
263652
2026-04-07T12:30:48Z
DVrandecic (WMF)
7
Added Z33211 to the approved list of implementations
263656
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33202"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33202K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "this"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "primo numero complesso"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33202K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "that"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "secondo numero complesso"
}
]
}
}
],
"Z8K2": "Z40",
"Z8K3": [
"Z20",
"Z33203",
"Z33204"
],
"Z8K4": [
"Z14",
"Z33205",
"Z33211"
],
"Z8K5": "Z33202"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "same complex number"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "stesso numero complesso"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31",
{
"Z1K1": "Z31",
"Z31K1": "Z1002",
"Z31K2": [
"Z6",
"equality",
"==",
"="
]
}
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
dz4iie34jhfmil5v4uhshcl1fithhad
263660
263656
2026-04-07T12:32:50Z
WikiLambda system
3
Updated the implementation list (see [[Help:Wikifunctions/Implementation_ordering_and_choosing|About implementation selection]])
263660
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33202"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33202K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "this"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "primo numero complesso"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33202K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "that"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "secondo numero complesso"
}
]
}
}
],
"Z8K2": "Z40",
"Z8K3": [
"Z20",
"Z33203",
"Z33204"
],
"Z8K4": [
"Z14",
"Z33211",
"Z33205"
],
"Z8K5": "Z33202"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "same complex number"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "stesso numero complesso"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31",
{
"Z1K1": "Z31",
"Z31K1": "Z1002",
"Z31K2": [
"Z6",
"equality",
"==",
"="
]
}
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
ecl546qq4xfvxc7deouc4tfme0x3zwn
263661
263660
2026-04-07T12:32:52Z
DVrandecic (WMF)
7
Added Z33212 to the approved list of implementations
263661
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33202"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33202K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "this"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "primo numero complesso"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33202K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "that"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "secondo numero complesso"
}
]
}
}
],
"Z8K2": "Z40",
"Z8K3": [
"Z20",
"Z33203",
"Z33204"
],
"Z8K4": [
"Z14",
"Z33205",
"Z33211",
"Z33212"
],
"Z8K5": "Z33202"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "same complex number"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "stesso numero complesso"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31",
{
"Z1K1": "Z31",
"Z31K1": "Z1002",
"Z31K2": [
"Z6",
"equality",
"==",
"="
]
}
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
h5zaaogllywwd91168tjm9urnlr2jg3
263662
263661
2026-04-07T12:33:08Z
WikiLambda system
3
Updated the implementation list (see [[Help:Wikifunctions/Implementation_ordering_and_choosing|About implementation selection]])
263662
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33202"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33202K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "this"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "primo numero complesso"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33202K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "that"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "secondo numero complesso"
}
]
}
}
],
"Z8K2": "Z40",
"Z8K3": [
"Z20",
"Z33203",
"Z33204"
],
"Z8K4": [
"Z14",
"Z33211",
"Z33212",
"Z33205"
],
"Z8K5": "Z33202"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "same complex number"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "stesso numero complesso"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31",
{
"Z1K1": "Z31",
"Z31K1": "Z1002",
"Z31K2": [
"Z6",
"equality",
"==",
"="
]
}
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
4i0gm6yz5u6xa66szevej9zx7k6okxw
263760
263662
2026-04-07T14:23:24Z
Feeglgeef
8776
263760
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33202"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33202K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "this"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "primo numero complesso"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33202K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "that"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "secondo numero complesso"
}
]
}
}
],
"Z8K2": "Z40",
"Z8K3": [
"Z20",
"Z33203",
"Z33204"
],
"Z8K4": [
"Z14",
"Z33211",
"Z33212",
"Z33205"
],
"Z8K5": "Z33202"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "same complex128"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "stesso numero complesso"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31",
{
"Z1K1": "Z31",
"Z31K1": "Z1002",
"Z31K2": [
"Z6",
"equality",
"==",
"="
]
}
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
dqc594icaaxj7e6l1ox8a33mkp75kl6
263807
263760
2026-04-07T21:11:52Z
Dv103
11127
to complex128
263807
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33202"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33202K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "this"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "primo numero complesso"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33202K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "that"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "secondo numero complesso"
}
]
}
}
],
"Z8K2": "Z40",
"Z8K3": [
"Z20",
"Z33203",
"Z33204"
],
"Z8K4": [
"Z14",
"Z33211",
"Z33212",
"Z33205"
],
"Z8K5": "Z33202"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "same complex128"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "stesso complex128"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31",
{
"Z1K1": "Z31",
"Z31K1": "Z1002",
"Z31K2": [
"Z6",
"equality",
"==",
"="
]
},
{
"Z1K1": "Z31",
"Z31K1": "Z1787",
"Z31K2": [
"Z6",
"stesso numero complesso"
]
}
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
i4lahhjzet4fhseod9g2wejfbpdhr0t
Z33206
0
79829
263640
2026-04-07T12:02:56Z
DVrandecic (WMF)
7
263640
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33206"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z33201",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z33201",
"Z33201K1": {
"Z1K1": "Z33198",
"Z33198K1": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16661"
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": "0"
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": "0"
},
"Z20838K4": {
"Z1K1": "Z20825",
"Z20825K1": "Z20837"
}
},
"Z33198K2": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16662"
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": "1023"
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": "0"
},
"Z20838K4": {
"Z1K1": "Z20825",
"Z20825K1": "Z20829"
}
}
},
"Z33201K2": {
"Z1K1": "Z33198",
"Z33198K1": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16661"
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": "0"
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": "0"
},
"Z20838K4": {
"Z1K1": "Z20825",
"Z20825K1": "Z20837"
}
},
"Z33198K2": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16662"
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": "1023"
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": "0"
},
"Z20838K4": {
"Z1K1": "Z20825",
"Z20825K1": "Z20829"
}
}
}
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z33202",
"Z33202K2": {
"Z1K1": "Z33198",
"Z33198K1": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": "1"
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": "0"
},
"Z20838K4": {
"Z1K1": "Z20825",
"Z20825K1": "Z20837"
}
},
"Z33198K2": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16662"
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": "1023"
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": "0"
},
"Z20838K4": {
"Z1K1": "Z20825",
"Z20825K1": "Z20829"
}
}
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "1+0i + 1+0i = 2+0i"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
sv4rnbvybl0t6p6vy8y28gkgnrqhubi
Z33207
0
79830
263641
2026-04-07T12:04:38Z
DVrandecic (WMF)
7
263641
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33207"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z33201",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z33201",
"Z33201K1": {
"Z1K1": "Z33198",
"Z33198K1": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16662"
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": "1"
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": "0"
},
"Z20838K4": {
"Z1K1": "Z20825",
"Z20825K1": "Z20837"
}
},
"Z33198K2": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16662"
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16661"
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": "0"
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": "0"
},
"Z20838K4": {
"Z1K1": "Z20825",
"Z20825K1": "Z20837"
}
}
},
"Z33201K2": {
"Z1K1": "Z33198",
"Z33198K1": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16662"
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": "1"
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": "0"
},
"Z20838K4": {
"Z1K1": "Z20825",
"Z20825K1": "Z20837"
}
},
"Z33198K2": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16662"
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": "1"
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": "0"
},
"Z20838K4": {
"Z1K1": "Z20825",
"Z20825K1": "Z20837"
}
}
}
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z33202",
"Z33202K2": {
"Z1K1": "Z33198",
"Z33198K1": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16661"
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": "0"
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": "0"
},
"Z20838K4": {
"Z1K1": "Z20825",
"Z20825K1": "Z20837"
}
},
"Z33198K2": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16662"
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16662"
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": "1"
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": "0"
},
"Z20838K4": {
"Z1K1": "Z20825",
"Z20825K1": "Z20837"
}
}
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "0.5-1i + 0.5+0.5i"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
d1mvjlu58t6cqx5w1xhrfl5w139nehi
Z33208
0
79831
263643
2026-04-07T12:06:05Z
DVrandecic (WMF)
7
263643
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33208"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33201",
"Z14K3": {
"Z1K1": "Z16",
"Z16K1": "Z600",
"Z16K2": "function Z33201( Z33201K1, Z33201K2 ) {\n\treturn {\n\t\treal: Z33201K1.real + Z33201K2.real,\n\t\timaginary: Z33201K1.imaginary + Z33201K2.imaginary\n\t};\n}"
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "JS add components"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
l46sshp8np9pn199suvvpmqxbnv3qjm
Z33209
0
79832
263645
2026-04-07T12:17:05Z
DVrandecic (WMF)
7
263645
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33209"
},
"Z2K2": {
"Z1K1": "Z46",
"Z46K1": "Z33209",
"Z46K2": "Z33198",
"Z46K3": {
"Z1K1": "Z16",
"Z16K1": "Z610",
"Z16K2": "def Z33209(Z33209K1):\n\tdef ToFloat(K1):\n\t\t# is it a special value?\n\t\tspecial = K1['Z20838K4']['Z20825K1'];\n\t\tif not isinstance(special, str):\n\t\t\tspecial = special['Z9K1'];\n\t\tif special == 'Z20829':\n\t\t\treturn +0.0\n\t\tif special == 'Z20831':\n\t\t\treturn -0.0\n\t\tif special == 'Z20832':\n\t\t\treturn float('inf')\n\t\tif special == 'Z20833':\n\t\t\treturn -float('inf')\n\t\tif special in ['Z20834', 'Z20835', 'Z20836']:\n\t\t\treturn float('nan')\n\n\t\t# is it a positive number?\n\t\tsign = K1['Z20838K1']['Z16659K1']\n\t\tif not isinstance(sign, str):\n\t\t\tsign = sign['Z9K1']\n\t\tpositive = sign == 'Z16660'\n\t\n\t\t# exponent\n\t\texpsign = K1['Z20838K2']['Z16683K1']\n\t\twhile type(expsign) != str:\n\t\t\tthe_ref = expsign.get('Z9K1')\n\t\t\tif the_ref is not None:\n\t\t\t\texpsign = the_ref\n\t\t\telse:\n\t\t\t\tthe_identity = expsign.get('Z16659K1')\n\t\t\t\tif the_identity is not None:\n\t\t\t\t\texpsign = the_identity\n\t\texpsign = {\n\t\t\t'Z16660': 1,\n\t\t\t'Z16661': 0,\n\t\t\t'Z16662': -1\n\t\t}.get(expsign)\n\t\texp_absolute_value = int(\n\t\t\tK1['Z20838K2']['Z16683K2']['Z13518K1']['Z6K1']\n\t\t)\n\t\texp = expsign * exp_absolute_value\n\t\n\t\t# mantissa\n\t\tmantissa = int(\n\t\t\tK1['Z20838K3']['Z13518K1']['Z6K1']\n\t\t)\n\t\n\t\timport math\n\t\t# handle subnormal vs normal\n\t\tif exp == -1023:\n\t\t\tvalue = mantissa * 2**(exp+1-52)\n\t\telse:\n\t\t\tvalue = math.ldexp(1 + mantissa/2**52, exp)\n\t\treturn value if positive else -value\n\t\t\n\treturn complex(Z33209K1['Z33198'], Z33209K1['Z33198'] )"
},
"Z46K4": "complex"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Python converter from Complex number"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Returns a Python complex"
}
]
}
}
sbe26yh30rrbwxcmkvnlr3tyo6qa8pb
263646
263645
2026-04-07T12:17:56Z
DVrandecic (WMF)
7
263646
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33209"
},
"Z2K2": {
"Z1K1": "Z46",
"Z46K1": "Z33209",
"Z46K2": "Z33198",
"Z46K3": {
"Z1K1": "Z16",
"Z16K1": "Z610",
"Z16K2": "def Z33209(Z33209K1):\n\tdef ToFloat(K1):\n\t\t# is it a special value?\n\t\tspecial = K1['Z20838K4']['Z20825K1'];\n\t\tif not isinstance(special, str):\n\t\t\tspecial = special['Z9K1'];\n\t\tif special == 'Z20829':\n\t\t\treturn +0.0\n\t\tif special == 'Z20831':\n\t\t\treturn -0.0\n\t\tif special == 'Z20832':\n\t\t\treturn float('inf')\n\t\tif special == 'Z20833':\n\t\t\treturn -float('inf')\n\t\tif special in ['Z20834', 'Z20835', 'Z20836']:\n\t\t\treturn float('nan')\n\n\t\t# is it a positive number?\n\t\tsign = K1['Z20838K1']['Z16659K1']\n\t\tif not isinstance(sign, str):\n\t\t\tsign = sign['Z9K1']\n\t\tpositive = sign == 'Z16660'\n\t\n\t\t# exponent\n\t\texpsign = K1['Z20838K2']['Z16683K1']\n\t\twhile type(expsign) != str:\n\t\t\tthe_ref = expsign.get('Z9K1')\n\t\t\tif the_ref is not None:\n\t\t\t\texpsign = the_ref\n\t\t\telse:\n\t\t\t\tthe_identity = expsign.get('Z16659K1')\n\t\t\t\tif the_identity is not None:\n\t\t\t\t\texpsign = the_identity\n\t\texpsign = {\n\t\t\t'Z16660': 1,\n\t\t\t'Z16661': 0,\n\t\t\t'Z16662': -1\n\t\t}.get(expsign)\n\t\texp_absolute_value = int(\n\t\t\tK1['Z20838K2']['Z16683K2']['Z13518K1']['Z6K1']\n\t\t)\n\t\texp = expsign * exp_absolute_value\n\t\n\t\t# mantissa\n\t\tmantissa = int(\n\t\t\tK1['Z20838K3']['Z13518K1']['Z6K1']\n\t\t)\n\t\n\t\timport math\n\t\t# handle subnormal vs normal\n\t\tif exp == -1023:\n\t\t\tvalue = mantissa * 2**(exp+1-52)\n\t\telse:\n\t\t\tvalue = math.ldexp(1 + mantissa/2**52, exp)\n\t\treturn value if positive else -value\n\t\t\n\treturn complex( ToFloat( Z33209K1['Z33198'] ), ToFloat( Z33209K1['Z33198'] ) )"
},
"Z46K4": "complex"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Python converter from Complex number"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Returns a Python complex"
}
]
}
}
tb9208zn4tqycinelud3hvo1zdt8hzg
263658
263646
2026-04-07T12:32:19Z
DVrandecic (WMF)
7
263658
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33209"
},
"Z2K2": {
"Z1K1": "Z46",
"Z46K1": "Z33209",
"Z46K2": "Z33198",
"Z46K3": {
"Z1K1": "Z16",
"Z16K1": "Z610",
"Z16K2": "def Z33209(Z33209K1):\n\tdef ToFloat(K1):\n\t\t# is it a special value?\n\t\tspecial = K1['Z20838K4']['Z20825K1'];\n\t\tif not isinstance(special, str):\n\t\t\tspecial = special['Z9K1'];\n\t\tif special == 'Z20829':\n\t\t\treturn +0.0\n\t\tif special == 'Z20831':\n\t\t\treturn -0.0\n\t\tif special == 'Z20832':\n\t\t\treturn float('inf')\n\t\tif special == 'Z20833':\n\t\t\treturn -float('inf')\n\t\tif special in ['Z20834', 'Z20835', 'Z20836']:\n\t\t\treturn float('nan')\n\n\t\t# is it a positive number?\n\t\tsign = K1['Z20838K1']['Z16659K1']\n\t\tif not isinstance(sign, str):\n\t\t\tsign = sign['Z9K1']\n\t\tpositive = sign == 'Z16660'\n\t\n\t\t# exponent\n\t\texpsign = K1['Z20838K2']['Z16683K1']\n\t\twhile type(expsign) != str:\n\t\t\tthe_ref = expsign.get('Z9K1')\n\t\t\tif the_ref is not None:\n\t\t\t\texpsign = the_ref\n\t\t\telse:\n\t\t\t\tthe_identity = expsign.get('Z16659K1')\n\t\t\t\tif the_identity is not None:\n\t\t\t\t\texpsign = the_identity\n\t\texpsign = {\n\t\t\t'Z16660': 1,\n\t\t\t'Z16661': 0,\n\t\t\t'Z16662': -1\n\t\t}.get(expsign)\n\t\texp_absolute_value = int(\n\t\t\tK1['Z20838K2']['Z16683K2']['Z13518K1']['Z6K1']\n\t\t)\n\t\texp = expsign * exp_absolute_value\n\t\n\t\t# mantissa\n\t\tmantissa = int(\n\t\t\tK1['Z20838K3']['Z13518K1']['Z6K1']\n\t\t)\n\t\n\t\timport math\n\t\t# handle subnormal vs normal\n\t\tif exp == -1023:\n\t\t\tvalue = mantissa * 2**(exp+1-52)\n\t\telse:\n\t\t\tvalue = math.ldexp(1 + mantissa/2**52, exp)\n\t\treturn value if positive else -value\n\t\t\n\treturn complex( ToFloat( Z33209K1['Z33198K1'] ), ToFloat( Z33209K1['Z33198K2'] ) )"
},
"Z46K4": "complex"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Python converter from Complex number"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Returns a Python complex"
}
]
}
}
h01k8qejqkrzahwmu2ssf0ydpat0s5p
263757
263658
2026-04-07T14:22:52Z
Feeglgeef
8776
263757
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33209"
},
"Z2K2": {
"Z1K1": "Z46",
"Z46K1": "Z33209",
"Z46K2": "Z33198",
"Z46K3": {
"Z1K1": "Z16",
"Z16K1": "Z610",
"Z16K2": "def Z33209(Z33209K1):\n\tdef ToFloat(K1):\n\t\t# is it a special value?\n\t\tspecial = K1['Z20838K4']['Z20825K1'];\n\t\tif not isinstance(special, str):\n\t\t\tspecial = special['Z9K1'];\n\t\tif special == 'Z20829':\n\t\t\treturn +0.0\n\t\tif special == 'Z20831':\n\t\t\treturn -0.0\n\t\tif special == 'Z20832':\n\t\t\treturn float('inf')\n\t\tif special == 'Z20833':\n\t\t\treturn -float('inf')\n\t\tif special in ['Z20834', 'Z20835', 'Z20836']:\n\t\t\treturn float('nan')\n\n\t\t# is it a positive number?\n\t\tsign = K1['Z20838K1']['Z16659K1']\n\t\tif not isinstance(sign, str):\n\t\t\tsign = sign['Z9K1']\n\t\tpositive = sign == 'Z16660'\n\t\n\t\t# exponent\n\t\texpsign = K1['Z20838K2']['Z16683K1']\n\t\twhile type(expsign) != str:\n\t\t\tthe_ref = expsign.get('Z9K1')\n\t\t\tif the_ref is not None:\n\t\t\t\texpsign = the_ref\n\t\t\telse:\n\t\t\t\tthe_identity = expsign.get('Z16659K1')\n\t\t\t\tif the_identity is not None:\n\t\t\t\t\texpsign = the_identity\n\t\texpsign = {\n\t\t\t'Z16660': 1,\n\t\t\t'Z16661': 0,\n\t\t\t'Z16662': -1\n\t\t}.get(expsign)\n\t\texp_absolute_value = int(\n\t\t\tK1['Z20838K2']['Z16683K2']['Z13518K1']['Z6K1']\n\t\t)\n\t\texp = expsign * exp_absolute_value\n\t\n\t\t# mantissa\n\t\tmantissa = int(\n\t\t\tK1['Z20838K3']['Z13518K1']['Z6K1']\n\t\t)\n\t\n\t\timport math\n\t\t# handle subnormal vs normal\n\t\tif exp == -1023:\n\t\t\tvalue = mantissa * 2**(exp+1-52)\n\t\telse:\n\t\t\tvalue = math.ldexp(1 + mantissa/2**52, exp)\n\t\treturn value if positive else -value\n\t\t\n\treturn complex( ToFloat( Z33209K1['Z33198K1'] ), ToFloat( Z33209K1['Z33198K2'] ) )"
},
"Z46K4": "complex"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Python converter from complex128"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Returns a Python complex"
}
]
}
}
m3lymtt117jkpnygkio4q9zb9w5vmoj
Z33210
0
79833
263650
2026-04-07T12:26:52Z
DVrandecic (WMF)
7
263650
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33210"
},
"Z2K2": {
"Z1K1": "Z64",
"Z64K1": "Z33210",
"Z64K2": "Z33198",
"Z64K3": {
"Z1K1": "Z16",
"Z16K1": "Z610",
"Z16K2": "def Z33210(Z33210K1):\n\tdef complexpackage(real, imaginary):\n\t\treturn {\n\t\t\t\"Z1K1\": {\n\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\"Z9K1\": \"Z33198\"\n\t\t\t},\n\t\t\t\"Z33198K1\": real,\n\t\t\t\"Z33198K2\": imaginary\n\t\t}\n\n\tdef floatpackage(positive, exp, mantissa, special):\n\t\treturn {\n\t\t\t\"Z1K1\": {\n\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\"Z9K1\": \"Z20838\"\n\t\t\t},\n\t\t\t\"Z20838K1\": {\n\t\t\t\t\"Z1K1\": {\n\t\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\t\"Z9K1\": \"Z16659\"\n\t\t\t\t},\n\t\t\t\t\"Z16659K1\": {\n\t\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\t\"Z9K1\": \"Z16660\" if positive else \"Z16662\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"Z20838K2\": {\n\t\t\t\t\"Z1K1\": {\n\t\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\t\"Z9K1\": \"Z16683\"\n\t\t\t\t},\n\t\t\t\t\"Z16683K1\": {\n\t\t\t\t\t\"Z1K1\": {\n\t\t\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\t\t\"Z9K1\": \"Z16659\"\n\t\t\t\t\t},\n\t\t\t\t\t\"Z16659K1\": {\n\t\t\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\t\t\"Z9K1\": \"Z16662\" if exp \u003C 0 else \"Z16661\" if exp == 0 else \"Z16660\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"Z16683K2\": {\n\t\t\t\t\t\"Z1K1\": {\n\t\t\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\t\t\"Z9K1\": \"Z13518\"\n\t\t\t\t\t},\n\t\t\t\t\t\"Z13518K1\": {\n\t\t\t\t\t\t\"Z1K1\": \"Z6\",\n\t\t\t\t\t\t\"Z6K1\": str( abs( exp ) )\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"Z20838K3\": {\n\t\t\t\t\"Z1K1\": {\n\t\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\t\"Z9K1\": \"Z13518\"\n\t\t\t\t},\n\t\t\t\t\"Z13518K1\": {\n\t\t\t\t\t\"Z1K1\": \"Z6\",\n\t\t\t\t\t\"Z6K1\": str( mantissa )\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"Z20838K4\": {\n\t\t\t\t\"Z1K1\": {\n\t\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\t\"Z9K1\": \"Z20825\"\n\t\t\t\t},\n\t\t\t\t\"Z20825K1\": {\n\t\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\t\"Z9K1\": special\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\tdef ToFloat(K1):\n\t\timport math\n\t\t# special values\n\t\tif math.isnan( K1 ):\n\t\t\treturn floatpackage( True, 1024, 2**52-1, \"Z20834\" )\n\t\tif math.isinf( K1 ):\n\t\t\tif K1 \u003E 0:\n\t\t\t\treturn floatpackage( True, 1024, 0, \"Z20832\" )\n\t\t\telse:\n\t\t\t\treturn floatpackage( False, 1024, 0, \"Z20833\" )\n\t\tif K1 == 0:\n\t\t\tif math.copysign(1, K1) \u003C 0:\n\t\t\t\treturn floatpackage( False, -1023, 0, \"Z20831\" )\n\t\t\telse:\n\t\t\t\treturn floatpackage( True, -1023, 0, \"Z20829\" )\n\t\t\t\n\t\tpositive = K1 \u003E= 0\n\t\tmantissa, exp = math.frexp( math.fabs( K1 ) )\n\t\tmantissa = (mantissa - 0.5) * 2**53\n\t\texp = exp - 1\n\t\n\t\treturn floatpackage( positive, int( exp ), int( mantissa ), \"Z20837\" )\n\t\t\n\treturn complexpackage( floatpackage( Z33210K1.real ), floatpackage( Z33210K1.imag ) )"
},
"Z64K4": "complex"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Python converter to Complex number"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "takes a Python complex"
}
]
}
}
tex4ntuwweq2ih7at6t3d7nxd8ybzxo
263663
263650
2026-04-07T12:34:05Z
DVrandecic (WMF)
7
263663
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33210"
},
"Z2K2": {
"Z1K1": "Z64",
"Z64K1": "Z33210",
"Z64K2": "Z33198",
"Z64K3": {
"Z1K1": "Z16",
"Z16K1": "Z610",
"Z16K2": "def Z33210(Z33210K1):\n\tdef complexpackage(real, imaginary):\n\t\treturn {\n\t\t\t\"Z1K1\": {\n\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\"Z9K1\": \"Z33198\"\n\t\t\t},\n\t\t\t\"Z33198K1\": real,\n\t\t\t\"Z33198K2\": imaginary\n\t\t}\n\n\tdef floatpackage(positive, exp, mantissa, special):\n\t\treturn {\n\t\t\t\"Z1K1\": {\n\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\"Z9K1\": \"Z20838\"\n\t\t\t},\n\t\t\t\"Z20838K1\": {\n\t\t\t\t\"Z1K1\": {\n\t\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\t\"Z9K1\": \"Z16659\"\n\t\t\t\t},\n\t\t\t\t\"Z16659K1\": {\n\t\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\t\"Z9K1\": \"Z16660\" if positive else \"Z16662\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"Z20838K2\": {\n\t\t\t\t\"Z1K1\": {\n\t\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\t\"Z9K1\": \"Z16683\"\n\t\t\t\t},\n\t\t\t\t\"Z16683K1\": {\n\t\t\t\t\t\"Z1K1\": {\n\t\t\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\t\t\"Z9K1\": \"Z16659\"\n\t\t\t\t\t},\n\t\t\t\t\t\"Z16659K1\": {\n\t\t\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\t\t\"Z9K1\": \"Z16662\" if exp \u003C 0 else \"Z16661\" if exp == 0 else \"Z16660\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"Z16683K2\": {\n\t\t\t\t\t\"Z1K1\": {\n\t\t\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\t\t\"Z9K1\": \"Z13518\"\n\t\t\t\t\t},\n\t\t\t\t\t\"Z13518K1\": {\n\t\t\t\t\t\t\"Z1K1\": \"Z6\",\n\t\t\t\t\t\t\"Z6K1\": str( abs( exp ) )\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"Z20838K3\": {\n\t\t\t\t\"Z1K1\": {\n\t\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\t\"Z9K1\": \"Z13518\"\n\t\t\t\t},\n\t\t\t\t\"Z13518K1\": {\n\t\t\t\t\t\"Z1K1\": \"Z6\",\n\t\t\t\t\t\"Z6K1\": str( mantissa )\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"Z20838K4\": {\n\t\t\t\t\"Z1K1\": {\n\t\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\t\"Z9K1\": \"Z20825\"\n\t\t\t\t},\n\t\t\t\t\"Z20825K1\": {\n\t\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\t\"Z9K1\": special\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\tdef ToFloat(K1):\n\t\timport math\n\t\t# special values\n\t\tif math.isnan( K1 ):\n\t\t\treturn floatpackage( True, 1024, 2**52-1, \"Z20834\" )\n\t\tif math.isinf( K1 ):\n\t\t\tif K1 \u003E 0:\n\t\t\t\treturn floatpackage( True, 1024, 0, \"Z20832\" )\n\t\t\telse:\n\t\t\t\treturn floatpackage( False, 1024, 0, \"Z20833\" )\n\t\tif K1 == 0:\n\t\t\tif math.copysign(1, K1) \u003C 0:\n\t\t\t\treturn floatpackage( False, -1023, 0, \"Z20831\" )\n\t\t\telse:\n\t\t\t\treturn floatpackage( True, -1023, 0, \"Z20829\" )\n\t\t\t\n\t\tpositive = K1 \u003E= 0\n\t\tmantissa, exp = math.frexp( math.fabs( K1 ) )\n\t\tmantissa = (mantissa - 0.5) * 2**53\n\t\texp = exp - 1\n\t\n\t\treturn floatpackage( positive, int( exp ), int( mantissa ), \"Z20837\" )\n\t\t\n\treturn complexpackage( ToFloat( Z33210K1.real ), ToFloat( Z33210K1.imag ) )"
},
"Z64K4": "complex"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Python converter to Complex number"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "takes a Python complex"
}
]
}
}
nu4as6ood9lg9rzrwg0wo9j261ekvkn
263759
263663
2026-04-07T14:23:15Z
Feeglgeef
8776
263759
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33210"
},
"Z2K2": {
"Z1K1": "Z64",
"Z64K1": "Z33210",
"Z64K2": "Z33198",
"Z64K3": {
"Z1K1": "Z16",
"Z16K1": "Z610",
"Z16K2": "def Z33210(Z33210K1):\n\tdef complexpackage(real, imaginary):\n\t\treturn {\n\t\t\t\"Z1K1\": {\n\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\"Z9K1\": \"Z33198\"\n\t\t\t},\n\t\t\t\"Z33198K1\": real,\n\t\t\t\"Z33198K2\": imaginary\n\t\t}\n\n\tdef floatpackage(positive, exp, mantissa, special):\n\t\treturn {\n\t\t\t\"Z1K1\": {\n\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\"Z9K1\": \"Z20838\"\n\t\t\t},\n\t\t\t\"Z20838K1\": {\n\t\t\t\t\"Z1K1\": {\n\t\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\t\"Z9K1\": \"Z16659\"\n\t\t\t\t},\n\t\t\t\t\"Z16659K1\": {\n\t\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\t\"Z9K1\": \"Z16660\" if positive else \"Z16662\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"Z20838K2\": {\n\t\t\t\t\"Z1K1\": {\n\t\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\t\"Z9K1\": \"Z16683\"\n\t\t\t\t},\n\t\t\t\t\"Z16683K1\": {\n\t\t\t\t\t\"Z1K1\": {\n\t\t\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\t\t\"Z9K1\": \"Z16659\"\n\t\t\t\t\t},\n\t\t\t\t\t\"Z16659K1\": {\n\t\t\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\t\t\"Z9K1\": \"Z16662\" if exp \u003C 0 else \"Z16661\" if exp == 0 else \"Z16660\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"Z16683K2\": {\n\t\t\t\t\t\"Z1K1\": {\n\t\t\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\t\t\"Z9K1\": \"Z13518\"\n\t\t\t\t\t},\n\t\t\t\t\t\"Z13518K1\": {\n\t\t\t\t\t\t\"Z1K1\": \"Z6\",\n\t\t\t\t\t\t\"Z6K1\": str( abs( exp ) )\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"Z20838K3\": {\n\t\t\t\t\"Z1K1\": {\n\t\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\t\"Z9K1\": \"Z13518\"\n\t\t\t\t},\n\t\t\t\t\"Z13518K1\": {\n\t\t\t\t\t\"Z1K1\": \"Z6\",\n\t\t\t\t\t\"Z6K1\": str( mantissa )\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"Z20838K4\": {\n\t\t\t\t\"Z1K1\": {\n\t\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\t\"Z9K1\": \"Z20825\"\n\t\t\t\t},\n\t\t\t\t\"Z20825K1\": {\n\t\t\t\t\t\"Z1K1\": \"Z9\",\n\t\t\t\t\t\"Z9K1\": special\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\tdef ToFloat(K1):\n\t\timport math\n\t\t# special values\n\t\tif math.isnan( K1 ):\n\t\t\treturn floatpackage( True, 1024, 2**52-1, \"Z20834\" )\n\t\tif math.isinf( K1 ):\n\t\t\tif K1 \u003E 0:\n\t\t\t\treturn floatpackage( True, 1024, 0, \"Z20832\" )\n\t\t\telse:\n\t\t\t\treturn floatpackage( False, 1024, 0, \"Z20833\" )\n\t\tif K1 == 0:\n\t\t\tif math.copysign(1, K1) \u003C 0:\n\t\t\t\treturn floatpackage( False, -1023, 0, \"Z20831\" )\n\t\t\telse:\n\t\t\t\treturn floatpackage( True, -1023, 0, \"Z20829\" )\n\t\t\t\n\t\tpositive = K1 \u003E= 0\n\t\tmantissa, exp = math.frexp( math.fabs( K1 ) )\n\t\tmantissa = (mantissa - 0.5) * 2**53\n\t\texp = exp - 1\n\t\n\t\treturn floatpackage( positive, int( exp ), int( mantissa ), \"Z20837\" )\n\t\t\n\treturn complexpackage( ToFloat( Z33210K1.real ), ToFloat( Z33210K1.imag ) )"
},
"Z64K4": "complex"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Python converter to complex128"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "takes a Python complex"
}
]
}
}
2ctxon4yr8aw5tnal66ez5djigeqj0b
Z33211
0
79834
263653
2026-04-07T12:30:19Z
DVrandecic (WMF)
7
263653
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33211"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33202",
"Z14K3": {
"Z1K1": "Z16",
"Z16K1": "Z600",
"Z16K2": "function Z33202( Z33202K1, Z33202K2 ) {\n\treturn Z33202K1.real == Z33202K2.real \u0026\u0026 Z33202K1.imaginary == Z33202K2.imaginary;\n\n}"
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
my2mzwkjvkolmeyc7uk5z2guatusc3l
263655
263653
2026-04-07T12:30:36Z
DVrandecic (WMF)
7
263655
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33211"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33202",
"Z14K3": {
"Z1K1": "Z16",
"Z16K1": "Z600",
"Z16K2": "function Z33202( Z33202K1, Z33202K2 ) {\n\treturn Z33202K1.real == Z33202K2.real \u0026\u0026 Z33202K1.imaginary == Z33202K2.imaginary;\n\n}"
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "and check both parts"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
sgkn840qdqsahxuv2le5sn2mhgh1h0x
Z33212
0
79835
263657
2026-04-07T12:31:15Z
DVrandecic (WMF)
7
263657
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33212"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33202",
"Z14K3": {
"Z1K1": "Z16",
"Z16K1": "Z610",
"Z16K2": "def Z33202(Z33202K1, Z33202K2):\n\treturn Z33202K1 == Z33202K2"
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
sgd9u1zpdt38xjsmpiasnk3y007ph5l
263659
263657
2026-04-07T12:32:42Z
DVrandecic (WMF)
7
263659
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33212"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33202",
"Z14K3": {
"Z1K1": "Z16",
"Z16K1": "Z610",
"Z16K2": "def Z33202(Z33202K1, Z33202K2):\n\treturn Z33202K1 == Z33202K2"
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Python complex equality"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
0aaofhnyc47jdl3zu3orpdraakbchh1
Z33213
0
79836
263664
2026-04-07T12:34:16Z
DVrandecic (WMF)
7
263664
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33213"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33201",
"Z14K3": {
"Z1K1": "Z16",
"Z16K1": "Z610",
"Z16K2": "def Z33201(Z33201K1, Z33201K2):\n\treturn Z33201K1 + Z33201K2"
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Python complex addition"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
nqd43cnpoka3cau2lrc1x1pv5ucrw37
Z33214
0
79837
263669
2026-04-07T12:45:38Z
DVrandecic (WMF)
7
263669
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33214"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33214K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "complex number"
}
]
}
}
],
"Z8K2": "Z20838",
"Z8K3": [
"Z20"
],
"Z8K4": [
"Z14"
],
"Z8K5": "Z33214"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "real part"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
egcom6vk4z4f3u8qpuu6rg4mlkxsibv
263672
263669
2026-04-07T12:47:31Z
DVrandecic (WMF)
7
Added Z33215 and Z33216 to the approved list of test cases
263672
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33214"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33214K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "complex number"
}
]
}
}
],
"Z8K2": "Z20838",
"Z8K3": [
"Z20",
"Z33215",
"Z33216"
],
"Z8K4": [
"Z14"
],
"Z8K5": "Z33214"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "real part"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
mvsc3s9x60p7vddwt243x8tjz5ccspq
263674
263672
2026-04-07T12:48:27Z
DVrandecic (WMF)
7
Added Z33217 to the approved list of implementations
263674
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33214"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33214K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "complex number"
}
]
}
}
],
"Z8K2": "Z20838",
"Z8K3": [
"Z20",
"Z33215",
"Z33216"
],
"Z8K4": [
"Z14",
"Z33217"
],
"Z8K5": "Z33214"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "real part"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
j1r2l3efiby2i0u150vh51hcjqour5c
263677
263674
2026-04-07T12:49:06Z
DVrandecic (WMF)
7
Added Z33218 to the approved list of implementations
263677
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33214"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33214K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "complex number"
}
]
}
}
],
"Z8K2": "Z20838",
"Z8K3": [
"Z20",
"Z33215",
"Z33216"
],
"Z8K4": [
"Z14",
"Z33217",
"Z33218"
],
"Z8K5": "Z33214"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "real part"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
k5tr7cxauxoytf24e32hsiijpx7nz3i
263680
263677
2026-04-07T12:49:43Z
DVrandecic (WMF)
7
Added Z33220 to the approved list of implementations
263680
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33214"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33214K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "complex number"
}
]
}
}
],
"Z8K2": "Z20838",
"Z8K3": [
"Z20",
"Z33215",
"Z33216"
],
"Z8K4": [
"Z14",
"Z33217",
"Z33218",
"Z33220"
],
"Z8K5": "Z33214"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "real part"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
2rts9r8wnvsuto8awb57y4izw1rciv5
263734
263680
2026-04-07T13:49:24Z
Dv103
11127
+it
263734
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33214"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33214K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "complex number"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "numero complesso"
}
]
}
}
],
"Z8K2": "Z20838",
"Z8K3": [
"Z20",
"Z33215",
"Z33216"
],
"Z8K4": [
"Z14",
"Z33217",
"Z33218",
"Z33220"
],
"Z8K5": "Z33214"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "real part"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "parte reale"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
9x3ff737uhs96dr6glkfhf1d32dgpwf
Z33215
0
79838
263670
2026-04-07T12:46:49Z
DVrandecic (WMF)
7
263670
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33215"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z33214",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z33214",
"Z33214K1": {
"Z1K1": "Z33198",
"Z33198K1": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16661"
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": "0"
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": "0"
},
"Z20838K4": {
"Z1K1": "Z20825",
"Z20825K1": "Z20837"
}
},
"Z33198K2": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16662"
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": "1023"
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": "0"
},
"Z20838K4": {
"Z1K1": "Z20825",
"Z20825K1": "Z20829"
}
}
}
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z20850",
"Z20850K2": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16661"
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": "0"
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": "0"
},
"Z20838K4": {
"Z1K1": "Z20825",
"Z20825K1": "Z20837"
}
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "real of 1+0i"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
n3v1t15q5yobztihihwqfdvy196pl8t
Z33216
0
79839
263671
2026-04-07T12:47:21Z
DVrandecic (WMF)
7
263671
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33216"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z33214",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z33214",
"Z33214K1": {
"Z1K1": "Z33198",
"Z33198K1": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16662"
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": "1023"
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": "0"
},
"Z20838K4": {
"Z1K1": "Z20825",
"Z20825K1": "Z20829"
}
},
"Z33198K2": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16661"
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": "0"
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": "0"
},
"Z20838K4": {
"Z1K1": "Z20825",
"Z20825K1": "Z20837"
}
}
}
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z20850",
"Z20850K2": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16662"
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": "1023"
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": "0"
},
"Z20838K4": {
"Z1K1": "Z20825",
"Z20825K1": "Z20829"
}
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "real of 0+1i"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
mg6biv0l303y30c2ieltal2cd3etfyi
Z33217
0
79840
263673
2026-04-07T12:48:18Z
DVrandecic (WMF)
7
263673
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33217"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33214",
"Z14K2": {
"Z1K1": "Z7",
"Z7K1": "Z803",
"Z803K1": {
"Z1K1": "Z39",
"Z39K1": "Z33198K1"
},
"Z803K2": {
"Z1K1": "Z18",
"Z18K1": "Z33214K1"
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "value by key Z33198K1"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
jctg6l9b4egse7xmx2ffleg23pt1g3r
Z33218
0
79841
263675
2026-04-07T12:48:46Z
DVrandecic (WMF)
7
263675
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33218"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33214",
"Z14K3": {
"Z1K1": "Z16",
"Z16K1": "Z600",
"Z16K2": "function Z33214( Z33214K1 ) {\n\treturn Z33214K1.real;\n}"
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
hnpz99ijue6dvxd7a17l0kuhooisudd
263676
263675
2026-04-07T12:48:58Z
DVrandecic (WMF)
7
263676
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33218"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33214",
"Z14K3": {
"Z1K1": "Z16",
"Z16K1": "Z600",
"Z16K2": "function Z33214( Z33214K1 ) {\n\treturn Z33214K1.real;\n}"
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "K1.real"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
31pcunnb4igknqogcalpmmmbbf4y7pl
Z33219
0
79842
263678
2026-04-07T12:49:26Z
Feeglgeef
8776
263678
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33219"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33219K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "number"
}
]
}
}
],
"Z8K2": "Z6",
"Z8K3": [
"Z20"
],
"Z8K4": [
"Z14"
],
"Z8K5": "Z33219"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "display Complex number"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "displays a Complex number in the form a+bi"
}
]
}
}
pwpfw7exwfc7aud5n3cwi1zehofzhn3
263720
263678
2026-04-07T13:33:47Z
Feeglgeef
8776
263720
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33219"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33219K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "number"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z60",
"Z17K2": "Z33219K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "language"
}
]
}
}
],
"Z8K2": "Z6",
"Z8K3": [
"Z20"
],
"Z8K4": [
"Z14"
],
"Z8K5": "Z33219"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "display Complex number"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "displays a Complex number in the form a+bi"
}
]
}
}
s4rujirio2u15ay8t9wn5rsre9d85tw
263722
263720
2026-04-07T13:35:29Z
Feeglgeef
8776
Added Z33234 to the approved list of implementations
263722
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33219"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33219K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "number"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z60",
"Z17K2": "Z33219K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "language"
}
]
}
}
],
"Z8K2": "Z6",
"Z8K3": [
"Z20"
],
"Z8K4": [
"Z14",
"Z33234"
],
"Z8K5": "Z33219"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "display Complex number"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "displays a Complex number in the form a+bi"
}
]
}
}
fwqdyus0ch2g12plpg1bqneghi8ijqf
263724
263722
2026-04-07T13:36:37Z
Feeglgeef
8776
Added Z33235 to the approved list of test cases
263724
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33219"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33219K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "number"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z60",
"Z17K2": "Z33219K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "language"
}
]
}
}
],
"Z8K2": "Z6",
"Z8K3": [
"Z20",
"Z33235"
],
"Z8K4": [
"Z14",
"Z33234"
],
"Z8K5": "Z33219"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "display Complex number"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "displays a Complex number in the form a+bi"
}
]
}
}
kxbb70s3vxqfiuluvp9s0d2afhf18xk
263725
263724
2026-04-07T13:36:54Z
Feeglgeef
8776
263725
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33219"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33219K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "number"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z60",
"Z17K2": "Z33219K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "language"
}
]
}
}
],
"Z8K2": "Z6",
"Z8K3": [
"Z20",
"Z33235"
],
"Z8K4": [
"Z14",
"Z33234"
],
"Z8K5": "Z33219"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "display Complex number"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "displays a Complex number in the form a + bi"
}
]
}
}
s2yk68vnxay41kte08bojpa2uxger2j
263728
263725
2026-04-07T13:38:30Z
Feeglgeef
8776
263728
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33219"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33219K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "number"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z60",
"Z17K2": "Z33219K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "language"
}
]
}
}
],
"Z8K2": "Z6",
"Z8K3": [
"Z20",
"Z33235"
],
"Z8K4": [
"Z14",
"Z33234"
],
"Z8K5": "Z33219"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "display Complex number"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "displays a Complex number in the form a+bi"
}
]
}
}
kxbb70s3vxqfiuluvp9s0d2afhf18xk
263762
263728
2026-04-07T14:24:12Z
Feeglgeef
8776
263762
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33219"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33219K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "number"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z60",
"Z17K2": "Z33219K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "language"
}
]
}
}
],
"Z8K2": "Z6",
"Z8K3": [
"Z20",
"Z33235"
],
"Z8K4": [
"Z14",
"Z33234"
],
"Z8K5": "Z33219"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "display complex128"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "displays a Complex number in the form a+bi"
}
]
}
}
e7qbo5or3yxvifmxwk9awjhg7hpv6t9
Z33220
0
79843
263679
2026-04-07T12:49:32Z
DVrandecic (WMF)
7
263679
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33220"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33214",
"Z14K3": {
"Z1K1": "Z16",
"Z16K1": "Z610",
"Z16K2": "def Z33214(Z33214K1):\n\treturn Z33214K1.real"
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "return K1.real"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
44s1wx01cxny94xi6cto1bskghudszo
Z33221
0
79844
263681
2026-04-07T12:50:18Z
DVrandecic (WMF)
7
263681
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33221"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33221K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "complex number"
}
]
}
}
],
"Z8K2": "Z20838",
"Z8K3": [
"Z20"
],
"Z8K4": [
"Z14"
],
"Z8K5": "Z33221"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "imaginary part"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
gmk38uoxho6qnbc4nip0g5daujm80gm
263685
263681
2026-04-07T12:51:48Z
DVrandecic (WMF)
7
Added Z33222 and Z33223 to the approved list of test cases
263685
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33221"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33221K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "complex number"
}
]
}
}
],
"Z8K2": "Z20838",
"Z8K3": [
"Z20",
"Z33222",
"Z33223"
],
"Z8K4": [
"Z14"
],
"Z8K5": "Z33221"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "imaginary part"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
e7plchnaf7db8ot9me3nsyfhmlz2oyz
263687
263685
2026-04-07T12:53:01Z
DVrandecic (WMF)
7
Added Z33224 to the approved list of implementations
263687
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33221"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33221K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "complex number"
}
]
}
}
],
"Z8K2": "Z20838",
"Z8K3": [
"Z20",
"Z33222",
"Z33223"
],
"Z8K4": [
"Z14",
"Z33224"
],
"Z8K5": "Z33221"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "imaginary part"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
2cm7xsstbndj9na6fuz39zmblwcbab6
263691
263687
2026-04-07T12:54:15Z
DVrandecic (WMF)
7
Added Z33225 and Z33226 to the approved list of implementations
263691
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33221"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33221K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "complex number"
}
]
}
}
],
"Z8K2": "Z20838",
"Z8K3": [
"Z20",
"Z33222",
"Z33223"
],
"Z8K4": [
"Z14",
"Z33224",
"Z33225",
"Z33226"
],
"Z8K5": "Z33221"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "imaginary part"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
0qy7inoka9bk82vgch0u9eu76ifa8jp
263736
263691
2026-04-07T13:50:17Z
Dv103
11127
+it
263736
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33221"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z33198",
"Z17K2": "Z33221K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "complex number"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "numero complesso"
}
]
}
}
],
"Z8K2": "Z20838",
"Z8K3": [
"Z20",
"Z33222",
"Z33223"
],
"Z8K4": [
"Z14",
"Z33224",
"Z33225",
"Z33226"
],
"Z8K5": "Z33221"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "imaginary part"
},
{
"Z1K1": "Z11",
"Z11K1": "Z1787",
"Z11K2": "parte immaginaria"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
s9w77f6iuzna0jaoo0ub2lrzt418jdz
Z33222
0
79845
263683
2026-04-07T12:51:11Z
DVrandecic (WMF)
7
263683
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33222"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z33221",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z33221",
"Z33221K1": {
"Z1K1": "Z33198",
"Z33198K1": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16661"
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": "0"
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": "0"
},
"Z20838K4": {
"Z1K1": "Z20825",
"Z20825K1": "Z20837"
}
},
"Z33198K2": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16662"
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": "1023"
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": "0"
},
"Z20838K4": {
"Z1K1": "Z20825",
"Z20825K1": "Z20829"
}
}
}
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z20850",
"Z20850K2": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16662"
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": "1023"
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": "0"
},
"Z20838K4": {
"Z1K1": "Z20825",
"Z20825K1": "Z20829"
}
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "imaginary of 1+0i"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
2p7z291m3hz16e2nljsz8wqam24rk47
Z33223
0
79846
263684
2026-04-07T12:51:33Z
DVrandecic (WMF)
7
263684
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33223"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z33221",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z33221",
"Z33221K1": {
"Z1K1": "Z33198",
"Z33198K1": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16662"
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": "1023"
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": "0"
},
"Z20838K4": {
"Z1K1": "Z20825",
"Z20825K1": "Z20829"
}
},
"Z33198K2": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16661"
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": "0"
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": "0"
},
"Z20838K4": {
"Z1K1": "Z20825",
"Z20825K1": "Z20837"
}
}
}
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z20850",
"Z20850K2": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16661"
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": "0"
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": "0"
},
"Z20838K4": {
"Z1K1": "Z20825",
"Z20825K1": "Z20837"
}
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "imaginary of 0+1i"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
h7a2awmvzepygbkc1ep4tuvhkfji0zu
Z33224
0
79847
263686
2026-04-07T12:52:48Z
DVrandecic (WMF)
7
263686
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33224"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33221",
"Z14K2": {
"Z1K1": "Z7",
"Z7K1": "Z803",
"Z803K1": {
"Z1K1": "Z39",
"Z39K1": "Z33198K2"
},
"Z803K2": {
"Z1K1": "Z18",
"Z18K1": "Z33221K1"
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "value by key Z33198K2"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
b86qbz1zvpvubq9ixflka6yqmsdikx9
Z33225
0
79848
263688
2026-04-07T12:53:25Z
DVrandecic (WMF)
7
263688
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33225"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33221",
"Z14K3": {
"Z1K1": "Z16",
"Z16K1": "Z600",
"Z16K2": "function Z33221( Z33221K1 ) {\n\treturn Z33221K1.imaginary;\n}"
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
0tzhkrne9qp5zgeqi1ai8thvjg7wn5k
263689
263688
2026-04-07T12:53:38Z
DVrandecic (WMF)
7
263689
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33225"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33221",
"Z14K3": {
"Z1K1": "Z16",
"Z16K1": "Z600",
"Z16K2": "function Z33221( Z33221K1 ) {\n\treturn Z33221K1.imaginary;\n}"
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "K1.imaginary"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
o9cxh1qlzrkqony7x4tymbsdovn9y7m
Z33226
0
79849
263690
2026-04-07T12:54:06Z
DVrandecic (WMF)
7
263690
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33226"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33221",
"Z14K3": {
"Z1K1": "Z16",
"Z16K1": "Z610",
"Z16K2": "def Z33221(Z33221K1):\n\treturn Z33221K1.imag"
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Z33221K1.imag"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
iyrfaiya8649ygtg049ig9nvfj2h7by
Z33227
0
79850
263692
2026-04-07T12:55:08Z
DVrandecic (WMF)
7
263692
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33227"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z20838",
"Z17K2": "Z33227K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "real"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z20838",
"Z17K2": "Z33227K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "imaginary"
}
]
}
}
],
"Z8K2": "Z33198",
"Z8K3": [
"Z20"
],
"Z8K4": [
"Z14"
],
"Z8K5": "Z33227"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "complex"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
rn8bhkrkw8fufj5h95cwpwa0oihror7
263695
263692
2026-04-07T12:56:40Z
DVrandecic (WMF)
7
Added Z33228 and Z33229 to the approved list of test cases
263695
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33227"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z20838",
"Z17K2": "Z33227K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "real"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z20838",
"Z17K2": "Z33227K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "imaginary"
}
]
}
}
],
"Z8K2": "Z33198",
"Z8K3": [
"Z20",
"Z33228",
"Z33229"
],
"Z8K4": [
"Z14"
],
"Z8K5": "Z33227"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "complex"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
2mqwndl5a13vtblp1com53exh4rgh11
263698
263695
2026-04-07T12:57:44Z
DVrandecic (WMF)
7
Added Z33230 to the approved list of implementations
263698
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33227"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z20838",
"Z17K2": "Z33227K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "real"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z20838",
"Z17K2": "Z33227K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "imaginary"
}
]
}
}
],
"Z8K2": "Z33198",
"Z8K3": [
"Z20",
"Z33228",
"Z33229"
],
"Z8K4": [
"Z14",
"Z33230"
],
"Z8K5": "Z33227"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "complex"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
i2uazl4jo125f6wdlmd8mhhpxvsqkek
263700
263698
2026-04-07T12:58:17Z
DVrandecic (WMF)
7
Added Z33231 to the approved list of implementations
263700
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33227"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z20838",
"Z17K2": "Z33227K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "real"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z20838",
"Z17K2": "Z33227K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "imaginary"
}
]
}
}
],
"Z8K2": "Z33198",
"Z8K3": [
"Z20",
"Z33228",
"Z33229"
],
"Z8K4": [
"Z14",
"Z33230",
"Z33231"
],
"Z8K5": "Z33227"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "complex"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
ra5wv4qbvue6r6z7l3l63yt7clo7tky
263703
263700
2026-04-07T12:59:00Z
DVrandecic (WMF)
7
Added Z33232 to the approved list of implementations
263703
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33227"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z20838",
"Z17K2": "Z33227K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "real"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z20838",
"Z17K2": "Z33227K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "imaginary"
}
]
}
}
],
"Z8K2": "Z33198",
"Z8K3": [
"Z20",
"Z33228",
"Z33229"
],
"Z8K4": [
"Z14",
"Z33230",
"Z33231",
"Z33232"
],
"Z8K5": "Z33227"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "complex"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
7hcjahe8ojv8yo6g0wj7vo69fzbmn4l
263708
263703
2026-04-07T13:04:00Z
WikiLambda system
3
Updated the implementation list (see [[Help:Wikifunctions/Implementation_ordering_and_choosing|About implementation selection]])
263708
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33227"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z20838",
"Z17K2": "Z33227K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "real"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z20838",
"Z17K2": "Z33227K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "imaginary"
}
]
}
}
],
"Z8K2": "Z33198",
"Z8K3": [
"Z20",
"Z33228",
"Z33229"
],
"Z8K4": [
"Z14",
"Z33232",
"Z33230",
"Z33231"
],
"Z8K5": "Z33227"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "complex"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
6dh00jo8crtvtc9l0nk4dr7hwlnmjnv
263763
263708
2026-04-07T14:24:55Z
Feeglgeef
8776
263763
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33227"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z20838",
"Z17K2": "Z33227K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "real"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z20838",
"Z17K2": "Z33227K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "imaginary"
}
]
}
}
],
"Z8K2": "Z33198",
"Z8K3": [
"Z20",
"Z33228",
"Z33229"
],
"Z8K4": [
"Z14",
"Z33232",
"Z33230",
"Z33231"
],
"Z8K5": "Z33227"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "make complex128"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
69jx9a2d8b3jgs5hoezc9shr8cd83il
Z33228
0
79851
263693
2026-04-07T12:55:41Z
DVrandecic (WMF)
7
263693
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33228"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z33227",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z33227",
"Z33227K1": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16661"
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": "0"
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": "0"
},
"Z20838K4": {
"Z1K1": "Z20825",
"Z20825K1": "Z20837"
}
},
"Z33227K2": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16662"
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": "1023"
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": "0"
},
"Z20838K4": {
"Z1K1": "Z20825",
"Z20825K1": "Z20829"
}
}
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z33202",
"Z33202K2": {
"Z1K1": "Z33198",
"Z33198K1": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16661"
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": "0"
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": "0"
},
"Z20838K4": {
"Z1K1": "Z20825",
"Z20825K1": "Z20837"
}
},
"Z33198K2": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16662"
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": "1023"
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": "0"
},
"Z20838K4": {
"Z1K1": "Z20825",
"Z20825K1": "Z20829"
}
}
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "1+0i"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
eu82xoafxnju1f5hs9k3z17p26yjzur
Z33229
0
79852
263694
2026-04-07T12:56:14Z
DVrandecic (WMF)
7
263694
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33229"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z33227",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z33227",
"Z33227K1": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16662"
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": "1023"
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": "0"
},
"Z20838K4": {
"Z1K1": "Z20825",
"Z20825K1": "Z20829"
}
},
"Z33227K2": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16661"
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": "0"
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": "0"
},
"Z20838K4": {
"Z1K1": "Z20825",
"Z20825K1": "Z20837"
}
}
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z33202",
"Z33202K2": {
"Z1K1": "Z33198",
"Z33198K1": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16662"
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": "1023"
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": "0"
},
"Z20838K4": {
"Z1K1": "Z20825",
"Z20825K1": "Z20829"
}
},
"Z33198K2": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16661"
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": "0"
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": "0"
},
"Z20838K4": {
"Z1K1": "Z20825",
"Z20825K1": "Z20837"
}
}
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "0+1i"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
sgfalk487mr6vnu9ga524l0b4rqxyvx
Z33230
0
79853
263696
2026-04-07T12:57:16Z
DVrandecic (WMF)
7
263696
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33230"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33227",
"Z14K3": {
"Z1K1": "Z16",
"Z16K1": "Z600",
"Z16K2": "function Z33227( Z33227K1, Z33227K2 ) {\n\treturn { real: Z33227K1, imaginary: Z33227K2 };\n}"
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
ta7w01r6gbgck4v63dkj16sr7i5pl7o
263697
263696
2026-04-07T12:57:35Z
DVrandecic (WMF)
7
263697
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33230"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33227",
"Z14K3": {
"Z1K1": "Z16",
"Z16K1": "Z600",
"Z16K2": "function Z33227( Z33227K1, Z33227K2 ) {\n\treturn { real: Z33227K1, imaginary: Z33227K2 };\n}"
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "construct js object"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
75dieqvuxyum0folk8z8u2gr3pv7pvy
Z33231
0
79854
263699
2026-04-07T12:58:07Z
DVrandecic (WMF)
7
263699
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33231"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33227",
"Z14K3": {
"Z1K1": "Z16",
"Z16K1": "Z610",
"Z16K2": "def Z33227(Z33227K1, Z33227K2):\n\treturn complex(Z33227K1, Z33227K2)"
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "complex(K1, K2)"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
dg6trfxtpktogjl5gqk3lcizz23l0z9
Z33232
0
79855
263702
2026-04-07T12:58:52Z
DVrandecic (WMF)
7
263702
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33232"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33227",
"Z14K2": {
"Z1K1": "Z7",
"Z7K1": "Z801",
"Z801K1": {
"Z1K1": "Z33198",
"Z33198K1": {
"Z1K1": "Z18",
"Z18K1": "Z33227K1"
},
"Z33198K2": {
"Z1K1": "Z18",
"Z18K1": "Z33227K2"
}
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "echo complex"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
9cyomrmxu64xovvvw968c8xmw8tnor5
Z33233
0
79856
263704
2026-04-07T13:00:51Z
DVrandecic (WMF)
7
263704
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33233"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33201",
"Z14K2": {
"Z1K1": "Z7",
"Z7K1": "Z33227",
"Z33227K1": {
"Z1K1": "Z7",
"Z7K1": "Z20849",
"Z20849K1": {
"Z1K1": "Z7",
"Z7K1": "Z33214",
"Z33214K1": {
"Z1K1": "Z18",
"Z18K1": "Z33201K1"
}
},
"Z20849K2": {
"Z1K1": "Z7",
"Z7K1": "Z33214",
"Z33214K1": {
"Z1K1": "Z18",
"Z18K1": "Z33201K2"
}
}
},
"Z33227K2": {
"Z1K1": "Z7",
"Z7K1": "Z20849",
"Z20849K1": {
"Z1K1": "Z7",
"Z7K1": "Z33221",
"Z33221K1": {
"Z1K1": "Z18",
"Z18K1": "Z33201K1"
}
},
"Z20849K2": {
"Z1K1": "Z7",
"Z7K1": "Z33221",
"Z33221K1": {
"Z1K1": "Z18",
"Z18K1": "Z33201K2"
}
}
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "add real and add imaginary"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
334pwk3wrdvgyvunki3sin06lod64ew
Wikifunctions:Type proposals/Topic-comment
4
79857
263706
2026-04-07T13:03:01Z
Dv103
11127
Created page with "== Summary == Encodes the grammatical concept of {{Q|Q933845}}, that in some languages is an important grammaticalized feature. == Uses == * For NLG, is an important input. == Elements of the enumeration == # {{Q|Q200801}} # {{Q|Q1435289}} == Alternatives == ''In order to capture the idea presented in the summary, what alternatives could have made sense too?'' … == Comments == ''For general comments, please reply to the proposer.'' * {{s}} as proposer. ~~~~"
263706
wikitext
text/x-wiki
== Summary ==
Encodes the grammatical concept of {{Q|Q933845}}, that in some languages is an important grammaticalized feature.
== Uses ==
* For NLG, is an important input.
== Elements of the enumeration ==
# {{Q|Q200801}}
# {{Q|Q1435289}}
== Alternatives ==
''In order to capture the idea presented in the summary, what alternatives could have made sense too?''
…
== Comments ==
''For general comments, please reply to the proposer.''
* {{s}} as proposer. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 13:03, 7 April 2026 (UTC)
o9318si9243hzo9qoi4jvjjl3cdnhmf
263753
263706
2026-04-07T14:13:30Z
JJPMaster
6409
/* Comments */ s
263753
wikitext
text/x-wiki
== Summary ==
Encodes the grammatical concept of {{Q|Q933845}}, that in some languages is an important grammaticalized feature.
== Uses ==
* For NLG, is an important input.
== Elements of the enumeration ==
# {{Q|Q200801}}
# {{Q|Q1435289}}
== Alternatives ==
''In order to capture the idea presented in the summary, what alternatives could have made sense too?''
…
== Comments ==
''For general comments, please reply to the proposer.''
* {{s}} as proposer. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 13:03, 7 April 2026 (UTC)
* {{s}} to expand Abstract Wikipedia's ability to account for signed languages. [[User:JJPMaster|JJP]]<sub>[[User talk:JJPMaster|Mas]]<sub>[[Special:Contributions/JJPMaster|ter]]</sub></sub> ([[wikt:she|she]]/[[wikt:they|they]]) 14:13, 7 April 2026 (UTC)
efs86cj3pgkgjiequ5m9ari9xo9karl
Z33234
0
79858
263721
2026-04-07T13:35:21Z
Feeglgeef
8776
263721
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33234"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33219",
"Z14K2": {
"Z1K1": "Z7",
"Z7K1": "Z21394",
"Z21394K1": [
"Z6",
{
"Z1K1": "Z7",
"Z7K1": "Z21956",
"Z21956K1": {
"Z1K1": "Z7",
"Z7K1": "Z33214",
"Z33214K1": {
"Z1K1": "Z18",
"Z18K1": "Z33219K1"
}
},
"Z21956K2": {
"Z1K1": "Z18",
"Z18K1": "Z33219K2"
}
},
" + ",
{
"Z1K1": "Z7",
"Z7K1": "Z21956",
"Z21956K1": {
"Z1K1": "Z7",
"Z7K1": "Z33221",
"Z33221K1": {
"Z1K1": "Z18",
"Z18K1": "Z33219K1"
}
},
"Z21956K2": {
"Z1K1": "Z18",
"Z18K1": "Z33219K2"
}
},
"i"
]
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
g5315fbg8e4xethom38xbj5lghra170
263727
263721
2026-04-07T13:38:19Z
Feeglgeef
8776
263727
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33234"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33219",
"Z14K2": {
"Z1K1": "Z7",
"Z7K1": "Z21394",
"Z21394K1": [
"Z6",
{
"Z1K1": "Z7",
"Z7K1": "Z21956",
"Z21956K1": {
"Z1K1": "Z7",
"Z7K1": "Z33214",
"Z33214K1": {
"Z1K1": "Z18",
"Z18K1": "Z33219K1"
}
},
"Z21956K2": {
"Z1K1": "Z18",
"Z18K1": "Z33219K2"
}
},
"+",
{
"Z1K1": "Z7",
"Z7K1": "Z21956",
"Z21956K1": {
"Z1K1": "Z7",
"Z7K1": "Z33221",
"Z33221K1": {
"Z1K1": "Z18",
"Z18K1": "Z33219K1"
}
},
"Z21956K2": {
"Z1K1": "Z18",
"Z18K1": "Z33219K2"
}
},
"i"
]
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
chv2laug7ihokmnv6zmgav255baiu7i
Z33235
0
79859
263723
2026-04-07T13:36:21Z
Feeglgeef
8776
263723
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33235"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z33219",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z33219",
"Z33219K1": {
"Z1K1": "Z33198",
"Z33198K1": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16662"
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16661"
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": "0"
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": "0"
},
"Z20838K4": {
"Z1K1": "Z20825",
"Z20825K1": "Z20837"
}
},
"Z33198K2": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16661"
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": "0"
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": "0"
},
"Z20838K4": {
"Z1K1": "Z20825",
"Z20825K1": "Z20837"
}
}
},
"Z33219K2": "Z1002"
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z866",
"Z866K2": "-1.0 + 1.0i"
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "-1.0 + 1.0i"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
pb7vn4ah7aj2ckhd3cftulce83h1seb
263726
263723
2026-04-07T13:37:45Z
Feeglgeef
8776
263726
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33235"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z33219",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z33219",
"Z33219K1": {
"Z1K1": "Z33198",
"Z33198K1": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16662"
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16661"
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": "0"
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": "0"
},
"Z20838K4": {
"Z1K1": "Z20825",
"Z20825K1": "Z20837"
}
},
"Z33198K2": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16661"
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": "0"
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": "0"
},
"Z20838K4": {
"Z1K1": "Z20825",
"Z20825K1": "Z20837"
}
}
},
"Z33219K2": "Z1002"
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z866",
"Z866K2": "-1.0+1.0i"
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "-1.0+1.0i"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
6pc83doa8gceugoba8kkn38pzcd8n4i
Z33236
0
79860
263735
2026-04-07T13:50:15Z
Hakimi97
198
263735
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33236"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z30603",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z30603",
"Z30603K1": {
"Z1K1": "Z13518",
"Z13518K1": "1111101"
}
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z866",
"Z866K2": "kesejuta seratus sebelas ribu seratus satu"
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "1,111,101 Malay ordinal"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
c8fdmxaux1wnn2v2hfguws2lko7edcz
Z33237
0
79861
263752
2026-04-07T14:12:59Z
Hakimi97
198
263752
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33237"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z32176",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z32176",
"Z32176K1": {
"Z1K1": "Z6095",
"Z6095K1": "L1764"
},
"Z32176K2": {
"Z1K1": "Z13518",
"Z13518K1": "3"
},
"Z32176K3": "Z1531"
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z14392",
"Z14392K2": {
"Z1K1": "Z11",
"Z11K1": "Z1531",
"Z11K2": "ketiga teratas"
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "ketiga teratas"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
pblfvpgmx1kfx9x9gafjy3yd1ntbkxd
263827
263752
2026-04-08T01:35:11Z
Hakimi97
198
263827
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33237"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z32176",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z32176",
"Z32176K1": {
"Z1K1": "Z6095",
"Z6095K1": "L692787"
},
"Z32176K2": {
"Z1K1": "Z13518",
"Z13518K1": "2"
},
"Z32176K3": "Z1531"
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z14392",
"Z14392K2": {
"Z1K1": "Z11",
"Z11K1": "Z1531",
"Z11K2": "ketiga tercantik"
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "ketiga tercantik"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
3oozv4icjvyk9wyrrgy8l8la509snma
263828
263827
2026-04-08T01:38:10Z
Hakimi97
198
263828
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33237"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z32176",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z32176",
"Z32176K1": {
"Z1K1": "Z6095",
"Z6095K1": "L692787"
},
"Z32176K2": {
"Z1K1": "Z13518",
"Z13518K1": "3"
},
"Z32176K3": "Z1531"
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z14392",
"Z14392K2": {
"Z1K1": "Z11",
"Z11K1": "Z1531",
"Z11K2": "ketiga tercantik"
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "3, cantik =\u003E ketiga tercantik"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
13ryy4rj5d45rf6m2bbocag6e7ckbey
Z33238
0
79862
263766
2026-04-07T14:34:40Z
Asked42
932
263766
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33238"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": {
"Z1K1": "Z7",
"Z7K1": "Z881",
"Z881K1": "Z6"
},
"Z17K2": "Z33238K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "List of strings"
}
]
}
}
],
"Z8K2": "Z11",
"Z8K3": [
"Z20"
],
"Z8K4": [
"Z14"
],
"Z8K5": "Z33238"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Bangla fragment sentence wrapper (string list)"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Helper function to create Bangla fragment sentences using a list of strings, with punctuation marks."
}
]
}
}
ckbk4btrf6pp04u5bh64qn46rjqx0tr
263771
263766
2026-04-07T14:43:28Z
Asked42
932
Added Z33240 to the approved list of test cases
263771
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33238"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": {
"Z1K1": "Z7",
"Z7K1": "Z881",
"Z881K1": "Z6"
},
"Z17K2": "Z33238K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "List of strings"
}
]
}
}
],
"Z8K2": "Z11",
"Z8K3": [
"Z20",
"Z33240"
],
"Z8K4": [
"Z14"
],
"Z8K5": "Z33238"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Bangla fragment sentence wrapper (string list)"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Helper function to create Bangla fragment sentences using a list of strings, with punctuation marks."
}
]
}
}
4pk19qhxjolwfip3igsrej2tta7ufu6
263772
263771
2026-04-07T14:43:31Z
Asked42
932
Added Z33239 to the approved list of implementations
263772
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33238"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": {
"Z1K1": "Z7",
"Z7K1": "Z881",
"Z881K1": "Z6"
},
"Z17K2": "Z33238K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "List of strings"
}
]
}
}
],
"Z8K2": "Z11",
"Z8K3": [
"Z20",
"Z33240"
],
"Z8K4": [
"Z14",
"Z33239"
],
"Z8K5": "Z33238"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Bangla fragment sentence wrapper (string list)"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Helper function to create Bangla fragment sentences using a list of strings, with punctuation marks."
}
]
}
}
d1fju7r2biiqqqe6o0pa3txx2buo4vq
Z33239
0
79863
263767
2026-04-07T14:38:50Z
Asked42
932
263767
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33239"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33238",
"Z14K2": {
"Z1K1": "Z7",
"Z7K1": "Z26107",
"Z26107K1": "Z1011",
"Z26107K2": {
"Z1K1": "Z7",
"Z7K1": "Z21394",
"Z21394K1": [
"Z6",
{
"Z1K1": "Z7",
"Z7K1": "Z22504",
"Z22504K1": {
"Z1K1": "Z18",
"Z18K1": "Z33238K1"
}
},
"।"
]
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Bangla fragment wrapper (string list), comp"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
2d36nkw51b05138yiwdgu5vsbzckgfl
Z33240
0
79864
263768
2026-04-07T14:40:50Z
Asked42
932
263768
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33240"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z33238",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z33238",
"Z33238K1": [
"Z6",
"হে",
"পৃথিবী",
"তোমাকে",
"আজ",
"খুব",
"অপরূপ",
"লাগছে"
]
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z14392",
"Z14392K2": {
"Z1K1": "Z11",
"Z11K1": "Z1011",
"Z11K2": "হে পৃথিবী তোমাকে আজ খুব অপরূপ লাগছে"
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
0k09fpa7izyc1bxobg3qk7nqfmfmwiz
263769
263768
2026-04-07T14:41:41Z
Asked42
932
263769
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33240"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z33238",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z33238",
"Z33238K1": [
"Z6",
"হে",
"পৃথিবী",
"তোমাকে",
"আজ",
"খুব",
"অপরূপ",
"লাগছে"
]
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z14392",
"Z14392K2": {
"Z1K1": "Z11",
"Z11K1": "Z1011",
"Z11K2": "হে পৃথিবী তোমাকে আজ খুব অপরূপ লাগছে।"
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
0z90g5xu2r0h14inkhibdr03xtnahy8
263770
263769
2026-04-07T14:43:11Z
Asked42
932
263770
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33240"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z33238",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z33238",
"Z33238K1": [
"Z6",
"হে",
"পৃথিবী",
"তোমাকে",
"আজ",
"খুব",
"অপরূপ",
"লাগছে"
]
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z14392",
"Z14392K2": {
"Z1K1": "Z11",
"Z11K1": "Z1011",
"Z11K2": "হে পৃথিবী তোমাকে আজ খুব অপরূপ লাগছে।"
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "\"হে পৃথিবী তোমাকে আজ খুব অপরূপ লাগছে।\" [bn]"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
hctsa7067fmzpl56v4mflqmofe8uxfx
Wikifunctions:Avoid Artificial Intelligence
4
79865
263787
2026-04-07T15:32:28Z
Feeglgeef
8776
draft
263787
wikitext
text/x-wiki
{{draft}} {{essay}}
'''Artificial Intelligence should be avoided on Wikifunctions''', ''especially in an autonomous form, without tests, or without careful human review''. Though the capabilities of artificial intelligence to write code, and, with the advent of technologies like Claude Code, OpenClaw, and other autonomous agents, edit without human review, are increasing, ''clankers often fail to understand the project, its policies, and how to write code useful to it.'' If you ''do'' use artificial intelligence, you should:
* Review all of its code.
* Manually write tests.
Failing to ensure the quality of clanker-generated code may result in your edits being reverted, and repeated behavior in a block. Any clankers that edit the wiki themselves (without humans clicking the buttons for them) are violating the [[WF:Bots|bot policy]].
hmz1h490pxyqvnt2pa8nnnfoy7l6mjq
Wikifunctions:CLANKER
4
79866
263788
2026-04-07T15:34:12Z
Feeglgeef
8776
Redirected page to [[Wikifunctions:Avoid Artificial Intelligence]]
263788
wikitext
text/x-wiki
#REDIRECT [[WF:Avoid Artificial Intelligence]]
4lkwpq44nl1gza12htqy7q9oxnenrfz
Wikifunctions:AI
4
79867
263792
2026-04-07T15:55:13Z
Feeglgeef
8776
Redirected page to [[Wikifunctions:Avoid Artificial Intelligence]]
263792
wikitext
text/x-wiki
#REDIRECT [[WF:Avoid Artificial Intelligence]]
4lkwpq44nl1gza12htqy7q9oxnenrfz
Wikifunctions:Editing guidelines
4
79868
263793
2026-04-07T18:14:10Z
Feeglgeef
8776
start
263793
wikitext
text/x-wiki
{{draft}}
This is a list of editing guidelines, that deal with user conduct when making edits to Wikifunctions. These guidelines generally only apply to edits made in the mainspace (starting with a Z). These guidelines are not meant to be a specific codified law but rather a general summary of the opinions of some contributors, but, for the sake of making it easier for volunteers to this project and avoiding a block, it is generally recommended.
== Labels and tests involving natural language ==
* If you speak a language at a native, near-native, or fluent level, you may and are encouraged to add labels to items without a label in your language or add tests to functions that operate on natural languages.
* If you speak a language at a level less than fluent (or do not speak it at all), and add a label or test in that language, you should either indicate that in your edit summary or on your userpage.
aocmndcdmpwv5dcfdvbo9eyapvrljmb
263794
263793
2026-04-07T19:26:48Z
Feeglgeef
8776
263794
wikitext
text/x-wiki
{{draft}}
This is a list of editing guidelines, that deal with user conduct when making edits to Wikifunctions. These guidelines generally only apply to edits made in the mainspace (starting with a Z). These guidelines are not meant to be a specific codified law (unless the word must is used and it is bolded, in which case it reflects policy) but rather a general summary of the opinions of some contributors, but, for the sake of making it easier for volunteers to this project and avoiding a block, it is generally recommended.
== Labels and tests involving natural language ==
* If you speak a language at a native, near-native, or fluent level, you may and are encouraged to add labels to items without a label in your language or add tests to functions that operate on natural languages.
* If you speak a language at a level less than fluent (or do not speak it at all), and add a label or test in that language, '''you should indicate that''', either in your edit summary or on your userpage.
== Large language models ==
* Large language models (LLMs, AI) and other artificial intelligence tools that generate code are '''permitted for use''' in editing code on Wikifunctions. However, you should review the work of the AI, which the tests feature is recommended for. Users are responsible for the quality of AI-generated code, and poor quality code wastes the time of volunteer contributors.
* AI agents '''must''' not edit autonomously (using tools like OpenClaw), per the [[WF:Bots|bot policy]].
cq9xiindm3m5gledksu8oerteahleej
263795
263794
2026-04-07T19:33:20Z
Feeglgeef
8776
/* Large language models */
263795
wikitext
text/x-wiki
{{draft}}
This is a list of editing guidelines, that deal with user conduct when making edits to Wikifunctions. These guidelines generally only apply to edits made in the mainspace (starting with a Z). These guidelines are not meant to be a specific codified law (unless the word must is used and it is bolded, in which case it reflects policy) but rather a general summary of the opinions of some contributors, but, for the sake of making it easier for volunteers to this project and avoiding a block, it is generally recommended.
== Labels and tests involving natural language ==
* If you speak a language at a native, near-native, or fluent level, you may and are encouraged to add labels to items without a label in your language or add tests to functions that operate on natural languages.
* If you speak a language at a level less than fluent (or do not speak it at all), and add a label or test in that language, '''you should indicate that''', either in your edit summary or on your userpage.
== Large language models ==
* Large language models (LLMs/AI) and other artificial intelligence tools that generate code are '''permitted for use''' in editing code on Wikifunctions. However, you should review the work of the AI, which the tests feature is recommended for. Users are responsible for the quality of AI-generated code, and poor quality code wastes the time of volunteer contributors. Users should consider declaring their use of AI in their edit summaries or on their user page.
* AI agents '''must''' not edit autonomously (using tools like OpenClaw), per the [[WF:Bots|bot policy]].
frdqhao5e3j3p0g59z085evkfmnar4h
263805
263795
2026-04-07T21:07:49Z
Dv103
11127
/* Large language models */ I think that even the "not" is as important as "must" :)
263805
wikitext
text/x-wiki
{{draft}}
This is a list of editing guidelines, that deal with user conduct when making edits to Wikifunctions. These guidelines generally only apply to edits made in the mainspace (starting with a Z). These guidelines are not meant to be a specific codified law (unless the word must is used and it is bolded, in which case it reflects policy) but rather a general summary of the opinions of some contributors, but, for the sake of making it easier for volunteers to this project and avoiding a block, it is generally recommended.
== Labels and tests involving natural language ==
* If you speak a language at a native, near-native, or fluent level, you may and are encouraged to add labels to items without a label in your language or add tests to functions that operate on natural languages.
* If you speak a language at a level less than fluent (or do not speak it at all), and add a label or test in that language, '''you should indicate that''', either in your edit summary or on your userpage.
== Large language models ==
* Large language models (LLMs/AI) and other artificial intelligence tools that generate code are '''permitted for use''' in editing code on Wikifunctions. However, you should review the work of the AI, which the tests feature is recommended for. Users are responsible for the quality of AI-generated code, and poor quality code wastes the time of volunteer contributors. Users should consider declaring their use of AI in their edit summaries or on their user page.
* AI agents '''must not''' edit autonomously (using tools like OpenClaw), per the [[WF:Bots|bot policy]].
oabudie31hhwieq5107zdb456bcvyku
User:Ainali
2
79869
263799
2026-04-07T20:08:29Z
Ainali
17
Created page with "I have high hopes for Wikifunctions! {{#babel:sv-N|en-3|mul-0}}"
263799
wikitext
text/x-wiki
I have high hopes for Wikifunctions!
{{#babel:sv-N|en-3|mul-0}}
81bzobeowyq2ptmnemrgbc66hjtqnbj
Translations:Wikifunctions:Type/43/de
1198
79870
263811
2026-04-07T21:21:38Z
Ameisenigel
44
Created page with "leichtgewichtige Aufzählung"
263811
wikitext
text/x-wiki
leichtgewichtige Aufzählung
d8ezfn6veqiwr0movj8k3nswfxmhmlw
Translations:Wikifunctions:Type/44/de
1198
79871
263813
2026-04-07T21:21:46Z
Ameisenigel
44
Created page with "leichtgewichtige Aufzählung"
263813
wikitext
text/x-wiki
leichtgewichtige Aufzählung
d8ezfn6veqiwr0movj8k3nswfxmhmlw
Z33241
0
79872
263832
2026-04-08T02:06:50Z
Hakimi97
198
263832
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33241"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z18867",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z18867",
"Z18867K1": "sejuta tiga puluh lima"
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z13522",
"Z13522K2": {
"Z1K1": "Z13518",
"Z13518K1": "1000035"
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": " Select \"sejuta tiga puluh lima\" -\u003E \"1,000,035\""
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
kc0vzz76jzqvu06hx253781lev2tntg
Z33242
0
79873
263837
2026-04-08T02:24:04Z
99of9
1622
263837
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33242"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z31697",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z31697",
"Z31697K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q55771891"
},
"Z31697K2": "Z1430"
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z877",
"Z877K2": {
"Z1K1": "Z89",
"Z89K1": ""
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Q55771891 doesn't have a German article: empty"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
p74k5fdsb8ukxx53axbi60dkzkzv2vt
Z33243
0
79874
263840
2026-04-08T02:57:25Z
Redmin
52094
+
263840
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33243"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z6091",
"Z17K2": "Z33243K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Lexeme ID"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z60",
"Z17K2": "Z33243K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Language"
}
]
}
}
],
"Z8K2": "Z89",
"Z8K3": [
"Z20"
],
"Z8K4": [
"Z14"
],
"Z8K5": "Z33243"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Bengali noun declension table"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
m8ek0rnuhrvxoeobud20wd4lh7x9h5e
263841
263840
2026-04-08T02:58:12Z
Redmin
52094
263841
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33243"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z6095",
"Z17K2": "Z33243K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Lexeme ID"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z60",
"Z17K2": "Z33243K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Language"
}
]
}
}
],
"Z8K2": "Z89",
"Z8K3": [
"Z20"
],
"Z8K4": [
"Z14"
],
"Z8K5": "Z33243"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Bengali noun declension table"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
dvxnrejgyy4ww1b82x52ru3rf39in8b
263847
263841
2026-04-08T03:35:37Z
Redmin
52094
Added Z33244 to the approved list of implementations
263847
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33243"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z6095",
"Z17K2": "Z33243K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Lexeme ID"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z60",
"Z17K2": "Z33243K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Language"
}
]
}
}
],
"Z8K2": "Z89",
"Z8K3": [
"Z20"
],
"Z8K4": [
"Z14",
"Z33244"
],
"Z8K5": "Z33243"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Bengali noun declension table"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
djcmgf1vnf1cjintp4yr98g0uzi7vvm
Z33244
0
79875
263846
2026-04-08T03:34:47Z
Redmin
52094
+
263846
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33244"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33243",
"Z14K2": {
"Z1K1": "Z7",
"Z7K1": "Z27878",
"Z27878K1": {
"Z1K1": "Z7",
"Z7K1": "Z27868",
"Z27868K1": {
"Z1K1": "Z7",
"Z7K1": "Z21806",
"Z21806K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
},
"Z21806K2": "Z1011"
}
},
"Z27878K2": [
"Z6"
],
"Z27878K3": [
"Z6",
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q131105"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
},
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q146233"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
},
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q146078"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
},
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q145599"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
},
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q202142"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
}
],
"Z27878K4": [
{
"Z1K1": "Z9",
"Z9K1": ""
},
{
"Z1K1": "Z7",
"Z7K1": "Z19241",
"Z19241K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
},
"Z19241K2": [
"Z6091",
{
"Z1K1": "Z6091",
"Z6091K1": "Q131105"
}
]
},
{
"Z1K1": "Z7",
"Z7K1": "Z19241",
"Z19241K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
},
"Z19241K2": [
"Z6091",
{
"Z1K1": "Z6091",
"Z6091K1": "Q146233"
}
]
},
{
"Z1K1": "Z7",
"Z7K1": "Z19241",
"Z19241K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
},
"Z19241K2": [
"Z6091",
{
"Z1K1": "Z6091",
"Z6091K1": "Q146078"
}
]
},
{
"Z1K1": "Z7",
"Z7K1": "Z19241",
"Z19241K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
},
"Z19241K2": [
"Z6091",
{
"Z1K1": "Z6091",
"Z6091K1": "Q145599"
}
]
},
{
"Z1K1": "Z7",
"Z7K1": "Z19241",
"Z19241K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
},
"Z19241K2": [
"Z6091",
{
"Z1K1": "Z6091",
"Z6091K1": "Q202142"
}
]
}
]
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
1u1cu0ucvdyhxpmvfyik9doyeh4drmi
263879
263846
2026-04-08T06:54:36Z
Redmin
52094
-dative case
263879
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33244"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33243",
"Z14K2": {
"Z1K1": "Z7",
"Z7K1": "Z27878",
"Z27878K1": {
"Z1K1": "Z7",
"Z7K1": "Z27868",
"Z27868K1": {
"Z1K1": "Z7",
"Z7K1": "Z21806",
"Z21806K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
},
"Z21806K2": "Z1011"
}
},
"Z27878K2": [
"Z6"
],
"Z27878K3": [
"Z6",
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q131105"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
},
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q146233"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
},
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q146078"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
},
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q202142"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
}
],
"Z27878K4": [
{
"Z1K1": "Z9",
"Z9K1": ""
},
{
"Z1K1": "Z7",
"Z7K1": "Z19241",
"Z19241K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
},
"Z19241K2": [
"Z6091",
{
"Z1K1": "Z6091",
"Z6091K1": "Q131105"
}
]
},
{
"Z1K1": "Z7",
"Z7K1": "Z19241",
"Z19241K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
},
"Z19241K2": [
"Z6091",
{
"Z1K1": "Z6091",
"Z6091K1": "Q146233"
}
]
},
{
"Z1K1": "Z7",
"Z7K1": "Z19241",
"Z19241K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
},
"Z19241K2": [
"Z6091",
{
"Z1K1": "Z6091",
"Z6091K1": "Q146078"
}
]
},
{
"Z1K1": "Z7",
"Z7K1": "Z19241",
"Z19241K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
},
"Z19241K2": [
"Z6091",
{
"Z1K1": "Z6091",
"Z6091K1": "Q202142"
}
]
}
]
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
h7gddk6dzkdd5l9nnbwp8wbbiwx5ycy
263885
263879
2026-04-08T06:59:02Z
Redmin
52094
Use list identity function
263885
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33244"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33243",
"Z14K2": {
"Z1K1": "Z7",
"Z7K1": "Z27878",
"Z27878K1": {
"Z1K1": "Z7",
"Z7K1": "Z27868",
"Z27868K1": {
"Z1K1": "Z7",
"Z7K1": "Z21806",
"Z21806K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
},
"Z21806K2": "Z1011"
}
},
"Z27878K2": [
"Z6"
],
"Z27878K3": [
"Z6",
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q131105"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
},
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q146233"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
},
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q146078"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
},
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q202142"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
}
],
"Z27878K4": {
"Z1K1": "Z7",
"Z7K1": "Z15142",
"Z15142K1": [
"Z6"
]
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
g6io91m8jbu8qkkot7uu39cki1frwmv
263890
263885
2026-04-08T07:08:11Z
Redmin
52094
263890
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33244"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33243",
"Z14K2": {
"Z1K1": "Z7",
"Z7K1": "Z27878",
"Z27878K1": {
"Z1K1": "Z7",
"Z7K1": "Z27868",
"Z27868K1": {
"Z1K1": "Z7",
"Z7K1": "Z21806",
"Z21806K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
},
"Z21806K2": "Z1011"
}
},
"Z27878K2": [
"Z6"
],
"Z27878K3": [
"Z6",
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q131105"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
},
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q146233"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
},
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q146078"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
},
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q202142"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
}
],
"Z27878K4": {
"Z1K1": "Z7",
"Z7K1": "Z15142",
"Z15142K1": [
"Z6",
{
"Z1K1": "Z7",
"Z7K1": "Z19241",
"Z19241K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
},
"Z19241K2": [
"Z6091",
{
"Z1K1": "Z6091",
"Z6091K1": "Q131105"
}
]
},
{
"Z1K1": "Z7",
"Z7K1": "Z19241",
"Z19241K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
},
"Z19241K2": [
"Z6091",
{
"Z1K1": "Z6091",
"Z6091K1": "Q146233"
}
]
},
{
"Z1K1": "Z7",
"Z7K1": "Z19241",
"Z19241K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
},
"Z19241K2": [
"Z6091",
{
"Z1K1": "Z6091",
"Z6091K1": "Q146078"
}
]
},
{
"Z1K1": "Z7",
"Z7K1": "Z19241",
"Z19241K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
},
"Z19241K2": [
"Z6091",
{
"Z1K1": "Z6091",
"Z6091K1": "Q202142"
}
]
}
]
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
iobl1aqg366pxud1bspp9t09evgzglp
263894
263890
2026-04-08T07:20:28Z
Redmin
52094
263894
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33244"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33243",
"Z14K2": {
"Z1K1": "Z7",
"Z7K1": "Z27878",
"Z27878K1": {
"Z1K1": "Z7",
"Z7K1": "Z27868",
"Z27868K1": {
"Z1K1": "Z7",
"Z7K1": "Z21806",
"Z21806K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
},
"Z21806K2": "Z1011"
}
},
"Z27878K2": [
"Z6"
],
"Z27878K3": [
"Z6",
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q131105"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
},
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q146233"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
},
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q146078"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
},
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q202142"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
}
],
"Z27878K4": {
"Z1K1": "Z7",
"Z7K1": "Z15142",
"Z15142K1": [
"Z6",
{
"Z1K1": "Z7",
"Z7K1": "Z19241",
"Z19241K1": {
"Z1K1": "Z7",
"Z7K1": "Z6825",
"Z6825K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
}
},
"Z19241K2": [
"Z6091",
{
"Z1K1": "Z6091",
"Z6091K1": "Q131105"
}
]
},
{
"Z1K1": "Z7",
"Z7K1": "Z19241",
"Z19241K1": {
"Z1K1": "Z7",
"Z7K1": "Z6825",
"Z6825K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
}
},
"Z19241K2": [
"Z6091",
{
"Z1K1": "Z6091",
"Z6091K1": "Q146233"
}
]
},
{
"Z1K1": "Z7",
"Z7K1": "Z19241",
"Z19241K1": {
"Z1K1": "Z7",
"Z7K1": "Z6825",
"Z6825K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
}
},
"Z19241K2": [
"Z6091",
{
"Z1K1": "Z6091",
"Z6091K1": "Q146078"
}
]
},
{
"Z1K1": "Z7",
"Z7K1": "Z19241",
"Z19241K1": {
"Z1K1": "Z7",
"Z7K1": "Z6825",
"Z6825K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
}
},
"Z19241K2": [
"Z6091",
{
"Z1K1": "Z6091",
"Z6091K1": "Q202142"
}
]
}
]
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
5je4atewewxd96vw3o4f2gw082r7e0y
263895
263894
2026-04-08T07:23:20Z
Redmin
52094
263895
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33244"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33243",
"Z14K2": {
"Z1K1": "Z7",
"Z7K1": "Z27878",
"Z27878K1": {
"Z1K1": "Z7",
"Z7K1": "Z27868",
"Z27868K1": {
"Z1K1": "Z7",
"Z7K1": "Z21806",
"Z21806K1": {
"Z1K1": "Z7",
"Z7K1": "Z6825",
"Z6825K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
}
},
"Z21806K2": "Z1011"
}
},
"Z27878K2": [
"Z6"
],
"Z27878K3": [
"Z6",
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q131105"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
},
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q146233"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
},
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q146078"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
},
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q202142"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
}
],
"Z27878K4": {
"Z1K1": "Z7",
"Z7K1": "Z15142",
"Z15142K1": [
"Z6",
{
"Z1K1": "Z7",
"Z7K1": "Z19241",
"Z19241K1": {
"Z1K1": "Z7",
"Z7K1": "Z6825",
"Z6825K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
}
},
"Z19241K2": [
"Z6091",
{
"Z1K1": "Z6091",
"Z6091K1": "Q131105"
}
]
},
{
"Z1K1": "Z7",
"Z7K1": "Z19241",
"Z19241K1": {
"Z1K1": "Z7",
"Z7K1": "Z6825",
"Z6825K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
}
},
"Z19241K2": [
"Z6091",
{
"Z1K1": "Z6091",
"Z6091K1": "Q146233"
}
]
},
{
"Z1K1": "Z7",
"Z7K1": "Z19241",
"Z19241K1": {
"Z1K1": "Z7",
"Z7K1": "Z6825",
"Z6825K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
}
},
"Z19241K2": [
"Z6091",
{
"Z1K1": "Z6091",
"Z6091K1": "Q146078"
}
]
},
{
"Z1K1": "Z7",
"Z7K1": "Z19241",
"Z19241K1": {
"Z1K1": "Z7",
"Z7K1": "Z6825",
"Z6825K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
}
},
"Z19241K2": [
"Z6091",
{
"Z1K1": "Z6091",
"Z6091K1": "Q202142"
}
]
}
]
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
fl098u1ajccoxcd3af5w35961xqvhqn
263902
263895
2026-04-08T08:42:36Z
Redmin
52094
263902
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33244"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33243",
"Z14K2": {
"Z1K1": "Z7",
"Z7K1": "Z27878",
"Z27878K1": {
"Z1K1": "Z7",
"Z7K1": "Z27868",
"Z27868K1": {
"Z1K1": "Z7",
"Z7K1": "Z21806",
"Z21806K1": {
"Z1K1": "Z7",
"Z7K1": "Z6825",
"Z6825K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
}
},
"Z21806K2": "Z1011"
}
},
"Z27878K2": [
"Z6"
],
"Z27878K3": [
"Z6",
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q131105"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
},
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q146233"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
},
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q146078"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
},
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q202142"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
}
],
"Z27878K4": {
"Z1K1": "Z7",
"Z7K1": "Z15142",
"Z15142K1": [
{
"Z1K1": "Z7",
"Z7K1": "Z881",
"Z881K1": "Z6"
},
{
"Z1K1": "Z7",
"Z7K1": "Z19241",
"Z19241K1": {
"Z1K1": "Z7",
"Z7K1": "Z6825",
"Z6825K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
}
},
"Z19241K2": [
"Z6091",
{
"Z1K1": "Z6091",
"Z6091K1": "Q131105"
}
]
},
{
"Z1K1": "Z7",
"Z7K1": "Z19241",
"Z19241K1": {
"Z1K1": "Z7",
"Z7K1": "Z6825",
"Z6825K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
}
},
"Z19241K2": [
"Z6091",
{
"Z1K1": "Z6091",
"Z6091K1": "Q146233"
}
]
},
{
"Z1K1": "Z7",
"Z7K1": "Z19241",
"Z19241K1": {
"Z1K1": "Z7",
"Z7K1": "Z6825",
"Z6825K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
}
},
"Z19241K2": [
"Z6091",
{
"Z1K1": "Z6091",
"Z6091K1": "Q146078"
}
]
},
{
"Z1K1": "Z7",
"Z7K1": "Z19241",
"Z19241K1": {
"Z1K1": "Z7",
"Z7K1": "Z6825",
"Z6825K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
}
},
"Z19241K2": [
"Z6091",
{
"Z1K1": "Z6091",
"Z6091K1": "Q202142"
}
]
}
]
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
gguc7vwj5qnxxpggzo1ngf5lqduuhnq
263904
263902
2026-04-08T08:57:08Z
Redmin
52094
Fix table row list type (lots of code has been copied over from [[Z28604]])
263904
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33244"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33243",
"Z14K2": {
"Z1K1": "Z7",
"Z7K1": "Z27878",
"Z27878K1": {
"Z1K1": "Z7",
"Z7K1": "Z27868",
"Z27868K1": {
"Z1K1": "Z7",
"Z7K1": "Z21806",
"Z21806K1": {
"Z1K1": "Z7",
"Z7K1": "Z6825",
"Z6825K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
}
},
"Z21806K2": "Z1011"
}
},
"Z27878K2": [
"Z6"
],
"Z27878K3": [
"Z6",
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q131105"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
},
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q146233"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
},
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q146078"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
},
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q202142"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
}
],
"Z27878K4": {
"Z1K1": "Z7",
"Z7K1": "Z15142",
"Z15142K1": [
{
"Z1K1": "Z7",
"Z7K1": "Z881",
"Z881K1": {
"Z1K1": "Z7",
"Z7K1": "Z881",
"Z881K1": "Z6"
}
},
{
"Z1K1": "Z7",
"Z7K1": "Z19241",
"Z19241K1": {
"Z1K1": "Z7",
"Z7K1": "Z6825",
"Z6825K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
}
},
"Z19241K2": [
"Z6091",
{
"Z1K1": "Z6091",
"Z6091K1": "Q131105"
}
]
},
{
"Z1K1": "Z7",
"Z7K1": "Z19241",
"Z19241K1": {
"Z1K1": "Z7",
"Z7K1": "Z6825",
"Z6825K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
}
},
"Z19241K2": [
"Z6091",
{
"Z1K1": "Z6091",
"Z6091K1": "Q146233"
}
]
},
{
"Z1K1": "Z7",
"Z7K1": "Z19241",
"Z19241K1": {
"Z1K1": "Z7",
"Z7K1": "Z6825",
"Z6825K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
}
},
"Z19241K2": [
"Z6091",
{
"Z1K1": "Z6091",
"Z6091K1": "Q146078"
}
]
},
{
"Z1K1": "Z7",
"Z7K1": "Z19241",
"Z19241K1": {
"Z1K1": "Z7",
"Z7K1": "Z6825",
"Z6825K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
}
},
"Z19241K2": [
"Z6091",
{
"Z1K1": "Z6091",
"Z6091K1": "Q202142"
}
]
}
]
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Bengali noun declension table, composition"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
s42344bhjh5jl6x53mu97ldqfegqf49
263906
263904
2026-04-08T09:08:04Z
Redmin
52094
263906
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33244"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33243",
"Z14K2": {
"Z1K1": "Z7",
"Z7K1": "Z27878",
"Z27878K1": {
"Z1K1": "Z7",
"Z7K1": "Z27868",
"Z27868K1": {
"Z1K1": "Z7",
"Z7K1": "Z21806",
"Z21806K1": {
"Z1K1": "Z7",
"Z7K1": "Z6825",
"Z6825K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
}
},
"Z21806K2": "Z1011"
}
},
"Z27878K2": [
"Z6"
],
"Z27878K3": [
"Z6",
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q131105"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
},
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q146233"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
},
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q146078"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
},
{
"Z1K1": "Z7",
"Z7K1": "Z27885",
"Z27885K1": {
"Z1K1": "Z6091",
"Z6091K1": "Q202142"
},
"Z27885K2": {
"Z1K1": "Z18",
"Z18K1": "Z33243K2"
}
}
],
"Z27878K4": {
"Z1K1": "Z7",
"Z7K1": "Z15142",
"Z15142K1": [
{
"Z1K1": "Z7",
"Z7K1": "Z881",
"Z881K1": {
"Z1K1": "Z7",
"Z7K1": "Z881",
"Z881K1": "Z6"
}
},
[
"Z6",
{
"Z1K1": "Z7",
"Z7K1": "Z19241",
"Z19241K1": {
"Z1K1": "Z7",
"Z7K1": "Z6825",
"Z6825K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
}
},
"Z19241K2": [
"Z6091",
{
"Z1K1": "Z6091",
"Z6091K1": "Q131105"
}
]
}
],
[
"Z6",
{
"Z1K1": "Z7",
"Z7K1": "Z19241",
"Z19241K1": {
"Z1K1": "Z7",
"Z7K1": "Z6825",
"Z6825K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
}
},
"Z19241K2": [
"Z6091",
{
"Z1K1": "Z6091",
"Z6091K1": "Q146233"
}
]
}
],
[
"Z6",
{
"Z1K1": "Z7",
"Z7K1": "Z19241",
"Z19241K1": {
"Z1K1": "Z7",
"Z7K1": "Z6825",
"Z6825K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
}
},
"Z19241K2": [
"Z6091",
{
"Z1K1": "Z6091",
"Z6091K1": "Q146078"
}
]
}
],
[
"Z6",
{
"Z1K1": "Z7",
"Z7K1": "Z19241",
"Z19241K1": {
"Z1K1": "Z7",
"Z7K1": "Z6825",
"Z6825K1": {
"Z1K1": "Z18",
"Z18K1": "Z33243K1"
}
},
"Z19241K2": [
"Z6091",
{
"Z1K1": "Z6091",
"Z6091K1": "Q202142"
}
]
}
]
]
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Bengali noun declension table, composition"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
ckd78x7mm2l6lnnqz6kuss57et8ckrj
Z33245
0
79876
263851
2026-04-08T05:23:08Z
Higa4
889
+ ja
263851
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33245"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z20159",
"Z17K2": "Z33245K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1830",
"Z11K2": "year"
}
]
}
}
],
"Z8K2": "Z6",
"Z8K3": [
"Z20"
],
"Z8K4": [
"Z14"
],
"Z8K5": "Z33245"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1830",
"Z11K2": "Intro for year in Japanese, Python"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
5caf2murm1od96ibsvq3pp4nqq50hnz
263852
263851
2026-04-08T05:26:28Z
Higa4
889
+- ja
263852
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33245"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z20159",
"Z17K2": "Z33245K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1830",
"Z11K2": "year"
}
]
}
}
],
"Z8K2": "Z6",
"Z8K3": [
"Z20"
],
"Z8K4": [
"Z14"
],
"Z8K5": "Z33245"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1830",
"Z11K2": "Intro for year in Japanese"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
etp6g7vbqbm8nhgkdrx85sv8gu7e8mj
263854
263852
2026-04-08T05:28:25Z
Higa4
889
Added Z33246 to the approved list of implementations
263854
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33245"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z20159",
"Z17K2": "Z33245K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1830",
"Z11K2": "year"
}
]
}
}
],
"Z8K2": "Z6",
"Z8K3": [
"Z20"
],
"Z8K4": [
"Z14",
"Z33246"
],
"Z8K5": "Z33245"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1830",
"Z11K2": "Intro for year in Japanese"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
9k717vf7z5y0jsja7d7f9emqbwiz5ux
263855
263854
2026-04-08T05:28:55Z
Higa4
889
Removed Z33246 from the approved list of implementations
263855
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33245"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z20159",
"Z17K2": "Z33245K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1830",
"Z11K2": "year"
}
]
}
}
],
"Z8K2": "Z6",
"Z8K3": [
"Z20"
],
"Z8K4": [
"Z14"
],
"Z8K5": "Z33245"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1830",
"Z11K2": "Intro for year in Japanese"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
etp6g7vbqbm8nhgkdrx85sv8gu7e8mj
263857
263855
2026-04-08T05:31:42Z
Higa4
889
Added Z33246 to the approved list of implementations
263857
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33245"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z20159",
"Z17K2": "Z33245K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1830",
"Z11K2": "year"
}
]
}
}
],
"Z8K2": "Z6",
"Z8K3": [
"Z20"
],
"Z8K4": [
"Z14",
"Z33246"
],
"Z8K5": "Z33245"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1830",
"Z11K2": "Intro for year in Japanese"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
9k717vf7z5y0jsja7d7f9emqbwiz5ux
263865
263857
2026-04-08T05:44:46Z
Higa4
889
Added Z33249 to the approved list of test cases
263865
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33245"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z20159",
"Z17K2": "Z33245K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1830",
"Z11K2": "year"
}
]
}
}
],
"Z8K2": "Z6",
"Z8K3": [
"Z20",
"Z33249"
],
"Z8K4": [
"Z14",
"Z33246"
],
"Z8K5": "Z33245"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1830",
"Z11K2": "Intro for year in Japanese"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
qx521ajtvux47nq20cbrvhdl58lvpdm
263873
263865
2026-04-08T06:00:11Z
Higa4
889
Removed Z33246 from the approved list of implementations
263873
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33245"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z20159",
"Z17K2": "Z33245K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1830",
"Z11K2": "year"
}
]
}
}
],
"Z8K2": "Z6",
"Z8K3": [
"Z20",
"Z33249"
],
"Z8K4": [
"Z14"
],
"Z8K5": "Z33245"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1830",
"Z11K2": "Intro for year in Japanese"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
28ov71mlc41l6v2vczqxk6x5eqgwod7
263874
263873
2026-04-08T06:00:15Z
Higa4
889
Added Z33246 to the approved list of implementations
263874
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33245"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z20159",
"Z17K2": "Z33245K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1830",
"Z11K2": "year"
}
]
}
}
],
"Z8K2": "Z6",
"Z8K3": [
"Z20",
"Z33249"
],
"Z8K4": [
"Z14",
"Z33246"
],
"Z8K5": "Z33245"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1830",
"Z11K2": "Intro for year in Japanese"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
qx521ajtvux47nq20cbrvhdl58lvpdm
Z33246
0
79877
263853
2026-04-08T05:27:54Z
Higa4
889
+ ja
263853
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33246"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33245",
"Z14K3": {
"Z1K1": "Z16",
"Z16K1": "Z610",
"Z16K2": "def Z33245(Z33245K1):\n\t import datetime\n if Z20597K1 \u003C 0:\n raise \"year before 0 not supported\"\n def intToRoman(n):\n if 1 \u003C= n \u003C= 3999:\n m = [\"\", \"M\", \"MM\", \"MMM\"]\n c = [\"\", \"C\", \"CC\", \"CCC\", \"CD\", \"D\", \"DC\", \"DCC\", \"DCCC\", \"CM\"]\n x = [\"\", \"X\", \"XX\", \"XXX\", \"XL\", \"L\", \"LX\", \"LXX\", \"LXXX\", \"XC\"]\n i = [\"\", \"I\", \"II\", \"III\", \"IV\", \"V\", \"VI\", \"VII\", \"VIII\", \"IX\"]\n th = m[n // 1000]\n h = c[(n % 1000) // 100]\n t = x[(n % 100) // 10]\n o = i[n % 10]\n\n return (th + h + t + o)\n else:\n return \"\"\n\n day = datetime.datetime(1600 + Z20597K1 % 400, 1, 1).weekday()\n dayOptions = (\"月曜日\", \"火曜日\", \"水曜日\", \"木曜日\", \"金曜日\", \"土曜日\", \"日曜日\")\n\n def s(number):\n return str(number) + \"番目の\"\n\n leap = (Z20597K1 % 4 == 0 and (Z20597K1 % 100 != 0 or Z20597K1 % 400 == 0)) \n\n return f\"{Z20597K1}({intToRoman(Z20597K1)})年はグレゴリオ暦による{dayOptions[day]}から始まる{'閏' if leap else '平'}年、紀元{s(Z20597K1)}年、第{s((Z20597K1-1) // 1000 + 1)}千年紀の{s((Z20597K1-1) % 1000 + 1)}番目の年、{s((Z20597K1-1) // 100 + 1)}世紀{s((Z20597K1-1) % 100 + 1)}番目の年、そして{(Z20597K1 // 10) * 10}年代の{s((Z20597K1) % 10 + 1)}番目の年です。\" "
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1830",
"Z11K2": "Intro for year in Japanese, Python"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
bef6xvufkmli53bjvxo8aoiw1mpiakd
263856
263853
2026-04-08T05:30:33Z
Higa4
889
+ ja
263856
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33246"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33245",
"Z14K3": {
"Z1K1": "Z16",
"Z16K1": "Z610",
"Z16K2": "def Z33245(Z33245K1):\n\timport datetime\n if Z20597K1 \u003C 0:\n raise \"year before 0 not supported\"\n def intToRoman(n):\n if 1 \u003C= n \u003C= 3999:\n m = [\"\", \"M\", \"MM\", \"MMM\"]\n c = [\"\", \"C\", \"CC\", \"CCC\", \"CD\", \"D\", \"DC\", \"DCC\", \"DCCC\", \"CM\"]\n x = [\"\", \"X\", \"XX\", \"XXX\", \"XL\", \"L\", \"LX\", \"LXX\", \"LXXX\", \"XC\"]\n i = [\"\", \"I\", \"II\", \"III\", \"IV\", \"V\", \"VI\", \"VII\", \"VIII\", \"IX\"]\n th = m[n // 1000]\n h = c[(n % 1000) // 100]\n t = x[(n % 100) // 10]\n o = i[n % 10]\n\n return (th + h + t + o)\n else:\n return \"\"\n\n day = datetime.datetime(1600 + Z20597K1 % 400, 1, 1).weekday()\n dayOptions = (\"月曜日\", \"火曜日\", \"水曜日\", \"木曜日\", \"金曜日\", \"土曜日\", \"日曜日\")\n\n def s(number):\n return str(number) + \"番目の\"\n\n leap = (Z20597K1 % 4 == 0 and (Z20597K1 % 100 != 0 or Z20597K1 % 400 == 0)) \n\n return f\"{Z20597K1}({intToRoman(Z20597K1)})年はグレゴリオ暦による{dayOptions[day]}から始まる{'閏' if leap else '平'}年、紀元{s(Z20597K1)}年、第{s((Z20597K1-1) // 1000 + 1)}千年紀の{s((Z20597K1-1) % 1000 + 1)}番目の年、{s((Z20597K1-1) // 100 + 1)}世紀{s((Z20597K1-1) % 100 + 1)}番目の年、そして{(Z20597K1 // 10) * 10}年代の{s((Z20597K1) % 10 + 1)}番目の年です。\" "
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1830",
"Z11K2": "Intro for year in Japanese, Python"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
squmqu1l1oale5x8q95x2hlgpcvmlzd
263858
263856
2026-04-08T05:34:37Z
Higa4
889
ja
263858
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33246"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33245",
"Z14K3": {
"Z1K1": "Z16",
"Z16K1": "Z610",
"Z16K2": "def Z33245(Z33245K1):\n\timport datetime\n if Z20597K1 \u003C 0:\n\t\traise \"year before 0 not supported\"\n def intToRoman(n):\n if 1 \u003C= n \u003C= 3999:\n m = [\"\", \"M\", \"MM\", \"MMM\"]\n c = [\"\", \"C\", \"CC\", \"CCC\", \"CD\", \"D\", \"DC\", \"DCC\", \"DCCC\", \"CM\"]\n x = [\"\", \"X\", \"XX\", \"XXX\", \"XL\", \"L\", \"LX\", \"LXX\", \"LXXX\", \"XC\"]\n i = [\"\", \"I\", \"II\", \"III\", \"IV\", \"V\", \"VI\", \"VII\", \"VIII\", \"IX\"]\n th = m[n // 1000]\n h = c[(n % 1000) // 100]\n t = x[(n % 100) // 10]\n o = i[n % 10]\n\n return (th + h + t + o)\n else:\n return \"\"\n\n day = datetime.datetime(1600 + Z20597K1 % 400, 1, 1).weekday()\n dayOptions = (\"月曜日\", \"火曜日\", \"水曜日\", \"木曜日\", \"金曜日\", \"土曜日\", \"日曜日\")\n\n def s(number):\n return str(number) + \"番目の\"\n\n leap = (Z20597K1 % 4 == 0 and (Z20597K1 % 100 != 0 or Z20597K1 % 400 == 0)) \n\n return f\"{Z20597K1}({intToRoman(Z20597K1)})年はグレゴリオ暦による{dayOptions[day]}から始まる{'閏' if leap else '平'}年、紀元{s(Z20597K1)}年、第{s((Z20597K1-1) // 1000 + 1)}千年紀の{s((Z20597K1-1) % 1000 + 1)}番目の年、{s((Z20597K1-1) // 100 + 1)}世紀{s((Z20597K1-1) % 100 + 1)}番目の年、そして{(Z20597K1 // 10) * 10}年代の{s((Z20597K1) % 10 + 1)}番目の年です。\" "
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1830",
"Z11K2": "Intro for year in Japanese, Python"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
g9w6s5kb8w69sl2z7i68q8djm0168a8
263859
263858
2026-04-08T05:35:52Z
Higa4
889
ja
263859
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33246"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33245",
"Z14K3": {
"Z1K1": "Z16",
"Z16K1": "Z610",
"Z16K2": "def Z33245(Z33245K1):\n\timport datetime\n if Z20597K1 \u003C 0:\n raise \"year before 0 not supported\"\n def intToRoman(n):\n if 1 \u003C= n \u003C= 3999:\n m = [\"\", \"M\", \"MM\", \"MMM\"]\n c = [\"\", \"C\", \"CC\", \"CCC\", \"CD\", \"D\", \"DC\", \"DCC\", \"DCCC\", \"CM\"]\n x = [\"\", \"X\", \"XX\", \"XXX\", \"XL\", \"L\", \"LX\", \"LXX\", \"LXXX\", \"XC\"]\n i = [\"\", \"I\", \"II\", \"III\", \"IV\", \"V\", \"VI\", \"VII\", \"VIII\", \"IX\"]\n th = m[n // 1000]\n h = c[(n % 1000) // 100]\n t = x[(n % 100) // 10]\n o = i[n % 10]\n\n return (th + h + t + o)\n else:\n return \"\"\n\n day = datetime.datetime(1600 + Z20597K1 % 400, 1, 1).weekday()\n dayOptions = (\"月曜日\", \"火曜日\", \"水曜日\", \"木曜日\", \"金曜日\", \"土曜日\", \"日曜日\")\n\n def s(number):\n return str(number) + \"番目の\"\n\n leap = (Z20597K1 % 4 == 0 and (Z20597K1 % 100 != 0 or Z20597K1 % 400 == 0)) \n\n return f\"{Z20597K1}({intToRoman(Z20597K1)})年はグレゴリオ暦による{dayOptions[day]}から始まる{'閏' if leap else '平'}年、紀元{s(Z20597K1)}年、第{s((Z20597K1-1) // 1000 + 1)}千年紀の{s((Z20597K1-1) % 1000 + 1)}番目の年、{s((Z20597K1-1) // 100 + 1)}世紀{s((Z20597K1-1) % 100 + 1)}番目の年、そして{(Z20597K1 // 10) * 10}年代の{s((Z20597K1) % 10 + 1)}番目の年です。\" "
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1830",
"Z11K2": "Intro for year in Japanese, Python"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
squmqu1l1oale5x8q95x2hlgpcvmlzd
263860
263859
2026-04-08T05:38:40Z
Higa4
889
263860
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33246"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33245",
"Z14K3": {
"Z1K1": "Z16",
"Z16K1": "Z610",
"Z16K2": "def Z33245(Z33245K1):\n import datetime\n if Z20597K1 \u003C 0:\n raise \"year before 0 not supported\"\n def intToRoman(n):\n if 1 \u003C= n \u003C= 3999:\n m = [\"\", \"M\", \"MM\", \"MMM\"]\n c = [\"\", \"C\", \"CC\", \"CCC\", \"CD\", \"D\", \"DC\", \"DCC\", \"DCCC\", \"CM\"]\n x = [\"\", \"X\", \"XX\", \"XXX\", \"XL\", \"L\", \"LX\", \"LXX\", \"LXXX\", \"XC\"]\n i = [\"\", \"I\", \"II\", \"III\", \"IV\", \"V\", \"VI\", \"VII\", \"VIII\", \"IX\"]\n th = m[n // 1000]\n h = c[(n % 1000) // 100]\n t = x[(n % 100) // 10]\n o = i[n % 10]\n\n return (th + h + t + o)\n else:\n return \"\"\n\n day = datetime.datetime(1600 + Z20597K1 % 400, 1, 1).weekday()\n dayOptions = (\"月曜日\", \"火曜日\", \"水曜日\", \"木曜日\", \"金曜日\", \"土曜日\", \"日曜日\")\n\n def s(number):\n return str(number) + \"番目の\"\n\n leap = (Z20597K1 % 4 == 0 and (Z20597K1 % 100 != 0 or Z20597K1 % 400 == 0)) \n\n return f\"{Z20597K1}({intToRoman(Z20597K1)})年はグレゴリオ暦による{dayOptions[day]}から始まる{'閏' if leap else '平'}年、紀元{s(Z20597K1)}年、第{s((Z20597K1-1) // 1000 + 1)}千年紀の{s((Z20597K1-1) % 1000 + 1)}番目の年、{s((Z20597K1-1) // 100 + 1)}世紀{s((Z20597K1-1) % 100 + 1)}番目の年、そして{(Z20597K1 // 10) * 10}年代の{s((Z20597K1) % 10 + 1)}番目の年です。\" "
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1830",
"Z11K2": "Intro for year in Japanese, Python"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
a547y2gns1fezv7aitoipgtn94pwiry
263862
263860
2026-04-08T05:42:37Z
Higa4
889
263862
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33246"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33245",
"Z14K3": {
"Z1K1": "Z16",
"Z16K1": "Z610",
"Z16K2": "def Z33245(Z33245K1):\n import datetime\n if Z33245K1 \u003C 0:\n raise \"year before 0 not supported\"\n def intToRoman(n):\n if 1 \u003C= n \u003C= 3999:\n m = [\"\", \"M\", \"MM\", \"MMM\"]\n c = [\"\", \"C\", \"CC\", \"CCC\", \"CD\", \"D\", \"DC\", \"DCC\", \"DCCC\", \"CM\"]\n x = [\"\", \"X\", \"XX\", \"XXX\", \"XL\", \"L\", \"LX\", \"LXX\", \"LXXX\", \"XC\"]\n i = [\"\", \"I\", \"II\", \"III\", \"IV\", \"V\", \"VI\", \"VII\", \"VIII\", \"IX\"]\n th = m[n // 1000]\n h = c[(n % 1000) // 100]\n t = x[(n % 100) // 10]\n o = i[n % 10]\n\n return (th + h + t + o)\n else:\n return \"\"\n\n day = datetime.datetime(1600 + Z33245K1 % 400, 1, 1).weekday()\n dayOptions = (\"月曜日\", \"火曜日\", \"水曜日\", \"木曜日\", \"金曜日\", \"土曜日\", \"日曜日\")\n\n def s(number):\n return str(number) + \"番目の\"\n\n leap = (Z33245K1 % 4 == 0 and (Z33245K1 % 100 != 0 or Z33245K1 % 400 == 0)) \n\n return f\"{Z33245K1}({intToRoman(Z33245K1)})年はグレゴリオ暦による{dayOptions[day]}から始まる{'閏' if leap else '平'}年、紀元{s(Z33245K1)}年、第{s((Z33245K1-1) // 1000 + 1)}千年紀の{s((Z33245K1-1) % 1000 + 1)}番目の年、{s((Z33245K1-1) // 100 + 1)}世紀{s((Z33245K1-1) % 100 + 1)}番目の年、そして{(Z33245K1 // 10) * 10}年代の{s((Z33245K1) % 10 + 1)}番目の年です。\" "
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1830",
"Z11K2": "Intro for year in Japanese, Python"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
gggy43gku1tyby511wlftpa0mt488lx
263871
263862
2026-04-08T05:58:07Z
Higa4
889
+ ja
263871
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33246"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33245",
"Z14K3": {
"Z1K1": "Z16",
"Z16K1": "Z610",
"Z16K2": "def Z33245(Z33245K1):\n import datetime\n if Z33245K1 \u003C 0:\n raise \"year before 0 not supported\"\n def intToRoman(n):\n if 1 \u003C= n \u003C= 3999:\n m = [\"\", \"M\", \"MM\", \"MMM\"]\n c = [\"\", \"C\", \"CC\", \"CCC\", \"CD\", \"D\", \"DC\", \"DCC\", \"DCCC\", \"CM\"]\n x = [\"\", \"X\", \"XX\", \"XXX\", \"XL\", \"L\", \"LX\", \"LXX\", \"LXXX\", \"XC\"]\n i = [\"\", \"I\", \"II\", \"III\", \"IV\", \"V\", \"VI\", \"VII\", \"VIII\", \"IX\"]\n th = m[n // 1000]\n h = c[(n % 1000) // 100]\n t = x[(n % 100) // 10]\n o = i[n % 10]\n\n return (th + h + t + o)\n else:\n return \"\"\n\n day = datetime.datetime(1600 + Z33245K1 % 400, 1, 1).weekday()\n dayOptions = (\"月曜日\", \"火曜日\", \"水曜日\", \"木曜日\", \"金曜日\", \"土曜日\", \"日曜日\")\n\n def s(number):\n return str(number) + \"番目の\"\n\n leap = (Z33245K1 % 4 == 0 and (Z33245K1 % 100 != 0 or Z33245K1 % 400 == 0)) \n\n return f\"{Z33245K1}({intToRoman(Z33245K1)})年はグレゴリオ暦による{dayOptions[day]}から始まる{'閏' if leap else '平'}年、紀元{s(Z33245K1)}年、{s((Z33245K1-1) // 1000 + 1)}千年紀の{s((Z33245K1-1) % 1000 + 1)}年、{s((Z33245K1-1) // 100 + 1)}世紀の{s((Z33245K1-1) % 100 + 1)}年、そして{(Z33245K1 // 10) * 10}年代の{s((Z33245K1) % 10 + 1)}年です。\" "
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1830",
"Z11K2": "Intro for year in Japanese, Python"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
hcgaf5zkwttyvnjxd6k287kqdbw8ofc
Z33247
0
79878
263861
2026-04-08T05:42:16Z
Hakimi97
198
263861
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33247"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z32176",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z32176",
"Z32176K1": {
"Z1K1": "Z6095",
"Z6095K1": "L465087"
},
"Z32176K2": {
"Z1K1": "Z13518",
"Z13518K1": "1"
},
"Z32176K3": "Z1531"
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z14392",
"Z14392K2": {
"Z1K1": "Z11",
"Z11K1": "Z1531",
"Z11K2": "termahal"
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "1, mahal =\u003E termahal"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
k0gbr20spni55p9jl06hj6nvnqvksip
Z33248
0
79879
263863
2026-04-08T05:43:30Z
Hakimi97
198
263863
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33248"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z32176",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z32176",
"Z32176K1": {
"Z1K1": "Z6095",
"Z6095K1": "L410412"
},
"Z32176K2": {
"Z1K1": "Z13518",
"Z13518K1": "100"
},
"Z32176K3": "Z1531"
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z14392",
"Z14392K2": {
"Z1K1": "Z11",
"Z11K1": "Z1531",
"Z11K2": "keseratus terbesar"
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "100, besar =\u003E keseratus terbesar"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
bcfntnoowj5rq1kk6bv7v1ykpp7vell
Z33249
0
79880
263864
2026-04-08T05:44:01Z
Higa4
889
+ ja
263864
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33249"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z33245",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z33245",
"Z33245K1": {
"Z1K1": "Z20159",
"Z20159K1": {
"Z1K1": "Z17813",
"Z17813K1": "Z17814"
},
"Z20159K2": {
"Z1K1": "Z13518",
"Z13518K1": "1960"
}
}
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z866",
"Z866K2": "1960(MCMLX)年はグレゴリオ暦による金曜日から始まる閏年、紀元1960番目の年、第2番目の千年紀の960番目の番目の年、20番目の世紀60番目の番目の年、そして1960年代の1番目の番目の年です。"
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1830",
"Z11K2": "1960年"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
6axlvmxxoc1vd2nzmlmrd5djmd42bc3
263872
263864
2026-04-08T05:58:44Z
Higa4
889
+ ja
263872
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33249"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z33245",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z33245",
"Z33245K1": {
"Z1K1": "Z20159",
"Z20159K1": {
"Z1K1": "Z17813",
"Z17813K1": "Z17814"
},
"Z20159K2": {
"Z1K1": "Z13518",
"Z13518K1": "1960"
}
}
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z866",
"Z866K2": "1960(MCMLX)年はグレゴリオ暦による金曜日から始まる閏年、紀元1960番目の年、2番目の千年紀の960番目の年、20番目の世紀の60番目の年、そして1960年代の1番目の年です。"
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1830",
"Z11K2": "1960年"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
24forz8hw3702iimmw8kldq9m9f0q0f
Z33250
0
79881
263866
2026-04-08T05:46:21Z
Hakimi97
198
263866
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33250"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z32176",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z32176",
"Z32176K1": {
"Z1K1": "Z6095",
"Z6095K1": "L1321383"
},
"Z32176K2": {
"Z1K1": "Z13518",
"Z13518K1": "101110"
},
"Z32176K3": "Z1531"
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z14392",
"Z14392K2": {
"Z1K1": "Z11",
"Z11K1": "Z1531",
"Z11K2": "keseratus satu ribu seratus sepuluh terhebat"
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "101,110, hebat =\u003E keseratus..."
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "101,110, hebat =\u003E keseratus satu ribu seratus sepuluh terhebat"
}
]
}
}
e9llbmyn9aw4d4vx3bml36v7rs82fiv
263867
263866
2026-04-08T05:48:15Z
Hakimi97
198
263867
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33250"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z32176",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z32176",
"Z32176K1": {
"Z1K1": "Z6095",
"Z6095K1": "L1321383"
},
"Z32176K2": {
"Z1K1": "Z13518",
"Z13518K1": "101110"
},
"Z32176K3": "Z1531"
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z14392",
"Z14392K2": {
"Z1K1": "Z11",
"Z11K1": "Z1531",
"Z11K2": "keseratus satu ribu seratus sepuluh terhebat"
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "101,110 hebat =\u003E keseratus..."
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "101,110 hebat =\u003E keseratus satu ribu seratus sepuluh terhebat"
}
]
}
}
lfkidttivsbz9sqmef2sys0ui68ufvq
263868
263867
2026-04-08T05:49:33Z
Hakimi97
198
263868
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33250"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z32176",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z32176",
"Z32176K1": {
"Z1K1": "Z6095",
"Z6095K1": "L1321383"
},
"Z32176K2": {
"Z1K1": "Z13518",
"Z13518K1": "101000"
},
"Z32176K3": "Z1531"
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z14392",
"Z14392K2": {
"Z1K1": "Z11",
"Z11K1": "Z1531",
"Z11K2": "keseratus satu ribu terhebat"
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "101,000 hebat =\u003E keseratus..."
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "101,000 hebat =\u003E keseratus satu ribu terhebat"
}
]
}
}
3ca2qtgjx34ptbgfcg4d6ulbefzho4q
263870
263868
2026-04-08T05:50:48Z
Hakimi97
198
263870
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33250"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z32176",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z32176",
"Z32176K1": {
"Z1K1": "Z6095",
"Z6095K1": "L1321383"
},
"Z32176K2": {
"Z1K1": "Z13518",
"Z13518K1": "7"
},
"Z32176K3": "Z1531"
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z14392",
"Z14392K2": {
"Z1K1": "Z11",
"Z11K1": "Z1531",
"Z11K2": "ketujuh terhebat"
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "7, hebat =\u003E ketujuh terhebat"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
6exahswsd5x122pjbdcpttmfef8t74w
Z33251
0
79882
263881
2026-04-08T06:57:16Z
So9q
3791
263881
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33251"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z20838",
"Z17K2": "Z33251K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "mmBTU/$"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z20838",
"Z17K2": "Z33251K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "USD to EUR exchange rate"
}
]
}
}
],
"Z8K2": "Z19677",
"Z8K3": [
"Z20"
],
"Z8K4": [
"Z14"
],
"Z8K5": "Z33251"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "mmBTU/$ to €/MEmWh"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31",
{
"Z1K1": "Z31",
"Z31K1": "Z1002",
"Z31K2": [
"Z6",
"us gas price to eu gas price "
]
}
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Convert between energy units"
}
]
}
}
dl6qpzc3ch24mjexdolacllzpo6u4a2
263882
263881
2026-04-08T06:57:34Z
So9q
3791
263882
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33251"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z20838",
"Z17K2": "Z33251K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "mmBTU/$"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z20838",
"Z17K2": "Z33251K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "USD to EUR exchange rate"
}
]
}
}
],
"Z8K2": "Z19677",
"Z8K3": [
"Z20"
],
"Z8K4": [
"Z14"
],
"Z8K5": "Z33251"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "mmBTU/$ to €/MWh"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31",
{
"Z1K1": "Z31",
"Z31K1": "Z1002",
"Z31K2": [
"Z6",
"us gas price to eu gas price "
]
}
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Convert between energy units"
}
]
}
}
f6yf597xr8eyjjg711w5mmn7ladaw4o
263883
263882
2026-04-08T06:58:18Z
So9q
3791
263883
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33251"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z20838",
"Z17K2": "Z33251K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "mmBTU/$"
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z20838",
"Z17K2": "Z33251K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "USD to EUR exchange rate"
}
]
}
}
],
"Z8K2": "Z19677",
"Z8K3": [
"Z20"
],
"Z8K4": [
"Z14"
],
"Z8K5": "Z33251"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "$/MMBtu to €/MWh"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31",
{
"Z1K1": "Z31",
"Z31K1": "Z1002",
"Z31K2": [
"Z6",
"us gas price to eu gas price "
]
}
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Convert between energy units"
}
]
}
}
sptvggz4npdrcchq809sp2xo5q3ebph
263884
263883
2026-04-08T06:58:55Z
So9q
3791
263884
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33251"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z20838",
"Z17K2": "Z33251K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "$/MMBtu "
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z20838",
"Z17K2": "Z33251K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "USD to EUR exchange rate"
}
]
}
}
],
"Z8K2": "Z19677",
"Z8K3": [
"Z20"
],
"Z8K4": [
"Z14"
],
"Z8K5": "Z33251"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "$/MMBtu to €/MWh"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31",
{
"Z1K1": "Z31",
"Z31K1": "Z1002",
"Z31K2": [
"Z6",
"us gas price to eu gas price "
]
}
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Convert between energy units"
}
]
}
}
godmge8dilcjmi1mdusr5k4q2ocq09a
263888
263884
2026-04-08T07:04:15Z
So9q
3791
263888
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33251"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z19677",
"Z17K2": "Z33251K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "$/MMBtu "
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z19677",
"Z17K2": "Z33251K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "USD to EUR exchange rate"
}
]
}
}
],
"Z8K2": "Z19677",
"Z8K3": [
"Z20"
],
"Z8K4": [
"Z14"
],
"Z8K5": "Z33251"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "$/MMBtu to €/MWh"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31",
{
"Z1K1": "Z31",
"Z31K1": "Z1002",
"Z31K2": [
"Z6",
"us gas price to eu gas price "
]
}
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Convert between energy units"
}
]
}
}
091o7dk3fal6qn24sueue0vrg9o8il3
263892
263888
2026-04-08T07:19:52Z
So9q
3791
Added Z33253 to the approved list of test cases
263892
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33251"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z19677",
"Z17K2": "Z33251K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "$/MMBtu "
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z19677",
"Z17K2": "Z33251K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "USD to EUR exchange rate"
}
]
}
}
],
"Z8K2": "Z19677",
"Z8K3": [
"Z20",
"Z33253"
],
"Z8K4": [
"Z14"
],
"Z8K5": "Z33251"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "$/MMBtu to €/MWh"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31",
{
"Z1K1": "Z31",
"Z31K1": "Z1002",
"Z31K2": [
"Z6",
"us gas price to eu gas price "
]
}
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Convert between energy units"
}
]
}
}
9eowsl67j9mpukty7s9h7lspxf7hgy4
263893
263892
2026-04-08T07:19:54Z
So9q
3791
Added Z33254 to the approved list of implementations
263893
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33251"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17",
{
"Z1K1": "Z17",
"Z17K1": "Z19677",
"Z17K2": "Z33251K1",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "$/MMBtu "
}
]
}
},
{
"Z1K1": "Z17",
"Z17K1": "Z19677",
"Z17K2": "Z33251K2",
"Z17K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "USD to EUR exchange rate"
}
]
}
}
],
"Z8K2": "Z19677",
"Z8K3": [
"Z20",
"Z33253"
],
"Z8K4": [
"Z14",
"Z33254"
],
"Z8K5": "Z33251"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "$/MMBtu to €/MWh"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31",
{
"Z1K1": "Z31",
"Z31K1": "Z1002",
"Z31K2": [
"Z6",
"us gas price to eu gas price "
]
}
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "Convert between energy units"
}
]
}
}
bh22rl21len3niiekswugjcxg1z61jz
Z33252
0
79883
263886
2026-04-08T06:59:24Z
A3452763492
63492
263886
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33252"
},
"Z2K2": {
"Z1K1": "Z8",
"Z8K1": [
"Z17"
],
"Z8K2": "Z7",
"Z8K3": [
"Z20"
],
"Z8K4": [
"Z14"
],
"Z8K5": "Z33252"
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1113",
"Z11K2": "Yusaya"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1113",
"Z11K2": "Yusa"
}
]
}
}
1t30nxlfv3irtwxmxuhk9zhcxsgocpj
Z33253
0
79884
263887
2026-04-08T07:03:14Z
So9q
3791
263887
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33253"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z33251",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z33251",
"Z33251K1": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z9",
"Z9K1": ""
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z9",
"Z9K1": ""
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": ""
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": ""
},
"Z20838K4": {
"Z1K1": "Z9",
"Z9K1": ""
}
},
"Z33251K2": {
"Z1K1": "Z20838",
"Z20838K1": {
"Z1K1": "Z9",
"Z9K1": ""
},
"Z20838K2": {
"Z1K1": "Z16683",
"Z16683K1": {
"Z1K1": "Z9",
"Z9K1": ""
},
"Z16683K2": {
"Z1K1": "Z13518",
"Z13518K1": ""
}
},
"Z20838K3": {
"Z1K1": "Z13518",
"Z13518K1": ""
},
"Z20838K4": {
"Z1K1": "Z9",
"Z9K1": ""
}
}
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z19686",
"Z19686K2": {
"Z1K1": "Z19677",
"Z19677K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z19677K2": {
"Z1K1": "Z13518",
"Z13518K1": "1204000000"
},
"Z19677K3": {
"Z1K1": "Z13518",
"Z13518K1": "29307107"
}
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "14 $/MMBtu"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
j8ugucfj4lr87xvh5737zyjstpwzb8d
263889
263887
2026-04-08T07:07:51Z
So9q
3791
263889
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33253"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z33251",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z33251",
"Z33251K1": {
"Z1K1": "Z19677",
"Z19677K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z19677K2": {
"Z1K1": "Z13518",
"Z13518K1": "14"
},
"Z19677K3": {
"Z1K1": "Z13518",
"Z13518K1": "1"
}
},
"Z33251K2": {
"Z1K1": "Z19677",
"Z19677K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z19677K2": {
"Z1K1": "Z13518",
"Z13518K1": "43"
},
"Z19677K3": {
"Z1K1": "Z13518",
"Z13518K1": "50"
}
}
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z19686",
"Z19686K2": {
"Z1K1": "Z19677",
"Z19677K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z19677K2": {
"Z1K1": "Z13518",
"Z13518K1": "1204000000"
},
"Z19677K3": {
"Z1K1": "Z13518",
"Z13518K1": "29307107"
}
}
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "14 $/MMBtu"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
0eujyqfo7ls6i0lc0hzbugtcg72oih6
Z33254
0
79885
263891
2026-04-08T07:19:18Z
So9q
3791
263891
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33254"
},
"Z2K2": {
"Z1K1": "Z14",
"Z14K1": "Z33251",
"Z14K2": {
"Z1K1": "Z7",
"Z7K1": "Z23909",
"Z23909K1": [
"Z19677",
{
"Z1K1": "Z7",
"Z7K1": "Z19708",
"Z19708K1": {
"Z1K1": "Z18",
"Z18K1": "Z33251K1"
},
"Z19708K2": {
"Z1K1": "Z19677",
"Z19677K1": {
"Z1K1": "Z16659",
"Z16659K1": "Z16660"
},
"Z19677K2": {
"Z1K1": "Z13518",
"Z13518K1": "29307107"
},
"Z19677K3": {
"Z1K1": "Z13518",
"Z13518K1": "100000000"
}
}
},
{
"Z1K1": "Z18",
"Z18K1": "Z33251K2"
}
]
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1002",
"Z11K2": "$/MMBtu to €/MWh comp"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
rhimoux7zo6djuxbrlhr1uybqafa0uh
Wikifunctions:Type proposals/Grammatical specificity
4
79886
263897
2026-04-08T07:50:42Z
Dv103
11127
Created page with "== Summary == A type that represents the concept of {{Q|Q20739894}}. Note that it is a different concept from definiteness, as explained on [[wikipedia:specificity (linguistics)|Wikipedia]]. == Uses == * In NLG, since some languages (like Turkish) explicitly mark specificity. == Elements of the enumeration == ''List here the QIDs/PIDs/LIDs of the Wikidata enumeration:'' # {{Q|Q139008174}} # {{Q|Q139008195}} == Alternatives == ''In order to capture the idea presented i..."
263897
wikitext
text/x-wiki
== Summary ==
A type that represents the concept of {{Q|Q20739894}}. Note that it is a different concept from definiteness, as explained on [[wikipedia:specificity (linguistics)|Wikipedia]].
== Uses ==
* In NLG, since some languages (like Turkish) explicitly mark specificity.
== Elements of the enumeration ==
''List here the QIDs/PIDs/LIDs of the Wikidata enumeration:''
# {{Q|Q139008174}}
# {{Q|Q139008195}}
== Alternatives ==
''In order to capture the idea presented in the summary, what alternatives could have made sense too?''
…
== Comments ==
''For general comments, please reply to the proposer.''
* {{s}} as proposer. [[User:Dv103|Dv103]] ([[User talk:Dv103|talk]]) 07:50, 8 April 2026 (UTC)
gg0wyk278gu2riprajerht9de5w5i0n
Talk:Z33255
1
79888
263909
2026-04-08T10:06:21Z
Rgfwegfsg
63513
/* XM Partner Code PY8GQ */ new section
263909
wikitext
text/x-wiki
== XM Partner Code PY8GQ ==
XM Partner Code PY8GQ gives you the $30 welcome bonus, the 100% deposit bonus up to $10,500, and 90% lot rebates for maximum trading benefits.
To use XM Partner Code PY8GQ, visit the official XM website and click Open an Account. Register with your personal details and choose your account type. Enter XM Partner Code PY8GQ exactly in the Partner Code or Referral Code field during signup. Verify your account by uploading ID and proof of address. Claim the $30 welcome bonus with no deposit needed so you can start trading right away. Make a deposit to activate the 100% deposit bonus up to $10,500 where XM doubles your money. Then trade and earn 90% lot rebates on every lot with XM Partner Code PY8GQ.
Using XM Partner Code PY8GQ instantly unlocks the $30 welcome bonus, the powerful 100% deposit bonus up to $10,500, and high 90% lot rebates. Start trading smarter today with XM Partner Code PY8GQ. [[User:Rgfwegfsg|Rgfwegfsg]] ([[User talk:Rgfwegfsg|talk]]) 10:06, 8 April 2026 (UTC)
cr26izxvff88koj76seav69yfnpejoc
Z33258
0
79891
263922
2026-04-08T10:54:06Z
Mormegil
150
263922
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33258"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z32541",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z32541",
"Z32541K1": "Zlíně"
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z866",
"Z866K2": "ve Zlíně"
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1062",
"Z11K2": "„ve Zlíně“"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
8kc1y5qjquxotl8qr7t46t8otuajg1h
Z33259
0
79892
263923
2026-04-08T10:54:45Z
Mormegil
150
263923
zobject
text/plain
{
"Z1K1": "Z2",
"Z2K1": {
"Z1K1": "Z6",
"Z6K1": "Z33259"
},
"Z2K2": {
"Z1K1": "Z20",
"Z20K1": "Z32541",
"Z20K2": {
"Z1K1": "Z7",
"Z7K1": "Z32541",
"Z32541K1": "zrcadle"
},
"Z20K3": {
"Z1K1": "Z7",
"Z7K1": "Z866",
"Z866K2": "v zrcadle"
}
},
"Z2K3": {
"Z1K1": "Z12",
"Z12K1": [
"Z11",
{
"Z1K1": "Z11",
"Z11K1": "Z1062",
"Z11K2": "„v zrcadle“"
}
]
},
"Z2K4": {
"Z1K1": "Z32",
"Z32K1": [
"Z31"
]
},
"Z2K5": {
"Z1K1": "Z12",
"Z12K1": [
"Z11"
]
}
}
6my4gu74q25wgyvubxvi5qscmcusz03