Abstract Wikipedia:Project chat
Abstract Wikipedia Project chat
This is where discussions on the project happen.
- More technical issues should go to: Report a technical problem.
- For older discussions, see the archives.
Spaces between sentences, another attempt
[edit]A month ago, @内存溢出的猫[spaces3 1] That discussion doesn't seem to have yielded any fixes or meaningful discussions, at least not that I can see.
Two weeks ago, I tried to bring up a similar topic, but that discussion somehow got derailed and also didn't yield anything useful.
Now, the problem looks differently, but it's still a problem. When I look at Q10251, for example, what I see is four sentences that appear with no spaces between them. Not one, not two—none at all. It looks like this:
- Plasma is a fundamental state of matter.Plasma is a classical state of matter.A plasma is a gas.A plasma is a matter.
Note that I emphasized appear: When I see them rendered on the screen, they have no spaces between them. In the HTML, however, they are represented as four <div>s, and their inline positioning is handled by CSS. This means, for example, that if I copy and paste them, I don't get a long string with no spaces after full stops, but four sentences with a single line break after each full stop:
Plasma is a fundamental state of matter.
Plasma is a classical state of matter.
A plasma is a gas.
A plasma is a matter.
This is not how it is supposed to be done. <div>s are supposed to be used for block elements and not hacked into appearing as if they are inline (also known as phrasing). Spaces between sentences are supposed to be real characters rather than HTML and CSS tricks, they may be different in different languages, and in some languages they may be nothing at all.
I hope that the definition of the problem is clear.
- ↑ According to Google Translate, it's pronounced "Nèicún yìchū de māo". Please correct me if it's wrong. When I write, I want to know how are things that I write pronounced aloud, and very unfortunately, I never learned to read Chinese characters, and even if I did, most English speakers probably didn't. Come to think of it, is there a function that reliably transliterates Chinese characters?
@Amir E. Aharoni Yes, it is correct. For pinyin transliterations, the only way is lemma-based. I'll also encourage you to read in underrepresented Varieties of Chinese :-) I am working on them on English Wiktionary. ——内存溢出的猫 (talk) 11:21, 18 June 2026 (UTC)
Amir E. Aharoni (talk) 12:49, 2 May 2026 (UTC)
- Hi, have a look at it now. Does this match your expectations? I think it's not rendering right now for whatever reason, but there are other examples of it being done this way that you can see: Q241691. The article renders properly in both English (spaces between sentences) and Japanese (no spaces at all).
- English:
Programmed Data Processor is a computer model series by Digital Equipment Corporation. PDP-8 is a Programmed Data Processor.
- Japanese:
PDPシリーズはディジタル・イクイップメント・コーポレーションによるコンピュータ・モデル・シリーズである。PDP-8はPDPシリーズである。
- I have some, err, strong opinions about Immanuelle's 「Abstract Wikipedia Editor」 tool, which is the predominant cause for all of these very janky and poorly-laid-out articles that you see. This is not how an article ought to be written on Abstract Wikipedia, and I and other editors are aware of this. If you see these problems, please do fix them! The wiki will be all the better for it.
- In the absence of consensus on such things as these (and awaiting any official policy pages) I have written f:User:Theki/best practices on my Wikifunctions userpage. You are welcome to read it if you wish. — rae5e <talk> 17:20, 2 May 2026 (UTC)
- The output of Q241691 looks OK to me in this regard. How was it done?
- Q10251 gives me an error. Amir E. Aharoni (talk) 18:10, 2 May 2026 (UTC)
- WikiLambda is doing WikiLambda things. This WASI time limit error happens intermittently on Abstract Wikipedia articles and it usually goes away after a short while. The only thing is that it doesn't really seem like purging these articles does anything to force the orchestrator to retry its evaluation so the article might not render that paragraph until someone comes in and pokes at it by editing it somehow.
- The working article uses the paragraph from sentences function to lay out its individual sentence content. This function automatically handles converting any and all text-like objects (strings, HTML fragments, and monolingual text) to a consistent form, so sentence fragments can all be supplied verbatim to its list input. When the function is putting the sentences together it defaults to using a single space to separate them, but first checks if the requested language is in the languages without spaces between sentences list. If it is, it doesn't add spaces at all, and just concatenates the sentences normally. I hope this explanation makes sense. — rae5e <talk> 18:19, 2 May 2026 (UTC)
- It makes some sense, but earlier, you suggested: "If you see these problems, please do fix them", and I'm not entirely sure how to do it. How would I fix it in Q100, for example? Amir E. Aharoni (talk) 19:41, 2 May 2026 (UTC)
- In this case you would do the following:
- At the bottom, click the plus and then 「Add empty fragment」.
- Set the function to f:Z33068, as mentioned earlier.
- Now go through each sentence fragment, find the innermost sentence-generation function, click on the three dots, and copy it. Do not copy the calls to f:Z29749 or similar, these are not necessary.
- Go to the paragraph with sentences function call and add an element to the list.
- Click on the three dots next to the new element, and paste in the earlier sentence fragment.
- You can now delete the original fragment and repeat the process in the same list for the one after it.
- — rae5e <talk> 19:46, 2 May 2026 (UTC)
- In this case you would do the following:
- It makes some sense, but earlier, you suggested: "If you see these problems, please do fix them", and I'm not entirely sure how to do it. How would I fix it in Q100, for example? Amir E. Aharoni (talk) 19:41, 2 May 2026 (UTC)
- @Theki I intend on fixing it, I recently made an attempt but the suggested fixes made problems worse. Do you have any practical suggestions of how to structure the templates? I will try to implement them when I have more time.
- Also your name is very confusing, are you in the process of getting it changed wiki-wide? Immanuelle (talk) 22:36, 2 May 2026 (UTC)
- Um, are you referring to my signature not matching my wiki username? I have considered for a long time changing it from theki, but I don't feel like putting in the effort when it seems to be perfectly ignorable for most people. The user 「Rae」 can't be usurped because they made, like, two or three articles on the Persian Wikipedia two decades ago or something, I don't know. If that weren't the case I would be User:Rae right now but after that failed to go through I just decided to stop bothering. Maybe at some point I'll come up with a username I'm happy with keeping for the foreseeable future but I have other concerns at the moment.
- Could you explain how your attempted fixes 「made problems worse」? Presently I side with Feeglgeef's sentiments and prefer to wait for abstract content to actually be feasible to make on a reasonably descriptive scale (see: the type proposals) before I go around making articles willy-nilly, which is what AWE has been doing—making a bunch of pretty low-quality articles on a massive scale when it probably really would have been better to, err, hold off on that.
- And I honestly know very little about the actual workings of your editor, I don't really use it nor am I familiar with its template syntax or whatever it may use, so I'm going to look over how it actually works and then get back to you on that. — rae5e <talk> 23:28, 2 May 2026 (UTC)
- Using this f:Z33068 made things worse Immanuelle (talk) 00:44, 3 May 2026 (UTC)
- That did not go through correctly but I do not think we have a proper thing for it. Immanuelle (talk) 00:45, 3 May 2026 (UTC)
- What? Could you elaborate? — rae5e <talk> 01:00, 3 May 2026 (UTC)
- @Immanuelle: I checked. Your issue is that your editor is not providing the article language to Z33068K2; that is, the paragraph from sentences function has a second argument, and your editor was omitting it. If you properly specify it, it will work. Please, next time, actually tell me what went wrong instead of going quiet and forcing me to look after it myself. — rae5e <talk> 17:06, 4 May 2026 (UTC)
- That did not go through correctly but I do not think we have a proper thing for it. Immanuelle (talk) 00:45, 3 May 2026 (UTC)
- Using this f:Z33068 made things worse Immanuelle (talk) 00:44, 3 May 2026 (UTC)
- I avoid f:Z33068 for now, because executing a whole paragraph in a single call would often time out. So my current alternative is inserting f:Z35672 between sentences. Fairly clunky, but it works... --99of9 (talk) 06:08, 28 May 2026 (UTC)
- Can you categorize the talk pages of articles you're doing that with? It has major accessibility concerns for our friends using screen readers, so it'd be nice to be able to find those with issues when were able to fix the calls Feeglgeef (talk) 21:50, 28 May 2026 (UTC)
- I think the new tool can show us this (via dumps). For example, here are the uses of 'paragraph': https://abstract-data.toolforge.org/zid/Z32123 --99of9 (talk) 23:07, 28 May 2026 (UTC)
- There's more than one way to not use spaces correctly and more than one way to use spaces correctly, this wouldn't catch all of them. Feeglgeef (talk) 23:13, 28 May 2026 (UTC)
- I'm not totally sure what you want to track, but I'm confident that this will find all my uses. --99of9 (talk) 02:10, 29 May 2026 (UTC)
- I think it slipped past everyone's notice, but I made a template for linking to that sort of information @ {{zd}}. sentence separator (Z35672) (search, stats) (I don't think the database dumps have noticed the function you're using yet, so it's a 404 at the moment.) — rae5e <talk> 01:09, 29 May 2026 (UTC)
- @rae Great! Would you be willing to add it to https://abstract.wikipedia.org/wiki/Abstract_Wikipedia:Useful_functions_for_article_composition ? So9q (talk) 12:47, 10 July 2026 (UTC)
- There's more than one way to not use spaces correctly and more than one way to use spaces correctly, this wouldn't catch all of them. Feeglgeef (talk) 23:13, 28 May 2026 (UTC)
- I think the new tool can show us this (via dumps). For example, here are the uses of 'paragraph': https://abstract-data.toolforge.org/zid/Z32123 --99of9 (talk) 23:07, 28 May 2026 (UTC)
- Can you categorize the talk pages of articles you're doing that with? It has major accessibility concerns for our friends using screen readers, so it'd be nice to be able to find those with issues when were able to fix the calls Feeglgeef (talk) 21:50, 28 May 2026 (UTC)
Easier solution?
[edit]Maybe a much easier solution would be to replace the "." after each sentence with ". " (a full stop and a space). The paragraghs might add an extra space, but that is displayed as one by the browser. HenkvD (talk)
- @HenkvD: I originally thought this was a bit hacky, but it actually makes sense -- the spacing is determined by punctuation. For example, English used to have the convention of using two spaces, Chinese uses no spaces, and in Tibetan, ། marks the end of a short phrase or sentence (still needs a space after it), while ༎ marks the end of a paragraph. (Yes, there's a dedicated paragraph-ending punctuation mark!) This at least matches our current abstraction model well. Also, I don't think this will lead to extra spaces. ——内存溢出的猫 (talk) 11:21, 18 June 2026 (UTC)
- <tangent> 「Yes, there's a dedicated paragraph-ending punctuation mark!」 We English folk have used ¶ for that before, so I don't suppose a paragraph mark in Tibetan is all that unusual... </tangent> — rae5e <talk> 17:25, 18 June 2026 (UTC)
- An unnecessary space in the end of a text, though invisible, cannot be a good idea. Amir E. Aharoni (talk) 11:43, 18 June 2026 (UTC)
- I agree. We should not change functions which correctly return sentences into functions which return sentences with spaces stuck to them. Z35672 (search, stats) works well until the performance is good enough for Z33068 (search, stats). --99of9 (talk) 12:34, 18 June 2026 (UTC)
- I think if the current WL system allowed for starting tags and then ending them at a later indeterminate point, Z33068's performance issues could be perhaps mitigated slightly. One could use a start paragraph call, followed by some sentences in some well-established form, and then close the paragraph with an end paragraph call. An issue I've had with paragraphs is that you can't see the paragraph build itself up sentence-by-sentence, and the failure of a single function call means the inability of the entire paragraph to render at all—something that would, of course, be fixed by making paragraphs more granular in this way. Something to think about, although I am sure it's not possible presently (since the abstract HTML renderer doesn't build up the document gradually, and instead expects the HTML to be well-formed from the outset). — rae5e <talk> 17:28, 18 June 2026 (UTC)
- Each fragment is its own div, and you can't do <div><p></div><div>[text]</div><div></p></div>, it will break the browser's tag grouping. Feeglgeef (talk) 18:55, 18 June 2026 (UTC)
- Hence why I mentioned that I don't suspect it will be possible. The concept is just something to think about. — rae5e <talk> 19:34, 18 June 2026 (UTC)
- Each fragment is its own div, and you can't do <div><p></div><div>[text]</div><div></p></div>, it will break the browser's tag grouping. Feeglgeef (talk) 18:55, 18 June 2026 (UTC)
- I think if the current WL system allowed for starting tags and then ending them at a later indeterminate point, Z33068's performance issues could be perhaps mitigated slightly. One could use a start paragraph call, followed by some sentences in some well-established form, and then close the paragraph with an end paragraph call. An issue I've had with paragraphs is that you can't see the paragraph build itself up sentence-by-sentence, and the failure of a single function call means the inability of the entire paragraph to render at all—something that would, of course, be fixed by making paragraphs more granular in this way. Something to think about, although I am sure it's not possible presently (since the abstract HTML renderer doesn't build up the document gradually, and instead expects the HTML to be well-formed from the outset). — rae5e <talk> 17:28, 18 June 2026 (UTC)
- I agree. We should not change functions which correctly return sentences into functions which return sentences with spaces stuck to them. Z35672 (search, stats) works well until the performance is good enough for Z33068 (search, stats). --99of9 (talk) 12:34, 18 June 2026 (UTC)
Translations
[edit]Yes, this question is probably easily answerable through a Web search, but I thought I'd ask here anyways. I am unfortunately not bilingual... I know Toki Pona, but it's a constructed language. I'd love to be a polyglot of some sorts but that is a future thing. I've been trying to translate pages into tok, for funsies mostly.
At any rate, I want to convert some of the un-translated pages, namely Feeglgeef's policy drafts, into ones that can be translated (and then translate them into Toki Pona of course). I think I have to be a translation administrator for this? Which is a process that I'd have to apply for, and I doubt I have the credentials to be accepted for such a role. Regardless, is there a way I can go about this without having to do it through someone else? I can probably easily find documentation on marking pages for translation but I don't know how much I'm actually capable of doing as just a regular user. Should I apply? — rae5e <talk> 14:15, 20 May 2026 (UTC)
- Most of the process of preparing a page for translation can be done by any editor. See mw:Help:Extension:Translate/Page translation example.
- The step of marking a page or translation for the first time or after changes must be done by a translation administrator.
- I recommend learning the <translate> and <tvar> syntax and using it on a few pages before applying for this permission. After you do it on a few pages, and you feel confident, and you want to do it more, you can ask for the permission. Amir E. Aharoni (talk) 14:28, 20 May 2026 (UTC)
- Just to confirm, did I mark up this page for translation properly? I thought to give the hatnote its own
<translate>enclosure so as to exclude the indent and italicization from needing to be included in the translatable text. — rae5e <talk> 15:10, 20 May 2026 (UTC)- Mostly properly, but don't exclude
''for italics from translation. It's generally a good idea to exclude complex markup from translation because it's hard for many people to type, and it usually stays the same in translation anyway.''for italics is different, however: it's very simple to type and familiar to most editors; italic letters are used differently in different languages, and in some languages they aren't used at all, so translators need the freedom to use them appropriately; this markup can also appear in the middle of a translation unit and not only in the ends. Amir E. Aharoni (talk) 15:35, 20 May 2026 (UTC)- Thank you for the guidance. Should the italics be included if they are used over the entire hatnote? I figure that placement of italics should be left up to the discretion of the translators, but the hatnote itself is meant to be entirely italicized, I would think irrespective of the language it's in. Is this the right idea or should they still be kept within the translation unit? — rae5e <talk> 15:45, 20 May 2026 (UTC)
- Yes, italics should be included in the translation unit if they are used over the entire hatnote. Some languages don't use italic writing at all, so it shouldn't be forced. Amir E. Aharoni (talk) 18:36, 20 May 2026 (UTC)
- Thank you for the guidance. Should the italics be included if they are used over the entire hatnote? I figure that placement of italics should be left up to the discretion of the translators, but the hatnote itself is meant to be entirely italicized, I would think irrespective of the language it's in. Is this the right idea or should they still be kept within the translation unit? — rae5e <talk> 15:45, 20 May 2026 (UTC)
- Mostly properly, but don't exclude
- Just to confirm, did I mark up this page for translation properly? I thought to give the hatnote its own
- I'd support a translation administrator request ;), for reasons below. I'm not sure why we need a seperate translation administrator right, or why we have to call it an "administrator" (deciding that a page could be translated is a much less important role than, say, page deletion, or blocking). We picked three of them (well, one of them went through the WMF, so we picked two), they don't appear very active, though, only marking 9 times this month, zero (0) of which were for pages marked for the first time. Both community translation admins used their global history and rights to get the role and only stop by occasionally, so having one who actually edits here would be nice. Feeglgeef (talk) 15:06, 20 May 2026 (UTC)
- This reply echos my philosophy of a sort of wiki-xenophobia (the term xenophobia is probably too harsh, and I wouldn't consider myself one in real life, but it's the best word I can think of), I generally distrust users with a lot of global rights (both global sysop etc. and large amounts of local rights) who come make metapedian contributions, not as people but to their ability to handle Wikifunctions and Abstract Wikipedia as incredibly unique and technically complex projects. I apologize if it my opinions come off as rude or ungrateful, I do appreciate the work of our translation administrators. Feeglgeef (talk) 15:26, 20 May 2026 (UTC)
- You don't bother me, it's fine. I think they definitely have a place, they can be useful and they usually are. Obviously local admins and what have you that earned their roles through the trust and reputation of the specific community they are in are going to occupy a more trusting position in my mind than a global sysop or global anything. Specialized role members are good and healthy in the long term; I think we are giving these privileges to global users sparingly as the project is still in its infancy and as core contributors emerge and take up key positions we will have a more well-rounded and self-sustaining community with less global privileges needed to take up certain tasks. Wikifunctions probably needed some Foundation members or other staff to act as functioneers initially while the general community was still orienting themselves with WikiLambda and working on applying for the role, but now we have 74(!) of them and the number of normal members using their specialized skills outnumbers those who were "grandfathered" in (for lack of a better term) or similar. The wiki is young—it just needs time. I myself have been considering applying for sysop privileges since they are obviously needed (there being exactly Zero of them at the moment); I've been weighing the pros and cons of such a commitment, it's obviously a lot to take up. I wish your sysop request went through, I think you would have made a great admin here. I'm unsure of what others think of my capabilities, I'm rather in-and-out around these social spaces so I don't know if there's much to go off of. — rae5e <talk> 15:55, 20 May 2026 (UTC)
- Totally agree, and I'd support a sysopship request as well, though I'm apparently not good at assessing what the community considers supportable in admin candidate ;).
- Off-topic, but interestingly, the sysop toolset allows you to grant yourself translation adminship. I'm not sure if sysops are expected not to grant themselves the permissions (kind of like how on enwiki 'crats are expected not grant themselves any rights without discussion despite having the technical rights), but I did it to myself on WF because another sysop had. Additionally, the functioneer right exists on this wiki, with the same rights on WF, despite all of them not doing anything on this wiki. I believe this is because, on the technical side, both AW and WF are powered by the same MediaWiki extension (Wikilambda), with one wiki set to a mode for abstract articles and another set to a mode for ZObjects. Checking the Dagbani Wikipedia supports this theory. Feeglgeef (talk) 18:00, 20 May 2026 (UTC)
- It always depends on the local policy. For Wikifunctions it is: Administrators do not need to undergo another discussion to become translation administrators; they can self-grant the rights to their account if necessary. Temporary administrators are not allowed to self-grant permanent translation administrator rights.
- The availability of the functioneer right is a bug, see phab:T407066. --Ameisenigel (talk) 19:36, 20 May 2026 (UTC)
- If you don't consider yourself a xenophobe in real life, I would recommend not calling yourself that here, or anywhere really. Especially since it was the ideological capture during the 2010s of the Croatian-language Wikipedia w:hr: by actual xenophobes that was part of the impetus for Abstract Wikipedia according to Denny's blog. Arlo Barnes (talk) 22:10, 26 May 2026 (UTC)
- You don't bother me, it's fine. I think they definitely have a place, they can be useful and they usually are. Obviously local admins and what have you that earned their roles through the trust and reputation of the specific community they are in are going to occupy a more trusting position in my mind than a global sysop or global anything. Specialized role members are good and healthy in the long term; I think we are giving these privileges to global users sparingly as the project is still in its infancy and as core contributors emerge and take up key positions we will have a more well-rounded and self-sustaining community with less global privileges needed to take up certain tasks. Wikifunctions probably needed some Foundation members or other staff to act as functioneers initially while the general community was still orienting themselves with WikiLambda and working on applying for the role, but now we have 74(!) of them and the number of normal members using their specialized skills outnumbers those who were "grandfathered" in (for lack of a better term) or similar. The wiki is young—it just needs time. I myself have been considering applying for sysop privileges since they are obviously needed (there being exactly Zero of them at the moment); I've been weighing the pros and cons of such a commitment, it's obviously a lot to take up. I wish your sysop request went through, I think you would have made a great admin here. I'm unsure of what others think of my capabilities, I'm rather in-and-out around these social spaces so I don't know if there's much to go off of. — rae5e <talk> 15:55, 20 May 2026 (UTC)
- This reply echos my philosophy of a sort of wiki-xenophobia (the term xenophobia is probably too harsh, and I wouldn't consider myself one in real life, but it's the best word I can think of), I generally distrust users with a lot of global rights (both global sysop etc. and large amounts of local rights) who come make metapedian contributions, not as people but to their ability to handle Wikifunctions and Abstract Wikipedia as incredibly unique and technically complex projects. I apologize if it my opinions come off as rude or ungrateful, I do appreciate the work of our translation administrators. Feeglgeef (talk) 15:26, 20 May 2026 (UTC)
Policy drafts
[edit]Hi all! I've written some draft policies and guidelines over the last few days. We're not a bureaucracy, so the point is not to set some rules but to kick off some discussions as to how our wiki will work. So far, I've created:
I've written them as my opinion on what should happen, but I'm hoping to align them with community consensus as we discuss them more. Feeglgeef (talk) 13:44, 21 May 2026 (UTC)
Wikifunctions & Abstract Wikipedia Newsletter #249 is out: Annual plan 2026-2027
[edit]There is a new update for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we present you the current draft of objectives for Wikifunctions and Abstract Wikipedia in the WMF Annual Plan 2026-2027, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check our archive!
Enjoy the reading! -- User:Sannita (WMF) (talk) 09:48, 25 May 2026 (UTC)
To abstract Wikipedia or be the Abstract Wikipedia
[edit]There is a discussion happening about what the notability criteria for Abstract Wikipedia should be, and in trying to participate I've found my idea of Abstract Wikipedia is awfully abstract. Is Abstract Wikipedia supposed to abstract Wikipedia, as in abstracting information from existing articles on the language Wikipedias (barring new contributions), or is it supposed to become the Abstract Wikipedia, supporting collaboration across all languages like it's the language Wikipedia to end all language Wikipedias (allowing new contributions)? I thought the answer would be obvious, but the name Abstract Wikipedia is a bit ambiguous. Am I missing something? Some helpful person (talk) 02:16, 27 May 2026 (UTC)
- I think (@DVrandecic (WMF)?) the idea is (and I personally prefer) the latter. I believe that, given the fact that it's much easier to write a concrete article than an abstract article, and the fact that the community of potential future contributors on enwiki is skeptical at best, we ultimately will never expand beyond the size of other wikis, but I see no problem with allowing volunteers to add information not on other wikis (it's probably not the most effective, but they're volunteers, beggars can't be choosers), as long as it's not vandalism, useless, or promotional slop. Feeglgeef (talk) 02:31, 27 May 2026 (UTC)
- @Some helpful person Abstract Wikipedia is a Wikipedia, where people can collaborate across languages on articles, which can then be used to fill gaps in the existing Wikipedias. Whereas I expect that current Wikipedia articles might be used as a convenient starting point for many of the articles in Abstract Wikipedia, this is more a consequence of Wikipedia being one of the best places to go to to find reliable knowledge, but that is not part of how it is supposed to work. So, this is not to abstract the existing Wikipedias, but to collaborate on an Abstract Wikipedia. At no point is this meant to replace existing Wikipedias. (Thanks to @Feeglgeef for the ping!) --DVrandecic (WMF) (talk) 17:01, 27 May 2026 (UTC)
- Thank you, this makes a lot more sense now. Some helpful person (talk) 21:52, 27 May 2026 (UTC)
template suggestion
[edit]Some way to mock abstract syntax on talk and project pages, analogous to those in d:category:format Template. Arlo Barnes (talk) 15:21, 27 May 2026 (UTC)
- Hmm. I agree.
- Workshopping ideas for how it works:
- Invokation: {{Call|Z26039|{"Z1K1": "Z18", "Z18K1": "Z825K1"}|{"Z1K1": "Z6091", "Z6091K1": "Q634"}|{"Z1K1": "Z18", "Z18K1": "Z825K1"}|lang=en}}
- This could then be suplemented by helper templates: {{Call|Z26039|{{Wikidata item argument reference}}|{{Wikidata item reference|Q634}}|{{Language argument reference}}}}
- This would result in "subject is instance of (string) (wikidata item reference, planet, language)"
- Icons are missing in this example, I'm not sure if we can actually add them
- Invokation: {{Call|Z26039|{"Z1K1": "Z18", "Z18K1": "Z825K1"}|{"Z1K1": "Z6091", "Z6091K1": "Q634"}|{"Z1K1": "Z18", "Z18K1": "Z825K1"}|lang=en}}
- Thoughts? Feeglgeef (talk) 16:04, 27 May 2026 (UTC)
Marking NLG Default text
[edit]Some NLG functions give default texts, like Z33420 will give text like "Paris ∈ {city}". sometimes in other languages the English text is show. Currently there is no visual clue that these texts are not normal text in the requested language. I propose we mark these text with color Paris ∈ {city} with something like <span style="color:magenta;">Paris ∈ {city}</span>. To have this configurable/maintainable this could be included in a function, called NLG default text or so, with a text as input an a text in color as output. The exact formatting like magenta color or gray background or something else can be discussed/decided later. To have it even more configurable on personal stylesheets it could use a class like <span class="NLG Default text">Paris ∈ {city}</span>. What do you think? Could somebody make such a function already? HenkvD (talk) 12:00, 29 May 2026 (UTC)
- The are technically just monolingual texts in a language called "multiple languages". I threw a prototype together really quickly, f:Z35839. It will accept strings, monolingual texts, and html fragments as input, so you have to select which type you want. Feeglgeef (talk) 14:59, 29 May 2026 (UTC)
- OK, thanks, I added it to f:Z26039 and works as expected, see here. The test for the function with default text now fails because it now is in magenta color. That was to be expected. I will leave the tests unchanged if that is OK with you, as we might need to change the exact formatting.
- Is it OK to add this to other NLG functions that produce default output? HenkvD (talk) 15:59, 29 May 2026 (UTC)
- Sure, be bold! Feeglgeef (talk) 20:50, 29 May 2026 (UTC)
- Feeglgeef, I am struggling with the output. Can you have a look? HenkvD (talk) 17:02, 30 May 2026 (UTC)
- Can you link me to where? Feeglgeef (talk) 17:08, 30 May 2026 (UTC)
- Paris (Q90) in a language vls should give a magenta text. Instead it gives "Wikifunctions returned a failed response: Unspecified error". f:Z33422 results "Parys ∈ {stad}" (as a string). f:Z26039 also gives "Parys ∈ {stad}", but it's test f:Z33726 gives an HTML equivalent, not a string. HenkvD (talk) 17:59, 30 May 2026 (UTC)
- You shouldn't be returning HTML in string-typed functions. I'm not sure, then, how we implement your proposal, actually. Feeglgeef (talk) 18:54, 30 May 2026 (UTC)
- I tried with f:Z35921 but now the output is the literal text, and not HTML. Does anybody have an idea how to implement the text in a color?
- Alternatively we could use texts like // Parys ∈ {stad} //. HenkvD (talk) 16:51, 31 May 2026 (UTC)
- You need to output HTML fragment, not String. Feeglgeef (talk) 17:16, 31 May 2026 (UTC)
- You shouldn't be returning HTML in string-typed functions. I'm not sure, then, how we implement your proposal, actually. Feeglgeef (talk) 18:54, 30 May 2026 (UTC)
- Paris (Q90) in a language vls should give a magenta text. Instead it gives "Wikifunctions returned a failed response: Unspecified error". f:Z33422 results "Parys ∈ {stad}" (as a string). f:Z26039 also gives "Parys ∈ {stad}", but it's test f:Z33726 gives an HTML equivalent, not a string. HenkvD (talk) 17:59, 30 May 2026 (UTC)
- Can you link me to where? Feeglgeef (talk) 17:08, 30 May 2026 (UTC)
- Feeglgeef, I am struggling with the output. Can you have a look? HenkvD (talk) 17:02, 30 May 2026 (UTC)
- Sure, be bold! Feeglgeef (talk) 20:50, 29 May 2026 (UTC)
- I agree with the above that this should not be applied to functions which return strings or monolingual text. If anything, it might work to insert it into functions returning HTML. The most egregious problems I've seen are when I tried to render into an RTL language (e.g. Hebrew 0 try on Q408), and it spilled all the formatting all over the article. I will revert the change to the string default at f:Z33421, but suggest it is tested carefully if implemented elsewhere. In general I prefer just marking with spans rather than colours at this stage. --99of9 (talk) 04:49, 3 June 2026 (UTC)
- Perhaps mark with spans given a specific ID and then allow users to use a userscript/gadget to paint them magenta? That seems like the most considerate approach. Feeglgeef (talk) 05:12, 3 June 2026 (UTC)
- f:Z32234 suggests something like
span lang="mul"or similar. 99of9 (talk) 05:20, 3 June 2026 (UTC)- I will (carefully) try some other alternatives, and use a personal class in my userscript for <span class="NLG Default text">. HenkvD (talk) 14:05, 4 June 2026 (UTC)
- If possible, can you use <span lang="mul">? This would allow it to also catch some instances automatically. Feeglgeef (talk) 16:14, 4 June 2026 (UTC)
- I have done so, but how can I set my personal stylesheet to show color magenta with <span lang="mul">? HenkvD (talk) 22:20, 4 June 2026 (UTC)
- try adding this to Special:MyPage/common.css:
- [lang="mul"] {
color: magenta;
} Feeglgeef (talk) 23:48, 4 June 2026 (UTC)
- I have done so, but how can I set my personal stylesheet to show color magenta with <span lang="mul">? HenkvD (talk) 22:20, 4 June 2026 (UTC)
- If possible, can you use <span lang="mul">? This would allow it to also catch some instances automatically. Feeglgeef (talk) 16:14, 4 June 2026 (UTC)
- I will (carefully) try some other alternatives, and use a personal class in my userscript for <span class="NLG Default text">. HenkvD (talk) 14:05, 4 June 2026 (UTC)
- f:Z32234 suggests something like
- Perhaps mark with spans given a specific ID and then allow users to use a userscript/gadget to paint them magenta? That seems like the most considerate approach. Feeglgeef (talk) 05:12, 3 June 2026 (UTC)
- I created a new implementation for f:Z35921 using emoji text, resulting in texts like "❌≪Paris ∈ {city}≫❌". It works on Q90 for not yet specified languages like Zeelandic. I will be bold in adding this other functions that use default texts. HenkvD (talk) 11:26, 5 June 2026 (UTC)
Ratification of the deletion policy proposal?
[edit]I haven't seen any unresolved objections to my proposal for a policy for deletion. Does anybody have any issues, and, if not, is it ok to ratify as an actual policy? I intend to remove the draft template and replace it with a policy template unless anyone voices any objection within a week. Feeglgeef (talk) 20:55, 29 May 2026 (UTC)
- Is it just me or does Abstract Wikipedia:Deletion policy#Reasons for deletion render blank with only number bullets without the actual text after 1. or 2.? Bunnypranav (talk) 07:13, 30 May 2026 (UTC)
- I see text. ―Justin (koavf)❤T☮C☺M☯ 07:49, 30 May 2026 (UTC)
- I can see on my phone, but it goes blank on my laptop. What is the role of <span class="anchor" id="1">? Bunnypranav (talk) 12:15, 30 May 2026 (UTC)
- @Bunnypranav: I can see the text everywhere (I tested connected and not connected, on my phone, laptop, with Chrome or Firefox ; what system do you use?). As the name suggest, the span anchor is here to create an HTML anchor, so you can do link like Abstract_Wikipedia:Deletion_policy#7. Cheers, VIGNERON (talk) 13:49, 30 May 2026 (UTC)
- I'm on Brave browser. Nevertheless, forget it. The culprit might be some random customization I did to my system which I cannot recollect. The reason is the span tag only though, tried a preview kicking out a text to just outside the tag and it worked. Bunnypranav (talk) 14:23, 30 May 2026 (UTC)
- @Bunnypranav: I can see the text everywhere (I tested connected and not connected, on my phone, laptop, with Chrome or Firefox ; what system do you use?). As the name suggest, the span anchor is here to create an HTML anchor, so you can do link like Abstract_Wikipedia:Deletion_policy#7. Cheers, VIGNERON (talk) 13:49, 30 May 2026 (UTC)
- I can see on my phone, but it goes blank on my laptop. What is the role of <span class="anchor" id="1">? Bunnypranav (talk) 12:15, 30 May 2026 (UTC)
- I see text. ―Justin (koavf)❤T☮C☺M☯ 07:49, 30 May 2026 (UTC)
- Globally, it looks fine. I think that reasons 7 and 8 may need some examples/clarifications. There is no global consensus when it comes to creating categories. For example, categories for building interiors and exteriors. Personally, I feel that they are useful for easier discoverability. John Samuel (talk) 15:39, 30 May 2026 (UTC)
- I've copied them over from enwiki. They're probably included in "content otherwise not suited for an encyclopedia." Since sysops can't speedy them, it'd be up to commenters on Abstract:RFD to determine. Feeglgeef (talk) 16:48, 30 May 2026 (UTC)
- Done! Feeglgeef (talk) 22:33, 5 June 2026 (UTC)
Wikifunctions & Abstract Wikipedia Newsletter #250 is out: Looking back and forward
[edit]There is a new update for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we present you a recollection of our work so far, now that we celebrate our 250th newsletter, we share with you a summary of our latest outreach activities, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check our archive!
Enjoy the reading! -- User:Sannita (WMF) (talk) 10:04, 1 June 2026 (UTC)
Yet another suggested function proposal
[edit]Perhaps it's a bit early, but can f:Z36049 be added to MediaWiki:AbstractWikiSuggestedWikifunctions.json? See Q38726 for an example use. Feeglgeef (talk) 23:54, 4 June 2026 (UTC)
- Meh. Consider this withdrawn until we know more about what we want image creation to look like. Feeglgeef (talk) 05:06, 5 June 2026 (UTC)
Wikifunctions & Abstract Wikipedia Newsletter #251 is out: The illustrated encyclopaedia
[edit]There is a new update for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we introduce our first function to import images on Abstract Wikipedia, we present our Functions of the Week, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check our archive!
Also, we remind you that if you have questions or ideas to discuss, the next Volunteers' Corner will be held on June 8, at 17:30 UTC (link to the meeting).
Enjoy the reading! -- User:Sannita (WMF) (talk) 14:14, 5 June 2026 (UTC)
Questions on a simple fragment example "The Eiffel Tower is a monument"
[edit]Moved from f:Wikifunctions:Project chat
Hello. I would like to be able to use the function f:Z26039 to generate sentences like "the Eiffel Tower is a monument" or "la torre Eiffel es un monumento" in Spanish. It already raises a lot of questions.
Question 1: I should be able to set the first input "entity" to Eiffel Tower (Q243) and the second input "class" to monument (Q4989906) and get the correct sentence, shouldn't I? Just checking.
Question 2: f:Z26039 calls a language-specific function like "Spanish article-less instantiating sentence" f:Z26337, which uses the label of the Wikidata item to get the text for "Eiffel Tower", which is similar to the lemma of the lexeme. But this would not be acceptable in production, would it? The item label "belongs" to all Wikidata users, not to Abstract Wikipedia users, and there is no guarantee what it might contain, such as a parenthesis for disambiguation. Or am I wrong?
Question 3a: We need to have a lexeme for the combination "Eiffel Tower" in each language, don't we? For instance in languages with gender, the lexeme is the only place to find the gender. It is true that if we know that the equivalent of "Tower" is the head word, syntactical information can be found under the lexeme for "tower", and it would be good to use a system like that. But the only place that the syntactic dependency information could be located is under the lexeme.
Question 3b: At present for f:Z26039 etc. to work, we have to add any forms or syntax information to the lexeme of the whole phrase, such as "Eiffel Tower". But property combines lexemes (P5238) with attributes syntactic dependency head relationship (P9763) and syntactic dependency head position (P9764) can be used to define the structure and avoid duplicating the syntax information. What lexeme would be used for "Eiffel" in this case? Would it be the same as a lexeme for Gustave Eiffel (Q20882)? That makes no sense to me. I propose that there should be a dummy lexeme in each language which could be added to combines lexemes (P5238) instead of a real lexeme to mean "invariant element".
Question 4: As has already been pointed out elsewhere, the fragment functions do not work well with the initial definite article in languages like English, Spanish and German. Examples:
- "The Eiffel Tower is a monument." The item label "Eiffel Tower" omits the article and so the result omits the initial "The" in English. French, Spanish and German are similar.
- "The Sun is a star." Similarly the article is wrongly omitted, also in French, Spanish and German.
- "Westminster Abbey is a monument." This is OK in English and German as no article is needed, but not in French or Spanish where it is, for instance "La Abadía de Westminster es un monumento".
- "Latin is a dead language." Also this is OK in English and German but not in French or Spanish, where an article is needed.
- "Jupiter is a planet.". This does not need an article and is OK in all the languages; I include this to show that you cannot assume that there is an article in all cases in French and Spanish.
How should the language functions find out whether an article is needed? In some cases, where the lemma is a phrase like "Abadía de Westminster" in Spanish, I think that it could be deduced, but in general there is no rule to give the answer. Using different rendering functions according to the case is not a solution, although it might work for a few specific languages like these four. It would not be acceptable because there will be many, many other cases of syntactical choices to be made for all the different languages, and we cannot expect the person writing the abstract code to take them all into account. So I suppose that a declaration in the lexeme is needed to solve this problem. I suppose that there must already be linguistic terminology for this problem, but I don't know it.
I would be grateful for any comments on any of these questions. Strobilomyces (talk) 15:02, 5 June 2026 (UTC)
- @Strobilomyces I will try to answer a few of your questions, although I am not linguist.
- @HenkvD Thanks for your answer. I will add my comments in your answers below. Strobilomyces (talk) 18:42, 9 June 2026 (UTC)
- 1. Yes I agree the correct inputs for "entity" is Eiffel Tower (Q243) and the second input "class" is monument (Q4989906).
- 2. In case no lexeme information is needed (for gender or so) the Wikidata label of Eiffel Tower (Q243) should be OK. Labels in Wikidata don't contain parentheses for disambiguation. For instance there are many cities called Amsterdam like Amsterdam (Q478456). Amsterdam (Q959016) and Amsterdam (Q727)
- Well I sometimes add disambiguation parentheses in the case of taxonomic items, for instance I use the label "Sphaerodes (fungus)" because the genus name Sphaerodes is both a fungus and an insect. As far as I know, it is allowed to add a parenthesis like this to the label. When selecting the item this is not needed, since the description is also visible, but when looking at the genus name on the page, one would not be able to tell whether the link goes to the fungus or the insect, and sometimes such links get muddled up. If there should be a rule that the label must be the same as the lemma text, then I think that needs to be agreed and publicized.
- 3a. In case gender is needed, for example for gender for La Abadía de Westminster I think we need lexemes
- Yes, so it seems to me that this means that for languages like French and German, every single item needs a lexeme. On the other hand, in a separate conversation it was suggested to me that genders might be established programmatically, and the lexeme would only be needed in exceptional cases. This seems to require an architecture which is different from what I was expecting, and certainly not available at present for the fragment examples (surely the logic will be too complicated for composition code alone). Even in English, many items may need to be used in the plural; the rendering function will need to find the plural of the given item. It can execute a heuristic function (add "s", change "y" to "ies", etc.), and a lexeme is only needed if the label word is "irregular". But note that it has to query the lexeme every single time to see if one exists, in which case it must take precedence.
- 3b. I don't know what you mean, so I can't answer that.
- It is a detailed question about how to fill in the attributes of combines lexemes (P5238).
- 4. You are right some examples like Sun is a star" are incorrect and need an article for some languages/some lemmma. I don't know if there is a linguistic terminology or Lexeme property that would indicate it needs an initial definite article.
- Yes. In fact, the strange thing for me is rather that in encyclopedia entries, the article is omitted in the article heading. For instance, in the examples above if the English labels were given as "The Eiffel Tower" and "The Sun", and similarly in the other languages, the fragment examples would work and where would be the problem? In paper encyclopedias, this would mean that many entries would come together under "The". Anyway, I don't think this can be changed and so a property is needed. I would have thought that the property would have to be on a lexeme object.
- On Amsterdam (Q727) in English the noun Netherlands has an additional "the" in English. This is added by f:Z32645 item indicates definite article, English. Functions should be created for each language, and added to the appropriate sentences. HenkvD (talk) 11:58, 9 June 2026 (UTC)
- Oh, Z32645 is interesting. The two implementations are very different, aren't they? The function doesn't work for "Eiffel Tower", but the first implementation could do if "the Eiffel Tower" were an alias. That could be instead of the lexeme property(?) But if we are imposing conventions like that, I suppose we need to talk to other Wikidata users.
- Even for western languages there are a lot of different rules; What about the many other languages in the world. All this makes it a real challenge. HenkvD (talk) 22:04, 8 June 2026 (UTC)
- Yes, I think it is an extreme challenge, especially withou being able to call external functions in Python etc. Surely this is too complicated for composition? Thanks again for your answers. Strobilomyces (talk) 18:42, 9 June 2026 (UTC)
- This was discussed at Monday’s volunteers’ corner meeting (8 June 2026). It was also discussed to find a place where to discuss this in detail. Please mention that place here if that place is known. HenkvD (talk) 11:26, 13 June 2026 (UTC)
- See also f:Wikifunctions:Status updates/2026-06-19#The or not the, this is (the?) question. HenkvD (talk) HenkvD (talk) 11:39, 19 June 2026 (UTC)
- @HenkvD Thanks for the links which you have just made here and also thanks to whoever is involved in covering the question in the status update. I don't think that the status update talk page is used for such comments, is it? Until there is another suggestion, I don't know a better place to discuss than here, and so I will carry on here.
- I am guilty of not getting around to commenting on the status update discussion - there is always more that I want to say before publishing. Now I will try to keep my edits small.
- My view was that a lexeme would be necessary almost for every item in every language, but in the meeting it was argued that often syntactic information could be found through programmatic "rules of thumb", and that in that way, lexemes would be needed only in cases of irregularity. Note that it is still necessary to search for the lexeme properties in every case; the programmatic rules would only apply if the lexeme property is missing.
- My main comment now is that a programmatic approach is too complicated for doing everything by composition and so we urgently need to be able to call functions from Python/Javascript. I hope that that will come soon. Strobilomyces (talk) 15:28, 19 June 2026 (UTC)
- See also f:Wikifunctions:Status updates/2026-06-19#The or not the, this is (the?) question. HenkvD (talk) HenkvD (talk) 11:39, 19 June 2026 (UTC)
- This was discussed at Monday’s volunteers’ corner meeting (8 June 2026). It was also discussed to find a place where to discuss this in detail. Please mention that place here if that place is known. HenkvD (talk) 11:26, 13 June 2026 (UTC)
- Yes, I think it is an extreme challenge, especially withou being able to call external functions in Python etc. Surely this is too complicated for composition? Thanks again for your answers. Strobilomyces (talk) 18:42, 9 June 2026 (UTC)
- At the volunteers' meeting it was even suggested that grammatical genders could be determined programmatically sometimes. For instance in Spanish most rivers are masculine and in French trees are generally masculine. This type of rule depends on having a rigorous system to determine the type of item. Example: I believe that an oak tree is oak (Q12004). For some reason the label for English is "Quercus" (whereas other languages use the common name) - this highlights a problem with using item labels. Q12004 has subclass broad-leaved tree (Q148993), which has subclass tree (Q10884), so it is possible to determine that it is a tree, but surely this is too complicated to be worthwhile. Perhaps there are languages where the type of item gives a sort of gender, but I think they would need a property "linguistic item type" rather than trying to maintain the information in the existing item properties.
- Sometimes the form of the word indicates the gender, for instance in Spanish words ending in -a are often feminine. But there are many exceptions (el optimista, el tema), for which lexemes would be needed, I suppose. If there are very few exceptions, they could be listed explicitly.
- In the case of French, Spanish and German genders, I think that the simplicity of just putting the gender on the lexeme outweighs the possible savings in quantity of data through using "rules of thumb". Strobilomyces (talk) 15:54, 19 June 2026 (UTC)
- As mentioned in the Status Update, it is difficult to decide how to determine whether an item needs a definite article in the simple examples.
- I have a comment: it is strange that we want to leave out the article in the label and the lemma. In normal use, I think the article is only left out in "headline-speak" (for instance "Man falls from Eiffel Tower") or if you are talking to the thing ("Eiffel Tower, I love you"). I don't know where else we want to omit the article in actual text.
- So one proposal for a solution is that the lemma on the lexeme should include the article in these cases. It should be defined as the string which should be the value of x in the sentence: "x is a thing". That might solve the problem, but we would always need to have a lexeme in these cases and it would be necessary to explain this to all lexeme users. A second proposal is to have a new property on the lexeme which gives the string which we need (or to have an indicator that an article is required, but that would be more complicated as code would be needed to render the article).
- Another possibility, supported in the meeting, would be somehow to work out from the construction of the name whether an article is needed. For instance if the name is constructed as a phrase, it often wants an article ("the Bridge of Sighs", "the Isle of Man"). In English a phrase with "of" is a good indication that the article is needed. Phrases of the form <qualifier> <noun> often want an article (for instance "Eiffel tower", "Irish Sea", "United States"), but they often don't (for example "Beachy Head", "Lake Ontario", "London Bridge", "Westminster Cathedral", "Fair Isle", "Land's End"). So that is no use if we don't know what type of qualifier and noun it is.
- There are rules for specific types of item (for instance in English, I think lakes don't need an article and seas do need an article). If we are going to use rules like that, it will be necessary to maintain the correct categorization in Wikidata. P31 and P279 might be relevant, but since these properties were created in another context, the management of them would be difficult. Lists of exceptions are possible. The solution could vary from one language to another. Strobilomyces (talk) 16:26, 19 June 2026 (UTC)
- I would like to suggest the following possibilities for holding the definite article requirement information and also other syntactical information such as genders and other language options. They are in order from "more data-driven" to "more programmatic".
- Hold the information as a property of a lexeme attached to the item.
- Hold the information in the label or description of the item.
- Hold the information in a list (per language) in a property of the item.
- Use a programmatic rule, based possibly on item properties, with a list of exceptions. The exceptions could be:
- in the lexemes (or the labels/descriptions),
- in Wikidata item properties per language, perhaps using the "tabular data" type,
- as a Wikifunctions list item, similar to the configuration tables used in the fragment examples, or
- hard-coded in the Abstract Wikipedia wikifunctions.
- For instance in order to find a French gender, the programmatic rule could be "Assume it is masculine", but exceptions could be flagged in the lexemes. In all cases, the function would have to search for a lexeme for the item, and if found would have to search for a gender property with value "feminine". The advantage of the programmatic rule would be that for a masculine lexeme no gender property, and perhaps no lexeme, would be needed.
- From a theoretical modelling point of view, I think that much the best place to put this information is in the lexeme objects. Well, the item label and description are also per language, but I think they do not "belong" to Abstract Wikipedia. In the meeting there was much more sympathy for a programmatic approach, which I would say is more pragmatic. There is a balance between on one hand trying to reduce the number of database elements and properties, and on the other reducing the complexity of the programming and the rules which have to be known by users.
Strobilomyces (talk) 18:47, 19 June 2026 (UTC)
Wikifunctions & Abstract Wikipedia Newsletter #252 is out: Improved loading and display of Test results
[edit]There is a new update for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we present you an improvement in loading and display of Test results, we talk about our next events, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check our archive!
Also, we remind you that Denny will lead a discussion on the new NLG types in the next Natural Language Generation Special Interest Group meeting, that will be held on June 16, at 16:00 UTC (link to the meeting).
Enjoy the reading! -- User:Sannita (WMF) (talk) 15:29, 12 June 2026 (UTC)
Add Z32962 to the list of suggested functions?
[edit]I think Z32962 would be a useful addition to the list of suggested functions. Can an admin please add it if others agree? Redmin (talk) 04:25, 15 June 2026 (UTC)
- Please comment on MediaWiki talk:AbstractWikiSuggestedWikifunctions.json. Feeglgeef (talk) 04:48, 15 June 2026 (UTC)
Native labels
[edit]English Wikipedia usually displays native labels whenever applicable. Should we modify Z28016 to do the same or make a new function? Redmin (talk) 04:39, 15 June 2026 (UTC)
readiness indicator
[edit]It occurred to me that an abstract page that works well enough for one language output might be broken for another, so it would be good to have some sort of indicator in the UI of which languages might be ready for transwiki and which still need preliminaries. I'm not sure if it would be better to do this as part of the testing and error-handling, or manually (like patrolling versions, but language-specific). Arlo Barnes (talk) 07:12, 15 June 2026 (UTC)
- The function NLG default text will be able to indicate on the target Wikipedia that the text in this language is not ready yet. Maybe sentences with this indicator, or even lemma's with this indicator could be excluded from the target Wikipedia. HenkvD (talk) 08:52, 15 June 2026 (UTC)
- I see that in the #Marking NLG Default text section, but I am thinking more at the whole-article level; dropping a problematic fragment from the final render could change the overall meaning. Arlo Barnes (talk) 17:20, 15 June 2026 (UTC)
- The function NLG default text will be able to indicate on the target Wikipedia that the text in this language is not ready yet. Maybe sentences with this indicator, or even lemma's with this indicator could be excluded from the target Wikipedia. HenkvD (talk) 08:52, 15 June 2026 (UTC)
Add an LLM generator, where you can generate the schema
[edit]Hi. Please add an LLM generator, where you can ask AI to generate a schema for Abstract wikipedia. ChippyTimeCom (talk) 01:18, 17 June 2026 (UTC)
- Do you mean an AI model to translate natural language input to abstract output? This was tinkered with before, I believe, last year—see f:Wikifunctions:Status updates/2025-05-09 if you would like to read about it. This idea remained a mockup and not much more from what I can tell, but they may revisit the idea someday. — rae5e <talk> 17:40, 18 June 2026 (UTC)
- The main thing stoping one from pulling up a chatbot is that it has no knowledge of what wikifunctions are available, meaning it will probably just hallucinate them. I know Gemini has an ability to upload files, but all of Wikifunctions would be too large. Feeglgeef (talk) 18:58, 18 June 2026 (UTC)
- We have no obligation to use an LLM, that's just the main thing associated with the buzzword that is AI now. We can really come up with any AI model—in a general sense—that will fit our needs. You can do a lot with simple neural networks. — rae5e <talk> 19:33, 18 June 2026 (UTC)
- The main thing stoping one from pulling up a chatbot is that it has no knowledge of what wikifunctions are available, meaning it will probably just hallucinate them. I know Gemini has an ability to upload files, but all of Wikifunctions would be too large. Feeglgeef (talk) 18:58, 18 June 2026 (UTC)
Wikifunctions & Abstract Wikipedia Newsletter #253 is out: The or not the, this is (the?) question
[edit]There is a new update for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we present you a delicate question regarding grammatical framework, we talk about our next events and about the results of our latest online meetings, we discuss news about Types, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check our archive!
Enjoy the reading! -- User:Sannita (WMF) (talk) 12:34, 19 June 2026 (UTC)
This needs to be fixed
[edit]On tennis Q847, it says "Tennis is the country of origin of England." ~2026-36465-63 (talk) 07:31, 23 June 2026 (UTC)
- Thanks, I've switched it around. --99of9 (talk) 09:51, 23 June 2026 (UTC)
HTML, monolingual text or String for fragments
[edit]I think there is an important issue on the Output type of parts for text segments. Currently some sentences produce String output (like f:Z26039 ) or monolingual text output ( like f:Z26570 ) pr HTML output ( like f:Z36200 ). Apart from not being consistent I think there is even a bigger issue: these types don't allow text to be set in bold (in the introduction sentence for instance), or wikilinks to other AW articles. Am I correct that is only allowed in HTML text?
If so I think we should change ALL languages functions to output type HTML as soon as possible. HenkvD (talk) 15:51, 24 June 2026 (UTC)
- Currently, I am exploring this function for converting all of these to HTML fragment f:Z36303. John Samuel (talk) 16:46, 24 June 2026 (UTC)
- OK, thanks. HenkvD (talk) 21:17, 24 June 2026 (UTC)
- I agree that new sentence functions should be HTML. For now the old ones should be wrapped by a converter (which is best done on WF). Then all calls from AW can be to HTML producing functions. When we need bold we could either try to inject it, or write equivalent functions that will eventually replace the usage of the string ones. The string ones may still be valuable for processing some of the new NLG types, so we shouldn't actually flip the original functions. --99of9 (talk) 23:30, 24 June 2026 (UTC)
- I think wrapping the functions to HTML is delaying the solution. We either need to flip all (NLG) functions or all functions should be copied to HTML versions (and the all functions shoule not be used therafter)
Option Pro Con A. Wrap all fuctions to HTML Easy to perform This is delaying the solution B. Flip all functions to HTML Keeps tracebility Huge impact/disturbance, especialy when cached C. Copy all functions to HTML No disturbance Looses tracability - The most practical soulution would be option C. I woluld perfer that as soon as possbile. HenkvD (talk) 05:05, 25 June 2026 (UTC)
- I like your suggestions. Based on my personal experience with different result types from Wikifunctions, I would suggest that AW support all three and convert the results to HTML using built-in functions. John Samuel (talk) 05:19, 25 June 2026 (UTC)
- The reason why function need to change is because the current string functions don't allow HLTM features like bold text, wikilinks etc. AW supporting all 3 type pf output could easily be avoiding by option A. HenkvD (talk) 05:29, 25 June 2026 (UTC)
- C is fine by me. The easiest first-implementation of a copied function C is a wrapper of the monolingual/string, so A is sort of the first step of C. 99of9 (talk) 06:20, 25 June 2026 (UTC)
- OK, good suggestion. HenkvD (talk) 07:13, 25 June 2026 (UTC)
- I like your suggestions. Based on my personal experience with different result types from Wikifunctions, I would suggest that AW support all three and convert the results to HTML using built-in functions. John Samuel (talk) 05:19, 25 June 2026 (UTC)
- No. I really don't see why we should. These are functions that generate text fragments in a single language—the monolingual text type is the most appropriate return type for them. It is just text. They can be coerced to HTML extremely easily and doing that step ahead of time, hardcoded, for the sole purpose of making abstract articles marginally easier to write, is just not worth the effort and foregoes what makes the functions' return types suitable in the first place. If there is some argument that can be made for hard pivoting to HTML fragments then I am all ears, but I really don't see a reason for it. — rae5e <talk> 05:53, 25 June 2026 (UTC)
- I like to contradict. These functions create complete sentences, nd those should be able to use HLTM features like bold text, wikilinks etc. My current interest is to add HTML texts like <span lang="mul ">NLG Default text</span>. HenkvD (talk) 06:05, 25 June 2026 (UTC)
- These additional features (bold/links etc) would benefit from additional parameters to control them. I still don't know how to do this best. I tried once at f:Z32496 and f:Z32410, but it may not be right, and may not be a complete solution anyway. --99of9 (talk) 06:26, 25 June 2026 (UTC)
- A newer idea I had is to add all the links in the language-configured function, then call link-removing functions like f:Z36853 or f:Z36831 when composing them into AW. This could extend to swapping links for bold. Instead of an initial link, the QIDs could be wrapped with HTML spans with a QID ID, which could then be selectively converted into links or bolded etc. --99of9 (talk) 07:16, 25 June 2026 (UTC)
- These additional features (bold/links etc) would benefit from additional parameters to control them. I still don't know how to do this best. I tried once at f:Z32496 and f:Z32410, but it may not be right, and may not be a complete solution anyway. --99of9 (talk) 06:26, 25 June 2026 (UTC)
- Simple wrapping is just to benefit the AW editor. IMO it's worth it because it's pretty easy to make a new function, so is very low cost, and for the new editors on AW, they don't have to understand composing or our WF Types. --99of9 (talk) 06:30, 25 June 2026 (UTC)
- OK, let's start with option A, as a first step for option C. HenkvD (talk) 07:16, 25 June 2026 (UTC)
- I have made wrappers (option A) for some general functions like f:Z36983, f:Z36983. f:Z36987, f:Z36993 and f:Z37011. f:Z32965 already existed, but as well as the monolingual f:Z26095 both have an error: Error in evaluation. Can somebody fix this? On the AW articles I have updated a few lemmas by replacing the old functions to HTML functions, but find this quite cumbersome. A few hundred lemmas should be updated, but I have no time and/or no desire to do so. In the coming weeks (or so) I will start on Option C for these functions. HenkvD (talk) 17:51, 27 June 2026 (UTC)
- Thanks. I'll try to help replace some of the usage. 99of9 (talk) 07:12, 29 June 2026 (UTC)
- I think I've sorted out f:Z32965. --99of9 (talk) 07:45, 29 June 2026 (UTC)
- I have made wrappers (option A) for some general functions like f:Z36983, f:Z36983. f:Z36987, f:Z36993 and f:Z37011. f:Z32965 already existed, but as well as the monolingual f:Z26095 both have an error: Error in evaluation. Can somebody fix this? On the AW articles I have updated a few lemmas by replacing the old functions to HTML functions, but find this quite cumbersome. A few hundred lemmas should be updated, but I have no time and/or no desire to do so. In the coming weeks (or so) I will start on Option C for these functions. HenkvD (talk) 17:51, 27 June 2026 (UTC)
- So a bunch of bespoke functions on Wikifunctions that offer some marginal improvement over their more generalized counterparts, and we expect to do all of our language generation functions this way now or something, god forbid we expend one extra function call to just wrap the output if an injection function is really that scary to you. Wrapping the functions to HTML is not 「delaying the solution」 more than it's just the least disruptive way to approach this completely frivolous problem. Are we to write all of our NLG functions to output HTML now? That is what makes sense for us now, in the future? What? We have a type for this, it's called Monolingual text. We have Python and JavaScript at our disposal, and they are wicked biznasty at string manipulation (i.e. they are very good at it), so injecting formatting into a larger sentence instead of porting the whole thing over to use HTML exclusively is really not that big of an ask. — rae5e <talk> 07:23, 7 July 2026 (UTC)
- Then please try to have this error in HTML. Currently it is ❌≪Parys (is the) haadstêd (of) Frankryk .≫❌ Please have it changed to Parys (is the) haadstêd (of) Frankryk . HenkvD (talk) 09:02, 7 July 2026 (UTC)
- Thinking about this. One way we could do this particular markup would be for default monolingual functions to return a result with special language code (perhaps mul, zxx, ...). This would require wider discussion. Then the HTML function could detect that and wrap accordingly. But it doesn't solve the general problem of injections IMO. --99of9 (talk) 02:13, 8 July 2026 (UTC)
- This is now working (using [mul]) at f:Z37462. This should work for all monolingual base functions, but not for those starting with strings. --99of9 (talk) 06:49, 9 July 2026 (UTC)
- I updated f:Z36911 and f:Z36909. I am not sure if this works as a lot is cached. The string version will probably not work yet, so I left that one using ❌≪ ≫❌. HenkvD (talk) 08:09, 9 July 2026 (UTC)
- After my post I actually made that function and test even more complicated to include a call to action (CTA): a link to the function that is not configured in the requested language. I am starting to like where this is going, and think I can even get it done with strings by recognising your ❌≪ pattern, stripping it, and replacing it with a span (and a CTA link) when it turns to HTML. Unfortunately the linking requires passing in a ZID, so might need a new general conversion function with an extra parameter. --99of9 (talk) 08:40, 9 July 2026 (UTC)
- Here's what I did with a string function: f:Z37497. --99of9 (talk) 11:31, 9 July 2026 (UTC)
- After my post I actually made that function and test even more complicated to include a call to action (CTA): a link to the function that is not configured in the requested language. I am starting to like where this is going, and think I can even get it done with strings by recognising your ❌≪ pattern, stripping it, and replacing it with a span (and a CTA link) when it turns to HTML. Unfortunately the linking requires passing in a ZID, so might need a new general conversion function with an extra parameter. --99of9 (talk) 08:40, 9 July 2026 (UTC)
- I updated f:Z36911 and f:Z36909. I am not sure if this works as a lot is cached. The string version will probably not work yet, so I left that one using ❌≪ ≫❌. HenkvD (talk) 08:09, 9 July 2026 (UTC)
- This is now working (using [mul]) at f:Z37462. This should work for all monolingual base functions, but not for those starting with strings. --99of9 (talk) 06:49, 9 July 2026 (UTC)
- Thinking about this. One way we could do this particular markup would be for default monolingual functions to return a result with special language code (perhaps mul, zxx, ...). This would require wider discussion. Then the HTML function could detect that and wrap accordingly. But it doesn't solve the general problem of injections IMO. --99of9 (talk) 02:13, 8 July 2026 (UTC)
- For me, injections are not so easy. A simple one is trying to inject a link to Sydney into en:"Sydney Harbour Bridge is the closest to the ocean in Sydney." (In all languages, so sometimes the subject-object order will be reversed.) But even still, I'd really like to have good injection functions, so if you're up for making them, I'll definitely use them. If they work reliably on all NLG monolingual strings, then we can use them in the wrappers (even if you think the wrappers are frivolous), and the configurations can remain deeper on the monolingual strings. --99of9 (talk) 01:56, 8 July 2026 (UTC)
- I've added this test at f:Z37479. --99of9 (talk) 10:29, 9 July 2026 (UTC)
- Then please try to have this error in HTML. Currently it is ❌≪Parys (is the) haadstêd (of) Frankryk .≫❌ Please have it changed to Parys (is the) haadstêd (of) Frankryk . HenkvD (talk) 09:02, 7 July 2026 (UTC)
- OK, let's start with option A, as a first step for option C. HenkvD (talk) 07:16, 25 June 2026 (UTC)
- I like to contradict. These functions create complete sentences, nd those should be able to use HLTM features like bold text, wikilinks etc. My current interest is to add HTML texts like <span lang="mul ">NLG Default text</span>. HenkvD (talk) 06:05, 25 June 2026 (UTC)
Wikifunctions & Abstract Wikipedia Newsletter #254: Working on Functions, together
[edit]There is a new update for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we report on new collaborative patterns emerging in our community, we discuss news in Types, we share some events that relate to Wikifunctions and Abstract Wikipedia at Wikimania 2026, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check our archive!
Also, we remind you that if you have questions or ideas to discuss, the next Volunteers' Corner will be held on July 6, at 17:30 UTC (link to the meeting).
Enjoy the reading! -- User:Sannita (WMF) (talk) 09:58, 27 June 2026 (UTC)
Wikifunctions & Abstract Wikipedia Newsletter #255: Integration on test wiki and annual plan
[edit]There is a new update for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we discuss integration of Abstract Wikipedia in Test Wiki and our objectives for the new Wikimedia Foundation Fiscal Year, we remind you of the Wikifunctions and Abstract Wikipedia events at Wikimania 2026, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check our archive!
Also, we remind you that if you have questions or ideas to discuss, the next Volunteers' Corner will be held on July 6, at 17:30 UTC (link to the meeting).
Enjoy the reading! -- User:Sannita (WMF) (talk) 08:22, 2 July 2026 (UTC)
Response to English Wikipedia criticism
[edit]Hi all, you might be aware of this discussion on English Wikipedia, that raised several criticisms about the project. As a team, we drafted an initial response, that we want to run through you.
If you want to suggest changes or edits, please use the talk page. Please, keep a polite and constructive tone.
The editing period will be open until July 17. The final result of this editing will be published on Meta, and will be linked to the English Wikipedia community. Sannita (WMF) (talk) 12:18, 6 July 2026 (UTC)
Wikifunctions & Abstract Wikipedia Newsletter #256: Moving toward our first Abstract Wikipedia integration milestone
[edit]There is a new update for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we discuss further our objectives for the new Wikimedia Foundation Fiscal Year, we show the latest community tool, we remind you of the Wikifunctions and Abstract Wikipedia events at Wikimania 2026, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check our archive!
Enjoy the reading! -- User:Sannita (WMF) (talk) 09:43, 9 July 2026 (UTC)
Infoboxes
[edit]I changed layout of the infoboxes, to be more in line with Wikipedia's infoboxes. See for example Z36678 "infobox for city" used in Q90 "Paris". I would like Z37625 "infobox row" to check if a claim exists in Wikidata, but I have difficulties with he parameters for Z27299 "Wikidata item has claim?". With with literal input it works but with argument references it gives an error. Who can fix this?
Furthermore I think it would be nice it we could add a pen-icon next to the values to be able to edit the claim on Wikidata, and pen-icon at the property to edit the label. HenkvD (talk) HenkvD (talk) 12:04, 12 July 2026 (UTC)
- I was able to fix my error. Infobox rows will now only be shown when a claim exists. That will prevent errors a particular claim is missing for a particular city. HenkvD (talk) HenkvD (talk) 13:56, 13 July 2026 (UTC)
- Looks awesome. Though I was trying it with other cities (such as Chicago and Moscow) in English, and it was throwing orchestrator rate limit errors. EatingCarBatteries (talk) 02:41, 14 July 2026 (UTC)
- I am struggling to find a function that indicates a Wikidata property type, like Property:P569 (date of birth) is a date type (Point in time?). Can anybody help? HenkvD (talk) 09:25, 17 July 2026 (UTC)
Lexemes of property names
[edit]@HenkvD, Feeglgeef, and GrounderUK: Hello. Please could anybody tell me their opinion on this question? It may be necessary to find a lexeme corresponding to the name of a property. For instance, Z28445 "most recent year-specific sentence about item" has a property reference as argument and needs the name of the property to be rendered in the output; the particular property could be population (P1082). In the English implementation, the name of the property "population" is found from the WikiData property attributes, but for other languages other syntactical information such as gender may be needed, so I suppose that a link to the lexeme is required. How should the rendering function find a link to the lexeme? Is there a way to find the item corresponding to the property? Or should the syntactical information be found some other way? Strobilomyces (talk) 15:14, 12 July 2026 (UTC)
- Ah. Now I've found Wikidata item of this property (P1629), so i suppose that that provides a solution. Sorry to disturb you. Strobilomyces (talk) 15:44, 12 July 2026 (UTC)
Feedback needed on constructing a new abstract article
[edit]Hi all, I wanted to ask a couple of questions to the community regarding how easy or difficult is to construct a new abstract article.
Consider I'm a newbie that wants to create a new abstract article about my home city. What would you suggest I do first? Is there a sufficiently good example I can copy and adapt? Can I add already almost everything that I would like to add (say, number of inhabitants, region where my city is, mayor of the city, stuff like that) or is there something I cannot add still? What is there and what is missing at the moment?
Thanks in advance for your answers! Sannita (WMF) (talk) 12:51, 13 July 2026 (UTC)
- Sannita, in general it is very difficult (even for me) to construct a new abstract article from scratch. Copying from an existing article is easier, as also mentioned in Help:How to create an article. That example is also a city, so we better make that article a good example. The information you mention could be in the infobox, which is also available to use and extend (if performance permits). Creating a article by copy/paste should be done for each sentence or paragraph. Add additional sentences is still very difficult. HenkvD (talk) 14:08, 13 July 2026 (UTC)
- The biggest challenge for me would be finding the right functions to do the job. It's kinda to the point where the help article, mentioned by HenkvD, is just saying to copy other articles. The issue is with trying to add more "unique" sentence structures that may not be in every article. For example, take this:
New York is known for being the financial hub for the United States- More abstractly:
X is known for being Y for the Z - If a function that does something like that doesn't exist, that pushes the user into a weird space where they may have to use a different function that may sound more robotic or be grammatically incorrect.
- It's not hard to create a stub abstract article, but anything beyond that takes a lot of time and effort to find the right functions for the job. Additionally, dealing with different data types (ex: Wikidata item reference vs Wikidata item) may turn off people who aren't familiar with computer science principles. EatingCarBatteries (talk) 02:21, 14 July 2026 (UTC)
- The problem with copying other articles is that you need to somehow know that the article you're copying from is correct. If I wanted, for example, to make an article about some root vegetable like Q188614 and copied Q81 I'd be doing a very bad job because the second paragraph is written in a way that is completely untranslatable in its structure (by that I mean it is not fixable by changing f:Z18845 to a function that work for all languages, the fragment itself integrates features of English grammar, such as SVO word order, and therefore needs a rewrite).
- What you probably need is a collection of Featured Articles that are written in accordance with best practices and are safe to copy from. This would make it so novice users don't start picking up anti-patterns and propagating them all over abstract Wikipedia, making them harder to fix. Warudo (talk) 15:32, 15 July 2026 (UTC)
- Absolutely correct. I've deleted that paragraph with an explanation that that kind of work is better done on Wikifunctions to construct an English renderer. 99of9 (talk) 12:20, 17 July 2026 (UTC)
- I'm throwing together some thoughts at User:99of9/ArticleWriting. It's still very much a draft, but I hope the ideas help. Asking questions about it may help me focus on what you want. --99of9 (talk) 11:53, 17 July 2026 (UTC)
- To be honest I don't think we are ready to start adding new articles at full speed. Only a few functions can be used properly, and not many functions can be used in enough other languages. Furthermore the performance is so bad that most of the functions will time-out. Personally i consider the AW articles as sandboxes to experiment on, not yet articles that are well constructed. HenkvD (talk) HenkvD (talk) 12:33, 17 July 2026 (UTC)
- Single fragments usually don't time out when you first put them in. So you can usually edit productively in your first session. But then 24 hours later, the whole thing gets re-cached in a single go, none of them complete, and the errors all get cached. --99of9 (talk) 12:42, 17 July 2026 (UTC)
Discussion at Meta Requests for comment: The future of Abstract Wikipedia
[edit]
You are invited to join the discussion at Meta Requests for comment: The future of Abstract Wikipedia. Qcne (talk) 11:34, 14 July 2026 (UTC)
Feedback on function I created
[edit]I would ask this in the Telegram channel, but this is a longwinded question that I would like to get more detailed feedback on.
First and foremost, it is seriously important that we get the ability to call functions with python/JS implementations. It would make creating these types of functions ten times faster, with the additional benefit of being easier to read.
I'm relatively close to completion on a function that will create a brief introductory paragraph for species articles: Intro for species in English composition. It contains the following:
- Intro (e.g. "Homo sapiens, also known as the Human, is a species of primate in the family Hominidae.")
- The word "primate" in this case is a string supplied by the user and is optional - it could be anything they want (ex: humanoid, animal, bipedal creature, etc)
- Year of description (e.g. "The species was described in 1758 by Carl Linnaeus.")
- IUCN conservation status (e.g. "C. lupus has been assessed as Least Concern by the International Union for Conservation of Nature (IUCN).")
So all together:
Dionaea muscipula, also known as the Venus flytrap, is a species of carnivorous plant in the family Droseraceae. The species was described in 1768 by John Ellis. D. muscipula has been assessed as Vulnerable by the International Union for Conservation of Nature (IUCN).
It also works when there is a lot of taxon authors:
The species was described in 2026 by Anh Van Pham, Chung Van Hoang, Nguyen Quang Truong, Thuy Thu Thi Nguyen, Ky Danh Nguyen, Toan Canh Thai and Thomas Ziegler.
The composition itself is basically stringing together a lot of html fragments - if you want to find a specific bit, you just scroll down to around the section of the paragraph you want. Each HTML fragment is roughly a sentence.
I originally intended to add a sentence about distribution, but I didn't know how nicely that would play when P9714 has a million values attached to it. Eventually I plan to integrate this translation into a system like the one that exists for year articles.
I have a couple questions:
- Is there any other additions to this function that I should make? Ideally, this should be data I can fetch from Wikidata.
- What are the best practices to make the function easier to translate? I've tried to rely on other functions which can work with different languages (and making my own, including Z37833)
- I'm still relatively new to Wikifunctions. If someone could take a look and see if there is any glaring errors or functions that exist and do what I am already doing, that'd be awesome.
I am aware of a couple bugs:
- The error handling is not great, and the sentence about description date has a hardcoded true value in the if function. I'm looking for a better way to deal with the errors - the main idea for this is to stop the function from generating sentences if the necessary values don't exist in Wikidata.
- A function I made (Z37808) that fetches the describing authority crashes if the person does not have a label in the given language.
Feel free to edit/fix anything if you want to. Thanks a ton! EatingCarBatteries (talk) 08:32, 17 July 2026 (UTC)
- Nice one. I'll take a look. My general comment is that the extra supplied string (e.g. for the family) should not be a string, it should be a different QID. This is because in Abstract Wikipedia we can't pass in single-language strings. The function needs to somehow get from the QIDs all the way to the HTML by itself. Once you've got the structure ready, the next thing you can do is include your examples as Tests. The easiest way to make an HTML test for a function which already has a configuration is to make one with an empty validation comparison, run it, then copy the stuff it failed with into the validation. --99of9 (talk) 10:21, 17 July 2026 (UTC)
- Oh, one more structural change. Even though this is for "English", it's usually best to accept an extra parameter for the "language variant", because there are a bunch of variants of English (which, for example, may have different common names). You may not use it for now, but it's a pain to change the arguments after the function has a lot of use. 99of9 (talk) 10:24, 17 July 2026 (UTC)
- And if you need the "of primate" hypernym to be optional, you could include a boolean parameter to say whether or not to print whatever QID is supplied. Or another idea, (this may be controversial) you could decide that if both QIDs were the same, that was when to drop the "of human". This second method would work particularly well in AW IMHO, because it would autofill both to be the same as the page QID, so it would work from the start without even clicking a boolean (and editors could then pick another QID if they wanted a hypernym). --99of9 (talk) 99of9 (talk) 10:31, 17 July 2026 (UTC)
Wikifunctions & Abstract Wikipedia Newsletter #257: Beyond syntactic tables
[edit]There is a new update for Abstract Wikipedia and Wikifunctions. Please, come and read it!
In this issue, we discuss syntactic tables and news in Types, we show some community blogposts and tools, we remind you of the Wikifunctions and Abstract Wikipedia events at Wikimania 2026, and we take a look at the latest software developments.
Want to catch up with the previous updates? Check our archive!
We also remind you that in the next weeks these newsletter reminders will be paused, and that they will resume in mid-August.
Enjoy the reading! -- User:Sannita (WMF) (talk) 10:55, 17 July 2026 (UTC)