Lua Tutorial 03: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Stewie (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „'''Beispiel Semantische Angaben verarbeiten:''' Semantische Abfragen können innerhalb von Lua Scripten Erfolgen, die abfragen können dann entsprechend weiter…“) |
Stewie (Diskussion | Beiträge) |
||
Zeile 1: | Zeile 1: | ||
'''Beispiel Semantische Angaben verarbeiten:''' | '''Beispiel Semantische Angaben verarbeiten:''' | ||
Semantische Abfragen können innerhalb von Lua Scripten Erfolgen, die abfragen können dann entsprechend weiterverarbeitet werden. | 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 " | + | 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 | Beispielweise sollen alle offiziellen Publikationen abgefragt werden, uns interessieren dabei die Autor:innen | ||
Zeile 10: | Zeile 10: | ||
<pre> | <pre> | ||
local queryResult = mw.smw.ask('[[Hauptkategorie::Publikation]][[Kanon::offiziell]]|?Autoren#-=2|mainlabel=-|limit=10') | local queryResult = mw.smw.ask('[[Hauptkategorie::Publikation]][[Kanon::offiziell]]|?Autoren#-=2|mainlabel=-|limit=10') | ||
+ | |||
+ | Das gesamte Modul: | ||
+ | <pre> | ||
+ | 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 | ||
+ | |||
+ | </pre> | ||
+ | |||
+ | Einbindung: | ||
+ | <pre> | ||
+ | {{#invoke:Tutorial 03|getOfficalAuthors}} | ||
+ | |||
</pre> | </pre> | ||
+ | Ergebniss: | ||
{{#invoke:Tutorial 03|getOfficalAuthors}} | {{#invoke:Tutorial 03|getOfficalAuthors}} | ||
+ | |||
+ | Wie oben erwähnt erfolgt die Ausgabe als Lua Tabelle, was erstmal wenig hilfreich ist. |
Version vom 10. Mai 2024, 16:02 Uhr
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: <pre> 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.