Wikifunctions:Status updates/2026-04-02 - Wikifunctions
Jump to content
From Wikifunctions
Wikifunctions:Status updates
Translate this page
Other languages:
Wikifunctions Status updates
Request for Discussion: Towards a more modular NLG
One drawback of the current approach towards NLG is that it is very tightly coupled between the conceptual "thing" you want to say and the choice of a single Function to serve that need. It could benefit from more modularity, to support some languages better and reduce the challenge of using them. Since the launch of Abstract Wikipedia, there have been so many discussions coming up that it is difficult to keep track of all and join them all, but one thing I noticed is how to create functions that allow to create grammatically correct sentences and at the same time allow for the kind of annotation and formatting we are used from Wikipedia articles, e.g. emphasis, links, etc.
I made a proposal last year, which received a fair amount of criticism. In the light of the use cases and requirements we are noticing right now, I have improved and significantly simplified the proposal. But there doesn’t seem to be an answer yet: we want to present this as a contribution to the on-going discussion and to open it for finding answers together. The proposal is currently here:
Syntactic tables
Functions suggested by Abstract Wikipedia
The Abstract Wikipedia community has created
a page to collect suggestions
from the Abstract Wikipedia community to the Wikifunctions community for what would particularly help them. We are hoping for a fruitful cooperation!
Recent Changes in the software
This week, we implemented a new caching system to address an ongoing issue where results differed between the two Wikimedia datacenters. This should mostly resolve the user-facing inconsistencies, though more work is needed to ensure the system scales. We deployed this early, on Monday morning, to test its impact in isolation (
T419666
).
We also addressed a number of bugs: Wikifunctions special pages now correctly show a message when ZObject creation is not enabled, such as on Abstract Wikipedia (
T421148
). We fixed an issue so that clicking on Wikifunctions objects from Abstract Wikipedia now correctly opens them on Wikifunctions (
T420670
). A problem in the article creation workflow has also been addressed: attempting to create an abstract article for a Wikidata item that already has a page no longer overwrites existing content; now users see an appropriate message and are redirected to the existing article (
T420725
). In addition, previews now properly set content language and direction, improving alignment and readability, especially for RTL languages (
T420687
). Finally, we fixed a bug where we mis-set the page context, so publishing a new abstract article from some links would always fail (
T420916
).
News in Types: Grammatical voices
Based on two proposals by
Dv103
for
Grammatical voices
, a proposal for
active / middle / passive
, and a proposal for
active / mediopassive
, the respective two new lightweight enumerations have been created:
Grammatical voice (active / mediopassive) (
Z32792
and
Grammatical voice (active / middle / passive) (
Z32789
. They join the existing
Grammatical voice active / passive
lightweight enumeration.
Please join in
reviewing, discussing, and creating type proposals
Wikifunctions presentation at WikiCon Australia on 11 April 2026
Toby Hudson
will be presenting
Wikifunctions in Practice: Reusable Logic for Wikimedia
at
WikiCon Australia
on 11 April 2026 at 12:00 local time at the
National Film and Sound Archive of Australia
in
Canberra
Here is the description of the talk:
Wikifunctions promises something simple but ambitious: write logic once, and make it reusable across Wikimedia projects and languages. Small, well-chosen functions can have outsized impact and eliminate some updating, copy-pasting, or even translation.
This talk focuses on goals and practical usage rather than internals or programming, but will allow plenty of time for questions from the audience to dig into the details. We'll see what Wikifunctions is and what it's for. We will test a range of existing functions on Wikifunctions directly. We will see how to embed the result of a function call in a regular Wiki page elsewhere on a sister project. Then we will look ahead to how Wikifunctions will play a key role in the future Abstract Wikipedia.
Thank you Toby for giving this presentation! And everyone have fun at WikiCon Australia!
Volunteer’s Corner upcoming on 13 April 2026
The next Volunteers’ Corner will be on
Monday, 13 April 2026 at 17:30 UTC
. We plan to have the following agenda: there will be time to ask questions and discuss all matters arising. We will celebrate the launch of Abstract Wikipedia Beta. If we have time, we will either write a function together or work on an Abstract Wikipedia article together (volunteer-led). Everyone is welcome to join us on
Google Meet
Fresh Functions weekly: 102 new Functions
This week we had 102 new functions. This might be the first week where we ever had more than a hundred new functions. Here is an incomplete list of functions with implementations and passing tests to get a taste of what functions have been created. Thanks everybody for contributing!
add definite article to Lorrain form (
Z32387
" is a " in Lorrain (
Z32395
X exists in N Ys, English (
Z32399
Malay second superlative form (paling) (
Z32406
X has Y, fully specified, English (
Z32410
English simple present collective sentence (
Z32425
abstract wikilink (
Z32428
item has statement with value for property (
Z32431
Portuguese word is feminine (
Z32436
State location using entity and class, Japanese (
Z32442
flatten map function (
Z32453
find up to n best Wikidata statement values (
Z32456
English short description for painting (
Z32468
[name] was born [date] in [place]. (
Z32473
X has Y, semantic + optional grammar, English (
Z32496
grammatical features indicate plural (broadly) (
Z32506
grammatical features indicate definite article, En (
Z32516
Latin simple present collective sentence (
Z32522
remove macrons from string (
Z32527
simple present collective sentence (
Z32531
Creative work - entity, class, creator, English (
Z32536
filter statements by property type unless excluded (
Z32537
[cs] prefix with v/ve (
Z32541
grammatical features indicate indefinite article (
Z32550
fallback string if empty or not a string (
Z32556
load and find one best Wikidata statement value 2 (
Z32557
number of all statements of a Wikidata item (
Z32573
number of specific statements of a Wikidata item (
Z32577
Creative work - entity, class, creator (
Z32581
group Typed pairs by first element (
Z32585
Intro for year in Czech (
Z32588
Find lexemes for a Wikidata item in language group (
Z32599
plural from wikidata item in language w/ features (
Z32606
English verb describing noun sentence (
Z32621
item indicates definite article, English (
Z32645
item represents a person (
Z32663
item represents a position indic. "the" in English (
Z32668
Japanese article-less instantiating sentence (
Z32671
is Kleenean not True? (
Z32673
Creative work - entity, class, creator, Japanese (
Z32688
item is a subclass of item or up to N more levels (
Z32691
apply a 3-param fn to a list of firsts, same 2&3 (
Z32695
is Unicode code point a combining mark? (
Z32715
create wikitable from caption and cell fragments (
Z32731
State location using entity and class, Dutch (
Z32739
English item label has equivalent alias with "the" (
Z32749
list of strings from Monolingual stringset (
Z32753
monolingual stringset from multilingual & language (
Z32756
first monolingual stringset in language from list (
Z32757
identical monolingual stringset (
Z32758
language of monolingual stringset (
Z32766
list of strings from multilingual stringset & lang (
Z32772
Czech cardinal (
Z32780
try synthesising IPA transcription for Lexeme Form (
Z32787
IPA transcription from Japanese kana text (
Z32793
Latin verb describing noun sentence (
Z32831
plural section title (single QID) (
Z32839
verb describing noun sentence (
Z32843
State location using entity and class, Latin (
Z32848
State location using entity and class, Swedish (
Z32855
are Functions' input and output types identical? (
Z32864
Wikidata link for item (
Z32878
Japanese simple present collective sentence (
Z32881
complete list of all functions sorted by when they were created
is available.
Retrieved from "
Category
Status updates
Wikifunctions
Status updates/2026-04-02
Add topic