Module:LimitStatements
ظٲہِریَتھ
"یَمہٕ ماڈیوٗلُک دَستاویز ییٚہِ Module:LimitStatements/دَستاویز جاے بَناونہٕ"
local p = {}
function p.fetchLimitedStatements(frame)
local property = frame.args[1] -- Property ID (e.g., P674)
local limit = tonumber(frame.args[2]) or 5 -- Limit results (default 5)
-- Debugging: Print what we receive
if not property or property == "" then
return "Error: No property ID provided. Received: " .. tostring(property)
end
-- Debugging: Ensure property is a string
property = tostring(property)
-- Get statements from Wikidata
local statements = mw.wikibase.getBestStatements(property)
-- Debugging: Print statements length
if not statements or #statements == 0 then
return "Error: No data found for property " .. property
end
-- Process and return only the first 'limit' statements
local results = {}
for i, statement in ipairs(statements) do
if i > limit then break end
local value = mw.wikibase.renderSnak(statement.mainsnak)
if value then
table.insert(results, value)
end
end
return table.concat(results, ', ')
end
return p