I strongly support "native" Wikipedia lists using Wikidata queries, and by that I mean proper SPARQL, not Lua hacks.
Listeria is used "in production", e.g. on Welsh (about 17.000 lists in articles, see https://tools.wmflabs.org/listeria/botstatus.php), but it was always intended as a proof of concept. It is also designed around WDQ and only later retrofitted for SPARQL, which explains some of its peculiarities.
It can handle ~23K lists per day, easily, without any caching. I believe (naively, perhaps) an extension would be feasible that renders "row templates" based on SPARQL queries. No Lua needs to be involved in this, or current Wikidata "fact transclusion". In a first iteration, it might not even have an automatic update mechanism: * Render some <wikidata ... /> construct based on SPARQL * Tag pages with such tags in the database, or even through categories * Have an external service/bot purge these pages on a regular basis; that would update the list without the need of editing the page * These automated updates could be staged by the time the SPARQL query required on the last update - <2sec once/day, >10sec once/week etc. * Have an "update now!" button (as I have on Listeria lists) that just links to "action=purge", for the impatient (instant gratification)
The Wikipedia setup wasn't always as heavily cached as it is today; it grew with usage. I believe we could do this for Wikidata-based lists as well, as the WMF would control the update cycles.
On Fri, Dec 16, 2016 at 7:30 AM Stas Malyshev smalyshev@wikimedia.org wrote:
Hi!
Actually, specifically for list of presidents you don't need bot.
Yeah, you are right, I was thinking about going through query route, but if your list is contained in one property (like Q30/P6) then using Lua is just fine. It's not always the case (e.g. "list of all movies where Brad Pitt played"). But where it works it's definitely a good way to go.
- It is limited to simple lists (you can't have list of Republican
presidents - because it requires additional filters and you don't want to create new property for it)
Exactly. You probably could still do something in Lua, but that's pushing it already.
- Internationalization - What if yi Wikipedia wants to create list of
governors of some small country where there are no yi labels for the presidents? The list would be partially in yi partially in en - is this desired behavior? or they can show only presidents who have label in yi - but this would give partial data - is this the desired behavior?
[Probably
the correct solution is to do show the fallback labels in en, but add
some
tracking category for pages requires label translation or [translate me] links)
That sounds like a good idea :)
Stas Malyshev smalyshev@wikimedia.org
Wikitech-l mailing list Wikitech-l@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/wikitech-l