<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ar">
	<id>https://www.copticpedia.org/index.php?action=history&amp;feed=atom&amp;title=%D9%88%D8%AD%D8%AF%D8%A9%3AWikidata2%2Ftime</id>
	<title>وحدة:Wikidata2/time - تاريخ المراجعة</title>
	<link rel="self" type="application/atom+xml" href="https://www.copticpedia.org/index.php?action=history&amp;feed=atom&amp;title=%D9%88%D8%AD%D8%AF%D8%A9%3AWikidata2%2Ftime"/>
	<link rel="alternate" type="text/html" href="https://www.copticpedia.org/index.php?title=%D9%88%D8%AD%D8%AF%D8%A9:Wikidata2/time&amp;action=history"/>
	<updated>2026-05-05T18:19:39Z</updated>
	<subtitle>تاريخ التعديل لهذه الصفحة في الويكي</subtitle>
	<generator>MediaWiki 1.41.1</generator>
	<entry>
		<id>https://www.copticpedia.org/index.php?title=%D9%88%D8%AD%D8%AF%D8%A9:Wikidata2/time&amp;diff=73184&amp;oldid=prev</id>
		<title>Gerges: مراجعة واحدة</title>
		<link rel="alternate" type="text/html" href="https://www.copticpedia.org/index.php?title=%D9%88%D8%AD%D8%AF%D8%A9:Wikidata2/time&amp;diff=73184&amp;oldid=prev"/>
		<updated>2021-09-14T19:58:29Z</updated>

		<summary type="html">&lt;p&gt;مراجعة واحدة&lt;/p&gt;
&lt;p&gt;&lt;b&gt;صفحة جديدة&lt;/b&gt;&lt;/p&gt;&lt;div&gt;local p = {}&lt;br /&gt;
------------------------------------------------------------------------------&lt;br /&gt;
-- module local variables and functions&lt;br /&gt;
&lt;br /&gt;
local wiki = &lt;br /&gt;
{&lt;br /&gt;
	langcode = mw.language.getContentLanguage().code&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
-- internationalisation&lt;br /&gt;
local i18n =&lt;br /&gt;
{    [&amp;quot;errors&amp;quot;] = {&lt;br /&gt;
        [&amp;quot;property-param-not-provided&amp;quot;] = &amp;quot;Property parameter not provided.&amp;quot;,&lt;br /&gt;
        [&amp;quot;entity-not-found&amp;quot;] = &amp;quot;Entity not found.&amp;quot;,&lt;br /&gt;
        [&amp;quot;unknown-claim-type&amp;quot;] = &amp;quot;Unknown claim type.&amp;quot;,&lt;br /&gt;
        [&amp;quot;unknown-snak-type&amp;quot;] = &amp;quot;Unknown snak type.&amp;quot;,&lt;br /&gt;
        [&amp;quot;unknown-datatype&amp;quot;] = &amp;quot;Unknown datatype.&amp;quot;,&lt;br /&gt;
        [&amp;quot;unknown-entity-type&amp;quot;] = &amp;quot;Unknown entity type.&amp;quot;,&lt;br /&gt;
        [&amp;quot;unknown-value-module&amp;quot;] = &amp;quot;You must set both value-module and value-function parameters.&amp;quot;,&lt;br /&gt;
        [&amp;quot;value-module-not-found&amp;quot;] = &amp;quot;The module pointed by value-module not found.&amp;quot;,&lt;br /&gt;
        [&amp;quot;value-function-not-found&amp;quot;] = &amp;quot;The function pointed by value-function not found.&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
    [&amp;quot;datetime&amp;quot;] =&lt;br /&gt;
	{&lt;br /&gt;
		-- $1 is a placeholder for the actual number&lt;br /&gt;
		[0] = &amp;quot;$1 مليار سنة&amp;quot;,	--a الدقة:مليار سنة&lt;br /&gt;
		[1] = &amp;quot;$100 مليون سنة&amp;quot;,	--a الدقة: مئات من ملايين السنين&lt;br /&gt;
		[2] = &amp;quot;$10 مليون سنة&amp;quot;,	--a الدقة: عشرة ملايين سنة&lt;br /&gt;
		[3] = &amp;quot;$1 مليون سنة&amp;quot;,	--a الدقة: مليون سنة&lt;br /&gt;
		[4] = &amp;quot;$100,000 سنة&amp;quot;,	--a الدقة: مئات آلاف السنين&lt;br /&gt;
		[5] = &amp;quot;$10,000 سنة&amp;quot;,	--a الدقة: عشرة آلاف سنة&lt;br /&gt;
		[6] = &amp;quot;$1 ألفية&amp;quot;,	 	--a الدقة: ألفية&lt;br /&gt;
		[7] = &amp;quot;القرن $1&amp;quot;,		--a الدقة: قرن&lt;br /&gt;
		[8] = &amp;quot;العقد $1&amp;quot;,		--a الدقة: عقد&lt;br /&gt;
		-- the following use the format of #time parser function&lt;br /&gt;
		[9]  = &amp;quot;Y&amp;quot;,		-- الدقة: سنة, &lt;br /&gt;
		[10] = &amp;quot;F Y&amp;quot;,		-- الدقة: شهر&lt;br /&gt;
		[11] = &amp;quot;j F Y&amp;quot;,		-- الدقة: يوم&lt;br /&gt;
		[12] = &amp;quot;j F Y ga&amp;quot;,		-- الدقة: ساعة&lt;br /&gt;
		[13] = &amp;quot;j F Y g:ia&amp;quot;,		-- الدقة: دقائق&lt;br /&gt;
		[14] = &amp;quot;j F Y g:i:sa&amp;quot;,	-- الدقة: ثواني&lt;br /&gt;
		[&amp;quot;beforenow&amp;quot;] = &amp;quot;$1 ق.م&amp;quot;,	-- how to format negative numbers for precisions 0 to 5&lt;br /&gt;
		[&amp;quot;afternow&amp;quot;] = &amp;quot;$1&amp;quot;,		-- how to format positive numbers for precisions 0 to 5&lt;br /&gt;
		[&amp;quot;bc&amp;quot;] = '$1 &amp;quot;ق.م&amp;quot;',		-- كيف طباعة السنوات السلبية&lt;br /&gt;
		[&amp;quot;ad&amp;quot;] = &amp;quot;$1&amp;quot;,				-- كيف طباعة سنوات الإيجابية&lt;br /&gt;
		-- the following are for function getDateValue()&lt;br /&gt;
		[&amp;quot;default-format&amp;quot;] = &amp;quot;dmy&amp;quot;, -- القيمة الافتراضية ل #3 (getDateValue)&lt;br /&gt;
		[&amp;quot;default-addon&amp;quot;] = &amp;quot;ق.م&amp;quot;,   -- default value of the #4 (getDateValue)&lt;br /&gt;
		[&amp;quot;prefix-addon&amp;quot;] = false,   -- set to true for languages put &amp;quot;BC&amp;quot; in front of the&lt;br /&gt;
									-- datetime string; or the addon will be suffixed&lt;br /&gt;
		[&amp;quot;addon-sep&amp;quot;] = &amp;quot; &amp;quot;,		-- separator between datetime string and addon (or inverse)&lt;br /&gt;
		[&amp;quot;format&amp;quot;] =				-- options of the 3rd argument&lt;br /&gt;
		{&lt;br /&gt;
			[&amp;quot;j F Y&amp;quot;] = &amp;quot;j F Y&amp;quot;,&lt;br /&gt;
			[&amp;quot;dmy&amp;quot;] = &amp;quot;j F Y&amp;quot;,&lt;br /&gt;
			[&amp;quot;dmY&amp;quot;] = &amp;quot;dmY&amp;quot;,&lt;br /&gt;
			[&amp;quot;j F&amp;quot;] = &amp;quot;j F&amp;quot;,&lt;br /&gt;
			[&amp;quot;longdate&amp;quot;] = &amp;quot;j F Y&amp;quot;,&lt;br /&gt;
			[&amp;quot;my&amp;quot;] = &amp;quot;F Y&amp;quot;,&lt;br /&gt;
			[&amp;quot;y&amp;quot;] = &amp;quot;Y&amp;quot;,&lt;br /&gt;
			[&amp;quot;Y&amp;quot;] = &amp;quot;Y&amp;quot;,&lt;br /&gt;
			[&amp;quot;F&amp;quot;] = &amp;quot;F&amp;quot;,&lt;br /&gt;
			[&amp;quot;n&amp;quot;] = &amp;quot;n&amp;quot;,&lt;br /&gt;
			[&amp;quot;m&amp;quot;] = &amp;quot;F&amp;quot;,&lt;br /&gt;
			[&amp;quot;j&amp;quot;] = &amp;quot;j&amp;quot;,&lt;br /&gt;
			[&amp;quot;d&amp;quot;] = &amp;quot;j&amp;quot;,&lt;br /&gt;
			[&amp;quot;ymd&amp;quot;] = &amp;quot;Y-m-d&amp;quot;,&lt;br /&gt;
			[&amp;quot;ym&amp;quot;] = &amp;quot;Y-m&amp;quot;&lt;br /&gt;
		}&lt;br /&gt;
	},&lt;br /&gt;
	[&amp;quot;ordinal&amp;quot;] = &lt;br /&gt;
	{&lt;br /&gt;
		[1] = &amp;quot;&amp;quot;, --st&lt;br /&gt;
		[2] = &amp;quot;&amp;quot;, --nd&lt;br /&gt;
		[3] = &amp;quot;&amp;quot;, --rd&lt;br /&gt;
		[&amp;quot;default&amp;quot;] = &amp;quot;&amp;quot; --th&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
local categorywikidatadata = '[[تصنيف:صفحات بها بيانات ويكي بيانات]]';&lt;br /&gt;
&lt;br /&gt;
-- this function needs to be internationalised along with the above:&lt;br /&gt;
-- we need three exceptions in English for 1st, 2nd, 3rd&lt;br /&gt;
-- takes cardinal numer as a numeric and returns the ordinal as a string&lt;br /&gt;
local function makeOrdinal(cardinal)&lt;br /&gt;
	local ordsuffix = i18n.ordinal.default&lt;br /&gt;
	if cardinal % 10 == 1 then&lt;br /&gt;
		ordsuffix = i18n.ordinal[1]&lt;br /&gt;
	elseif cardinal % 10 == 2 then&lt;br /&gt;
		ordsuffix = i18n.ordinal[2]&lt;br /&gt;
	elseif cardinal % 10 == 3 then&lt;br /&gt;
		ordsuffix = i18n.ordinal[3]&lt;br /&gt;
	end&lt;br /&gt;
	return tostring(cardinal) .. ordsuffix&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function formatError(code)&lt;br /&gt;
	return '&amp;lt;span class=&amp;quot;error&amp;quot;&amp;gt;' .. (i18n.errors[code] or code) .. '&amp;lt;/span&amp;gt;'&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function parseDateValue(timestamp, date_format, date_addon)&lt;br /&gt;
	local prefix_addon = i18n[&amp;quot;datetime&amp;quot;][&amp;quot;prefix-addon&amp;quot;]&lt;br /&gt;
	local addon_sep = i18n[&amp;quot;datetime&amp;quot;][&amp;quot;addon-sep&amp;quot;]&lt;br /&gt;
	local addon = &amp;quot;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	-- check for negative date&lt;br /&gt;
	if string.sub(timestamp, 1, 1) == '-' then&lt;br /&gt;
		timestamp = '+' .. string.sub(timestamp, 2)&lt;br /&gt;
		addon = date_addon&lt;br /&gt;
	end&lt;br /&gt;
	local function d(f)&lt;br /&gt;
		local year_suffix&lt;br /&gt;
		local tstr = &amp;quot;&amp;quot;&lt;br /&gt;
		local lang_obj = mw.language.new(wiki.langcode)&lt;br /&gt;
		local f_parts = mw.text.split(f, 'Y', true)&lt;br /&gt;
		for idx, f_part in pairs(f_parts) do&lt;br /&gt;
			year_suffix = ''&lt;br /&gt;
			if string.match(f_part, &amp;quot;x[mijkot]$&amp;quot;) then&lt;br /&gt;
				-- for non-Gregorian year&lt;br /&gt;
				f_part = f_part .. 'Y'&lt;br /&gt;
			elseif idx &amp;lt; #f_parts then&lt;br /&gt;
				-- supress leading zeros in year&lt;br /&gt;
				year_suffix = lang_obj:formatDate('Y', timestamp)&lt;br /&gt;
				year_suffix = string.gsub(year_suffix, '^0+', '', 1)&lt;br /&gt;
			end&lt;br /&gt;
			tstr = tstr .. lang_obj:formatDate(f_part, timestamp) .. year_suffix&lt;br /&gt;
		end&lt;br /&gt;
		if addon ~= &amp;quot;&amp;quot; and prefix_addon then&lt;br /&gt;
			return addon .. addon_sep .. tstr&lt;br /&gt;
		elseif addon ~= &amp;quot;&amp;quot; then&lt;br /&gt;
			return tstr .. addon_sep .. addon&lt;br /&gt;
		else&lt;br /&gt;
			return tstr&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	local _date_format = i18n[&amp;quot;datetime&amp;quot;][&amp;quot;format&amp;quot;][date_format]&lt;br /&gt;
	if _date_format ~= nil then&lt;br /&gt;
		return d(_date_format)&lt;br /&gt;
	else&lt;br /&gt;
		return formatError(&amp;quot;unknown-datetime-format&amp;quot;)&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- This local function combines the year/month/day/BC/BCE handling of parseDateValue{}&lt;br /&gt;
-- with the millennium/century/decade handling of formatDate()&lt;br /&gt;
local function parseDateFull(timestamp, precision, date_format, date_addon)&lt;br /&gt;
	local prefix_addon = i18n[&amp;quot;datetime&amp;quot;][&amp;quot;prefix-addon&amp;quot;]&lt;br /&gt;
	local addon_sep = i18n[&amp;quot;datetime&amp;quot;][&amp;quot;addon-sep&amp;quot;]&lt;br /&gt;
	local addon = &amp;quot;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	-- check for negative date&lt;br /&gt;
	if string.sub(timestamp, 1, 1) == '-' then&lt;br /&gt;
		timestamp = '+' .. string.sub(timestamp, 2)&lt;br /&gt;
		addon = date_addon&lt;br /&gt;
	end&lt;br /&gt;
	-- get the next four characters after the + (should be the year now in all cases)&lt;br /&gt;
	-- ok, so this is dirty, but let's get it working first&lt;br /&gt;
	local intyear = tonumber(string.sub(timestamp, 2, 5))&lt;br /&gt;
	if intyear == 0 and precision &amp;lt;= 9 then&lt;br /&gt;
		return &amp;quot;&amp;quot;&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- precision is 10000 years or more&lt;br /&gt;
	if precision &amp;lt;= 5 then&lt;br /&gt;
		local factor = 10 ^ ((5 - precision) + 4)&lt;br /&gt;
		local y2 = math.ceil(math.abs(intyear) / factor)&lt;br /&gt;
		if precision == 2 then y2 = intyear  / 10 end&lt;br /&gt;
		if precision == 3 then y2 = intyear  / 100 end&lt;br /&gt;
		local relative = mw.ustring.gsub(i18n.datetime[precision], &amp;quot;$1&amp;quot;, tostring(y2))&lt;br /&gt;
		--mw.log(&amp;quot;وحدة:Wikidata2/time:&amp;quot; .. i18n.datetime[precision] .. &amp;quot; timestamp: &amp;quot; .. timestamp  .. &amp;quot; intyear: &amp;quot; .. intyear )&lt;br /&gt;
		if addon ~= &amp;quot;&amp;quot; then&lt;br /&gt;
			-- negative date&lt;br /&gt;
			relative = mw.ustring.gsub(i18n.datetime.beforenow, &amp;quot;$1&amp;quot;, relative)&lt;br /&gt;
		else&lt;br /&gt;
			relative = mw.ustring.gsub(i18n.datetime.afternow, &amp;quot;$1&amp;quot;, relative)&lt;br /&gt;
		end			&lt;br /&gt;
		return relative&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- precision is decades (8), centuries (7) and millennia (6)&lt;br /&gt;
	local era, card&lt;br /&gt;
	if precision == 6 then&lt;br /&gt;
		card = math.floor((intyear - 1) / 1000) + 1&lt;br /&gt;
		era = mw.ustring.gsub(i18n.datetime[6], &amp;quot;$1&amp;quot;, makeOrdinal(card))&lt;br /&gt;
	end&lt;br /&gt;
	if precision == 7 then&lt;br /&gt;
		card = math.floor((intyear - 1) / 100) + 1&lt;br /&gt;
		era = mw.ustring.gsub(i18n.datetime[7], &amp;quot;$1&amp;quot;, makeOrdinal(card))&lt;br /&gt;
	end&lt;br /&gt;
	if precision == 8 then&lt;br /&gt;
		era = mw.ustring.gsub(i18n.datetime[8], &amp;quot;$1&amp;quot;, tostring(math.floor(math.abs(intyear) / 10) * 10))&lt;br /&gt;
	end&lt;br /&gt;
	if era then&lt;br /&gt;
		if addon ~= &amp;quot;&amp;quot; then&lt;br /&gt;
			era = mw.ustring.gsub(mw.ustring.gsub(i18n.datetime.bc, '&amp;quot;', &amp;quot;&amp;quot;), &amp;quot;$1&amp;quot;, era)&lt;br /&gt;
		else&lt;br /&gt;
			era = mw.ustring.gsub(mw.ustring.gsub(i18n.datetime.ad, '&amp;quot;', &amp;quot;&amp;quot;), &amp;quot;$1&amp;quot;, era)&lt;br /&gt;
		end&lt;br /&gt;
		return era&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	local _date_format = i18n[&amp;quot;datetime&amp;quot;][&amp;quot;format&amp;quot;][date_format]&lt;br /&gt;
	if _date_format ~= nil then&lt;br /&gt;
		 -- check for precision is year and override supplied date_format&lt;br /&gt;
 		if precision == 9 then&lt;br /&gt;
 			_date_format = i18n[&amp;quot;datetime&amp;quot;][9]&lt;br /&gt;
 		end&lt;br /&gt;
 		if precision == 10 then&lt;br /&gt;
 			_date_format = i18n[&amp;quot;datetime&amp;quot;][10]&lt;br /&gt;
 		end&lt;br /&gt;
		local year_suffix&lt;br /&gt;
		local tstr = &amp;quot;&amp;quot;&lt;br /&gt;
		local lang_obj = mw.language.new(wiki.langcode)&lt;br /&gt;
		local f_parts = mw.text.split(_date_format, 'Y', true)&lt;br /&gt;
		for idx, f_part in pairs(f_parts) do&lt;br /&gt;
			year_suffix = ''&lt;br /&gt;
			if string.match(f_part, &amp;quot;x[mijkot]$&amp;quot;) then&lt;br /&gt;
				-- for non-Gregorian year&lt;br /&gt;
				f_part = f_part .. 'Y'&lt;br /&gt;
			elseif idx &amp;lt; #f_parts then&lt;br /&gt;
				-- supress leading zeros in year&lt;br /&gt;
				year_suffix = lang_obj:formatDate('Y', timestamp)&lt;br /&gt;
				year_suffix = string.gsub(year_suffix, '^0+', '', 1)&lt;br /&gt;
			end&lt;br /&gt;
			tstr = tstr .. lang_obj:formatDate(f_part, timestamp) .. year_suffix&lt;br /&gt;
		end&lt;br /&gt;
		local fdate&lt;br /&gt;
		if addon ~= &amp;quot;&amp;quot; and prefix_addon then&lt;br /&gt;
			fdate = addon .. addon_sep .. tstr&lt;br /&gt;
		elseif addon ~= &amp;quot;&amp;quot; then&lt;br /&gt;
			fdate = tstr .. addon_sep .. addon&lt;br /&gt;
		else&lt;br /&gt;
			fdate = tstr&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		--mw.log(&amp;quot;وحدة:Wikidata2/time:&amp;quot; .. timestamp .. &amp;quot; precision: &amp;quot; .. precision .. &amp;quot; fdate: &amp;quot; .. fdate )&lt;br /&gt;
		return fdate&lt;br /&gt;
	else&lt;br /&gt;
		return formatError(&amp;quot;unknown-datetime-format&amp;quot;)&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- precision: 0 - billion years, 1 - hundred million years, ..., 6 - millennia, 7 - century, 8 - decade, 9 - year, 10 - month, 11 - day, 12 - hour, 13 - minute, 14 - second&lt;br /&gt;
local function normalizeDate(date)&lt;br /&gt;
	date = mw.text.trim(date, &amp;quot;+&amp;quot;)&lt;br /&gt;
	-- extract year&lt;br /&gt;
	local yearstr = mw.ustring.match(date, &amp;quot;^\-?%d+&amp;quot;)&lt;br /&gt;
	local year = tonumber(yearstr)&lt;br /&gt;
	-- remove leading zeros of year&lt;br /&gt;
	return year .. mw.ustring.sub(date, #yearstr + 1), year&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.getdate(time1, options)&lt;br /&gt;
		if options.modifytime and options.modifytime ~= &amp;quot;&amp;quot;&lt;br /&gt;
		then &lt;br /&gt;
			formatd = options.modifytime&lt;br /&gt;
		else &lt;br /&gt;
			formatd = i18n[&amp;quot;datetime&amp;quot;][&amp;quot;default-format&amp;quot;]&lt;br /&gt;
		end&lt;br /&gt;
		local date_format = mw.text.trim(formatd)&lt;br /&gt;
		local timestamp = time1.time&lt;br /&gt;
		local dateprecision = time1.precision&lt;br /&gt;
		if dateprecision &amp;gt;5 then&lt;br /&gt;
		timestamp = mw.ustring.gsub(timestamp ,'%-00%-','-01-')&lt;br /&gt;
	end&lt;br /&gt;
       if dateprecision == 9 or dateprecision == 10 then&lt;br /&gt;
    	timestamp = mw.ustring.gsub(timestamp ,'%-00T','-01T') end&lt;br /&gt;
&lt;br /&gt;
		local date_addon = mw.text.trim(options.date_addon or i18n[&amp;quot;datetime&amp;quot;][&amp;quot;default-addon&amp;quot;])&lt;br /&gt;
		local tid = parseDateFull(timestamp, dateprecision, date_format, date_addon)&lt;br /&gt;
	return tid&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
function p.getdate1(time1, modifytime )&lt;br /&gt;
		if modifytime  and modifytime  ~= '' &lt;br /&gt;
		then &lt;br /&gt;
			formatd = modifytime &lt;br /&gt;
		else &lt;br /&gt;
			formatd = i18n[&amp;quot;datetime&amp;quot;][&amp;quot;default-format&amp;quot;]&lt;br /&gt;
		end&lt;br /&gt;
		local date_format = mw.text.trim(formatd)&lt;br /&gt;
		local timestamp = time1.time&lt;br /&gt;
		local dateprecision = time1.precision&lt;br /&gt;
		timestamp = string.gsub(timestamp ,'-00-','-01-')&lt;br /&gt;
		&lt;br /&gt;
       if dateprecision == 9 or dateprecision == 10 then&lt;br /&gt;
    	timestamp = string.gsub(timestamp ,'-00T','-01T') &lt;br /&gt;
		end&lt;br /&gt;
		local date_addon = mw.text.trim(i18n[&amp;quot;datetime&amp;quot;][&amp;quot;default-addon&amp;quot;])&lt;br /&gt;
		local tid = parseDateFull(timestamp, dateprecision, date_format, date_addon)&lt;br /&gt;
	return tid&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- returns the page id (Q...) of the current page or nothing of the page is not connected to Wikidata&lt;br /&gt;
function p.pageId(frame)&lt;br /&gt;
	local entity = mw.wikibase.getEntityObject()&lt;br /&gt;
	if not entity then return nil else return entity.id end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>Gerges</name></author>
	</entry>
</feed>