Module:Lexeme-ms
Jump to navigation
Jump to search
Documentation for this module may be created at Module:Lexeme-ms/doc
Code
local lb = require('Module:LexemeBuilder2')
local p = {}
local text = lb.MultilingualText
-- nomina bentuk kata dasar. Jangan gunakan untuk nomina bentuk turunan
function p.noun(word,sense,claim)
word,sense,claim=word.args[1],word.args[2],word.args[3]
local entity=lb.newLexeme("Q9240", "Q1084", text({ms=word}))
entity=lb.addForm(entity,lb.newForm(text({ms=word}),{"Q210523","Q106644026"}))
entity=lb.addForm(entity,lb.newForm(text({ms=word}),"Q110786"))
entity=lb.addForm(entity,lb.newForm(text({ms=word.."-"..word}),"Q146786"))
entity=lb.addForm(entity,lb.newForm(text({ms=word.."kah"}),"Q12021746"))
entity=lb.addForm(entity,lb.newForm(text({ms=word.."lah"}),"Q109267112"))
entity=lb.addForm(entity,lb.newForm(text({ms=word.."ku"}),"Q71470598"))
entity=lb.addForm(entity,lb.newForm(text({ms=word.."mu"}),"Q71470837"))
entity=lb.addForm(entity,lb.newForm(text({ms=word.."nya"}),"Q71470909"))
entity=lb.addForm(entity,lb.newForm(text({ms=word.."kukah"}),{"Q71470598","Q12021746"}))
entity=lb.addForm(entity,lb.newForm(text({ms=word.."mukah"}),{"Q71470837","Q12021746"}))
entity=lb.addForm(entity,lb.newForm(text({ms=word.."nyakah"}),{"Q71470909","Q12021746"}))
entity=lb.addForm(entity,lb.newForm(text({ms=word.."kulah"}),{"Q71470598","Q109267112"}))
entity=lb.addForm(entity,lb.newForm(text({ms=word.."mulah"}),{"Q71470837","Q109267112"}))
entity=lb.addForm(entity,lb.newForm(text({ms=word.."nyalah"}),{"Q71470909","Q109267112"}))
entity=lb.addSense(entity,lb.newSense(text({ms=sense})))
return lb.Export(entity)
end
-- verba bentuk kata dasar. Jangan gunakan untuk verba bentuk turunan
function p.verb(word,sense,claim)
word,sense,claim=word.args[1],word.args[2],word.args[3]
local entity=lb.newLexeme("Q9240", "Q24905", text({ms=word}))
entity=lb.addForm(entity,lb.newForm(text({ms=word}),"Q210523"))
entity=lb.addForm(entity,lb.newForm(text({ms=word.."nya"}),"Q71470909"))
entity=lb.addForm(entity,lb.newForm(text({ms=word.."kah"}),"Q12021746"))
entity=lb.addForm(entity,lb.newForm(text({ms=word.."lah"}),"Q109267112"))
entity=lb.addForm(entity,lb.newForm(text({ms=word.."nyakah"}),{"Q71470909","Q12021746"}))
entity=lb.addForm(entity,lb.newForm(text({ms=word.."nyalah"}),{"Q71470909","Q109267112"}))
entity=lb.addSense(entity,lb.newSense(text({ms=sense})))
return lb.Export(entity)
end
-- adjektiva bentuk kata dasar. Jangan gunakan untuk adjektiva bentuk turunan
function p.adj(word,sense,claim)
word,sense,claim=word.args[1],word.args[2],word.args[3]
local entity=lb.newLexeme("Q9240", "Q34698", text({ms=word}))
entity=lb.addForm(entity,lb.newForm(text({ms=word}),"Q210523"))
entity=lb.addForm(entity,lb.newForm(text({id="ter"..word}),"Q210523")) --teramai, terendah, 'r' luluh (ter- -> te-)
entity=lb.addSense(entity,lb.newSense(text({ms=sense})))
return lb.Export(entity)
end
-- adverbia bentuk kata dasar. Jangan gunakan untuk adverbia bentuk turunan
function p.adv(word,sense,claim)
word,sense,claim=word.args[1],word.args[2],word.args[3]
local entity=lb.newLexeme("Q9240", "Q380057", text({ms=word}))
entity=lb.addForm(entity,lb.newForm(text({ms=word}),"Q210523"))
entity=lb.addSense(entity,lb.newSense(text({ms=sense})))
return lb.Export(entity)
end
-- partikula
function p.part(word,sense,claim)
word,sense,claim=word.args[1],word.args[2],word.args[3]
local entity=lb.newLexeme("Q9240", "Q184943", text({ms=word}))
entity=lb.addForm(entity,lb.newForm(text({ms=word}),"Q210523"))
entity=lb.addSense(entity,lb.newSense(text({ms=sense})))
return lb.Export(entity)
end
-- numeralia
function p.num(word,sense,claim)
word,sense,claim=word.args[1],word.args[2],word.args[3]
local entity=lb.newLexeme("Q9240", "Q63116", text({ms=word}))
entity=lb.addForm(entity,lb.newForm(text({ms=word}),"Q210523"))
entity=lb.addSense(entity,lb.newSense(text({ms=sense})))
return lb.Export(entity)
end
-- pronomina
function p.pron(word,sense,claim)
word,sense,claim=word.args[1],word.args[2],word.args[3]
local entity=lb.newLexeme("Q9240", "Q36224", text({ms=word}))
entity=lb.addForm(entity,lb.newForm(text({ms=word}),"Q210523"))
entity=lb.addSense(entity,lb.newSense(text({ms=sense})))
return lb.Export(entity)
end
-- preposisi
function p.prep(word,sense,claim)
word,sense,claim=word.args[1],word.args[2],word.args[3]
local entity=lb.newLexeme("Q9240", "Q4833830", text({ms=word}))
entity=lb.addForm(entity,lb.newForm(text({ms=word}),"Q210523"))
entity=lb.addSense(entity,lb.newSense(text({ms=sense})))
return lb.Export(entity)
end
-- konjungsi
function p.konj(word,sense,claim)
word,sense,claim=word.args[1],word.args[2],word.args[3]
local entity=lb.newLexeme("Q9240", "Q36484", text({ms=word}))
entity=lb.addForm(entity,lb.newForm(text({ms=word}),"Q210523"))
entity=lb.addSense(entity,lb.newSense(text({ms=sense})))
return lb.Export(entity)
end
-- interjeksi
function p.int(word,sense,claim)
word,sense,claim=word.args[1],word.args[2],word.args[3]
local entity=lb.newLexeme("Q9240", "Q83034", text({ms=word}))
entity=lb.addForm(entity,lb.newForm(text({ms=word}),"Q210523"))
entity=lb.addSense(entity,lb.newSense(text({ms=sense})))
return lb.Export(entity)
end
-- artikula
function p.art(word,sense,claim)
word,sense,claim=word.args[1],word.args[2],word.args[3]
local entity=lb.newLexeme("Q9240", "Q103184", text({ms=word}))
entity=lb.addForm(entity,lb.newForm(text({ms=word}),"Q210523"))
entity=lb.addSense(entity,lb.newSense(text({ms=sense})))
return lb.Export(entity)
end
-- interogativa
function p.intero(word,sense,claim)
word,sense,claim=word.args[1],word.args[2],word.args[3]
local entity=lb.newLexeme("Q9240", "Q2304610", text({ms=word}))
entity=lb.addForm(entity,lb.newForm(text({ms=word}),"Q210523"))
entity=lb.addSense(entity,lb.newSense(text({ms=sense})))
return lb.Export(entity)
end
-- tambah makna baru
function p.sense(word,lc,sense)
word,lc,sense=word.args[1],word.args[2],word.args[3]
--switch lexical category
if lc=='noun' then lc="Q1084"
elseif lc=='verb' then lc="Q24905"
elseif lc=='adj' then lc="Q34698"
elseif lc=='adv' then lc="Q380057"
elseif lc=='part' then lc="Q184943"
elseif lc=='num' then lc="Q63116"
elseif lc=='pron' then lc="Q36224"
elseif lc=='prep' then lc="Q4833830"
elseif lc=='konj' then lc="Q36484"
elseif lc=='int' then lc="Q83034"
elseif lc=='art' then lc="Q103184"
elseif lc=='intero' then lc="Q2304610"
end
local entity=lb.newLexeme("Q9240", lc, text({ms=word}))
entity=lb.addSense(entity,lb.newSense(text({ms=sense})))
return lb.Export(entity)
end
-- tambah bentukan baru
function p.form(word,lc,form)
word,lc,form=word.args[1],word.args[2],word.args[3]
--switch lexical category
if lc=='noun' then lc="Q1084"
elseif lc=='verb' then lc="Q24905"
elseif lc=='adj' then lc="Q34698"
elseif lc=='adv' then lc="Q380057"
elseif lc=='part' then lc="Q184943"
elseif lc=='num' then lc="Q63116"
elseif lc=='pron' then lc="Q36224"
elseif lc=='prep' then lc="Q4833830"
elseif lc=='konj' then lc="Q36484"
elseif lc=='int' then lc="Q83034"
elseif lc=='art' then lc="Q103184"
elseif lc=='intero' then lc="Q2304610"
end
local entity=lb.newLexeme("Q9240", lc, text({ms=word}))
entity=lb.addForm(entity,lb.newForm(text({id=form}),"Q210523"))
return lb.Export(entity)
end
return p