Цей модуль позначено як К:такий, що потребує захищеного статусу (48). Завершені модулі використовуються в дуже великій кількості статей, або часто використовуються як підстановки. Позаяк акти вандалізму або помилки можуть вплинути на багато сторінок і навіть незначне редагування призведе до істотного навантаження на сервери, вони підлягають захисту від редагувань.
localp={}localListOfProfessions=mw.loadData('Модуль:ListOfProfessions')--local ListOfCountries = mw.loadData('Модуль:ListOfCountries')localProfessionsCategoryByAlphabet={}fork,vinpairs(ListOfProfessions)doProfessionsCategoryByAlphabet[k]='[[Категорія:'..v..' за алфавітом]]'end--[[local ProfessionsCategoriesByCountry = {}local QQQ = {}for i, j in pairs(ListOfCountries) do QQQ = {} for k, v in pairs(ListOfProfessions) do--]]--QQQ[k] = '[[Категорія:' .. j ..' ' .. v ..']]'--[[end ProfessionsCategoriesByCountry[i] = QQQend--]]localfunctionMakeGeneralCategories(professionsList,dict)localres=''fori,profinpairs(professionsList)dolocalcat=nilifprof.mainsnak.datavaluethenid='Q'..prof.mainsnak.datavalue.value['numeric-id']cat=dict[id];endifcat~=nilthenres=res..cat;endendreturnresend--[[local function MakeCountriesCategories(countriesList, professionsList) local res = '' for i, cant in pairs(countriesList) do if cant.mainsnak.datavalue ~= nil then id = 'Q' .. cant.mainsnak.datavalue.value['numeric-id'] local professionsCategories = ProfessionsCategoriesByCountry[id]; if professionsCategories ~= nil then res = res .. MakeGeneralCategories(professionsList, professionsCategories); end end end return resend]]--functionp.mainFunction()localresult=''localentity=mw.wikibase.getEntityObject()ifentity~=nilandentity.claims~=nilthenifentity.claims['P106']~=nilthenprofessions=entity.claims['P106']result=result..MakeGeneralCategories(professions,ProfessionsCategoryByAlphabet)--[[if entity.claims[ 'P27' ] ~= nil then countries = entity.claims[ 'P27' ] result = result .. MakeCountriesCategories(countries, professions) end--]]endendreturnresultendreturnp