Modul:LexFormSimple

Iz Wikipedije, proste enciklopedije
Documentation icon Dokumentacija modula[predogled] [uredi] [zgodovina] [osveži]

Modul je namenjen prikazu leksemskih oblik iz Wikipodatkov. Trenutno deluje samo za oblike, opredeljene z eno slovnično lastnostjo.

Zgled priklica leksema
Leksem Želena slovnična lastnost Rezultat
L1013659 (sl:februar) Q131105 (imenovalnik) februar
L1013659 (sl:februar) Q146233 (rodilnik) februarja
L1013659 (sl:februar) Q145599 (dajalnik) februarju
local m = {}

function m.getFormHavingFeature(frame)
	if frame == nil or frame.args == nil or frame.args.lexemeId == nil or frame.args.lexemeId == '' then
		return "<span class='error'>Prosimo, določite parameter LID.</span>"
	end
	local lexemeId = frame.args.lexemeId
	local requestedFeatureId = frame.args.featureId
	local requestedLanguageCode = frame.args.languageCode
	local lexeme = mw.wikibase.getEntity( lexemeId )
	local forms = lexeme.forms
	
	local s = "[no form having feature " .. requestedFeatureId .. "]"
	
	for i, form in pairs(forms) do
		local formFeatureIds = form.grammaticalFeatures
		for _, featureId in pairs(formFeatureIds) do
			if featureId == requestedFeatureId then
				local representations = form.representations
				for _, representation in pairs(representations) do
					if not requestedLanguageCode or representation.language == requestedLanguageCode then
						s = representation.value
					end
				end
			end
		end
	end
	
	return s
end

return m