Lua Tutorial 03: Unterschied zwischen den Versionen

Aus Splitterwiki
Zur Navigation springen Zur Suche springen
(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…“)
 
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 "Array", die weiterverarbeitung ist etwas gewöhnungsbedürftig
+
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, 17: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.