وحدة:Wikidata2/tax/ملعب
< وحدة:Wikidata2 | tax
هذه صفحة ملعب الوحدة لصفحة وحدة:Wikidata2/tax (فرق). |
صُنفت هذه الوحدة على أنها في مرحلة بيتا. عندما تصل الوحدة لهذه المرحلة، يمكن أن يوسع استخدامها في الصفحات الأخرى. لكن يجب توخي الحذر من أن الوحدات في هذه المرحلة ما زالت حديثة العهد لذلك وجب توخي الحذر عند الاستخدام وملاحظة أي أخطاء تنتج عنها. من العرف أن المجتمع سوف يوصل الوحدات في هذه المرحلة للتي بعدها عبر صفحات النقاش الخاصة بالوحدة أو أي مكان يعلن عن هذه الوحدة عبر ملاحظة أن هذه الوحدة تعمل بشكل صحيح والجميع راضٍ عن أدائها. |
الاستخدام[عدل]
كتبت هذه الوحدة لاستخدامها في : قالب {{تصنيف كائن/تصنيف علمي ويكي بيانات}} الذي يستخدم في {{تصنيف كائن}}.
التصنيف العلمي | |
فوق النطاق | حيويات |
مملكة عليا | خيطانيات |
مملكة | نظائر حيوانات النحت |
عويلم | كلوانيات |
مملكة فرعية | ثانويات الفم |
شعبة | شميات |
شعيبة | فقاريات |
شعبة فرعية | أشباه رباعيات الأطراف |
عمارة | ثدييات الشكل |
طائفة | ثدييات |
طويئفة | وحشيات |
صُنيف فرعي | مشيميات |
رتبة ضخمة | وحشيات شمالية |
رتبة عليا | لوراسيات |
رتبة كبرى | أوابد |
رتبة | لواحم |
رتيبة | سنوريات الشكل |
فصيلة | سنوريات |
فُصيلة | نمرية |
جنس | نمر |
مثال2[عدل]
مثال3[عدل]
وحدة:wikidata2/tax:
|
وحدة:wikidata2/tax/ملعب2:
|
|
طالع أيضًا[عدل]
---- This module implements [[template:تصنيف كائن/تصنيف علمي ويكي بيانات]].
local p = {}
local data = require("Module:Wikidata2/tax/cash")
local ItemsCash = data.Cash
local colors = data.colors
local taxP105 = data.taxP105
function FindInCash(id, prop)
local Cash = ItemsCash[id]
if Cash and Cash[prop] then
mw.log(id .. " : " .. prop .. " : " .. Cash[prop])
return Cash[prop]
end
return nil
end
function foo(iid, formatting, p)
if not iid or iid == "" then
return nil
end
local st = formatStatements({
property = p or "P171",
entityId = iid,
enlabelcate = "t",
noref = "t",
firstvalue = "true",
formatting = formatting
})
if st and st ~= "" then
return st
else
return nil
end
end
function GetP171id(id, formatting)
if not id or id == "" then
return nil
end
local P171id = FindInCash(id, "P171")
if not P171id or P171id == "" then
P171id = formatStatements({
property = "P171",
entityId = id,
rank = "best",
noref = "t",
firstvalue = "true",
formatting = "raw"
})
end
return P171id
end
function p.taxcolour(datavalue, datatype, options)
local ids = {}
for i = 1, 23 do
ids[i] = GetP171id(ids[i - 1] or datavalue.value.id, "raw")
end
local taxon1 = {}
for i = 23, 1, -1 do
taxon1[24 - i] = ids[i] or ""
end
local q = {}
for _, j in ipairs(taxon1) do
local e = foo(j, "raw", "P105")
if e and e ~= "" then
if e == "Q36732" then
for k, v in pairs(colors) do
if j == k then
table.insert(q, v)
end
end
end
end
end
local taxon = table.concat(q, "\n")
return taxon or ""
end
function taxonrank(iid)
if not iid or iid == "" then
return nil
end
local vvv = nil
local P105iid = FindInCash(iid, "P105")
if not P105iid or P105iid == "" then
P105iid = formatStatements({
property = "P105",
entityId = iid,
enlabelcate = "t",
noref = "t",
firstvalue = "true",
formatting = "raw"
})
end
if not vvv and P105iid and P105iid ~= "" then
for k, v in pairs(taxP105) do
if k == P105iid then
vvv = v
break
end
end
end
if not vvv then
local st = formatStatements({
property = "P105",
entityId = iid,
enlabelcate = "t",
noref = "t",
firstvalue = "true",
formatting = ""
})
if st and st ~= "" then
vvv = st
end
end
return vvv
end
function dd(id, taxo)
if id and id ~= "" then
local norank = " (دون مرتبة)"
local P31 = foo(id, "", "P31")
local small = P31 and "<small>" .. P31 .. norank .. "</small>" or nil
local d = taxonrank(id)
if not d or d == "" then
return nil
end
if taxo and taxo ~= "" then
if d and d ~= "" then
return d .. "\n|" .. taxo
else
return taxo
end
end
end
end
function pro1(id, options)
if not id or id == "" then
return nil
end
local st = formatStatements({
property = "P171",
entityId = id,
enlabelcate = "t",
noref = options and options.noref or "e", -- Use options.noref if available, else default to "e"
firstvalue = "true"
})
return st
end
function p.tax(datavalue, datatype, options)
----------------
local value = datavalue.value
P0 = dd(value.id, formatEntityId(value.id, options).value)
local P1id = GetP171id(value.id, "raw")
P1 = dd(P1id, pro1(value.id, options))
local P2id = GetP171id(P1id, "raw")
P2 = dd(P2id, pro1(P1id, options))
local P3id = GetP171id(P2id, "raw")
P3 = dd(P3id, pro1(P2id, options))
local P4id = GetP171id(P3id, "raw")
P4 = dd(P4id, pro1(P3id, options))
local P5id = GetP171id(P4id, "raw")
P5 = dd(P5id, pro1(P4id, options))
local P6id = GetP171id(P5id, "raw")
P6 = dd(P6id, pro1(P5id, options))
local P7id = GetP171id(P6id, "raw")
P7 = dd(P7id, pro1(P6id, options))
local P8id = GetP171id(P7id, "raw")
P8 = dd(P8id, pro1(P7id, options))
local P9id = GetP171id(P8id, "raw")
P9 = dd(P9id, pro1(P8id, options))
local P10id = GetP171id(P9id, "raw")
P10 = dd(P10id, pro1(P9id, options))
local P11id = GetP171id(P10id, "raw")
P11 = dd(P11id, pro1(P10id, options))
local P12id = GetP171id(P11id, "raw")
P12 = dd(P12id, pro1(P11id, options))
local P13id = GetP171id(P12id, "raw")
P13 = dd(P13id, pro1(P12id, options))
local P14id = GetP171id(P13id, "raw")
P14 = dd(P14id, pro1(P13id, options))
local P15id = GetP171id(P14id, "raw")
P15 = dd(P15id, pro1(P14id, options))
local P16id = GetP171id(P15id, "raw")
P16 = dd(P16id, pro1(P15id, options))
local P17id = GetP171id(P16id, "raw")
P17 = dd(P17id, pro1(P16id, options))
local P18id = GetP171id(P17id, "raw")
P18 = dd(P18id, pro1(P17id, options))
local P19id = GetP171id(P18id, "raw")
P19 = dd(P19id, pro1(P18id, options))
local P20id = GetP171id(P19id, "raw")
P20 = dd(P20id, pro1(P19id, options))
local P21id = GetP171id(P20id, "raw")
P21 = dd(P21id, pro1(P20id, options))
local P22id = GetP171id(P21id, "raw")
P22 = dd(P22id, pro1(P21id, options))
local P23id = GetP171id(P22id, "raw")
P23 = dd(P23id, pro1(P22id, options))
local P24id = GetP171id(P23id, "raw")
P24 = dd(P24id, pro1(P23id, options))
local P25id = GetP171id(P24id, "raw")
P25 = dd(P25id, pro1(P24id, options))
local P26id = GetP171id(P25id, "raw")
P26 = dd(P26id, pro1(P25id, options))
local P27id = GetP171id(P26id, "raw")
P27 = dd(P27id, pro1(P26id, options))
local P28id = GetP171id(P27id, "raw")
P28 = dd(P28id, pro1(P27id, options))
local P29id = GetP171id(P28id, "raw")
P29 = dd(P29id, pro1(P28id, options))
local P30id = GetP171id(P29id, "raw")
P30 = dd(P23id, pro1(P29id, options))
local P31id = GetP171id(P30id, "raw")
P31 = dd(P31id, pro1(P30id, options))
local P32id = GetP171id(P31id, "raw")
P32 = dd(P32id, pro1(P31id, options))
local P33id = GetP171id(P32id, "raw")
P33 = dd(P33id, pro1(P32id, options))
local P34id = GetP171id(P33id, "raw")
P34 = dd(P34id, pro1(P33id, options))
local P35id = GetP171id(P34id, "raw")
P35 = dd(P35id, pro1(P34id, options))
----------------
if not coo or coo == "" then
coo = p.taxcolour(datavalue, datatype, options)
end
----------------
to = "[[التصنيف العلمي]]"
ti = addTrackingCategory(to, options)
ti = addTrackingCategory(ti, {property = "P105", noicon = "t"})
title = 'colspan="2" style="text-align: center;background-color:' .. coo .. ';" | ' .. ti
head = '{| class="infobox biota" style="text-align: right; width: 200px; font-size: 100%%"'
End = "}"
local taxon2 = {
P23 or "",
P22 or "",
P21 or "",
P20 or "",
P19 or "",
P18 or "",
P17 or "",
P16 or "",
P15 or "",
P14 or "",
P13 or "",
P12 or "",
P11 or "",
P10 or "",
P9 or "",
P8 or "",
P7 or "",
P6 or "",
P5 or "",
P4 or "",
P3 or "",
P2 or "",
P1 or "",
P0 or ""
}
----------------
local taxon1 = {
P35 or "",
P34 or "",
P33 or "",
P32 or "",
P31 or "",
P30 or "",
P29 or "",
P28 or "",
P27 or "",
P26 or "",
P25 or "",
P24 or "",
P23 or "",
P22 or "",
P21 or "",
P20 or "",
P19 or "",
P18 or "",
P17 or "",
P16 or "",
P15 or "",
P14 or "",
P13 or "",
P12 or "",
P11 or "",
P10 or "",
P9 or "",
P8 or "",
P7 or "",
P6 or "",
P5 or "",
P4 or "",
P3 or "",
P2 or "",
P1 or "",
P0 or ""
}
----------------
local q = {}
--table.insert( q,head )
table.insert(q, title)
for i, j in ipairs(taxon1) do
----
if options.numb and options.numb ~= "" then
e = i .. "\n|" .. j
else
e = j
end
----
if j and j ~= "" then
table.insert(q, e)
end
end
----------------
--table.insert( q,End )
taxonSections = table.concat(q, "\n|-\n|")
result = string.format([[%s
|-
!%s
|-
|%s
%s]], head, title, taxonSections, End)
----------------
return taxonSections --result
end
return p