Lua Tutorial 03

Aus Splitterwiki
Version vom 10. Mai 2024, 16:03 Uhr von Stewie (Diskussion | Beiträge)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Beispiel Semantische Angaben verarbeiten: Semantische Abfragen können innerhalb von Lua Scripten Erfolgen, die abfragen können dann entsprechend weiterverarbeitet werden. Die Rückgabe der Abfrage erfolgt dabei als "Table", die weiterverarbeitung ist etwas gewöhnungsbedürftig

Beispielweise sollen alle offiziellen Publikationen abgefragt werden, uns interessieren dabei die Autor:innen

Beachte: Die Abfrage wird in einer variabel gespeichert, diese wird mit "local Name = " erzeugt.

für das tutorial haben wir das limit der Ausgabe auf 10 gesetzt, in echten einsatz ist es sinnvoller hier eine hohe zahl zu verwenden.

local queryResult =  mw.smw.ask('[[Hauptkategorie::Publikation]][[Kanon::offiziell]]|?Autoren#-=2|mainlabel=-|limit=10')

Das gesamte Modul:

local p = {} --local p = {} -- p steht für Paket (engl. package)

function p.getOfficalAuthors( frame )
	--liste aller Publikationen, Autoren sind ein attribut der liste
	local queryResult =  mw.smw.ask('[[Hauptkategorie::Publikation]][[Kanon::offiziell]]|?Autoren#-=2|mainlabel=-|limit=10')

    return queryResult
end

return p

Einbindung:

{{#invoke:Tutorial 03|getOfficalAuthors}}

Ergebniss: table

Wie oben erwähnt erfolgt die Ausgabe als Lua Tabelle, was erstmal wenig hilfreich ist.