<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>http://ru.ru-skazki.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C%3AWikidata%2Fdoc</id>
	<title>Модуль:Wikidata/doc - История изменений</title>
	<link rel="self" type="application/atom+xml" href="http://ru.ru-skazki.ru/index.php?action=history&amp;feed=atom&amp;title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C%3AWikidata%2Fdoc"/>
	<link rel="alternate" type="text/html" href="http://ru.ru-skazki.ru/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:Wikidata/doc&amp;action=history"/>
	<updated>2026-05-08T17:18:13Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.41.1</generator>
	<entry>
		<id>http://ru.ru-skazki.ru/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:Wikidata/doc&amp;diff=4845&amp;oldid=prev</id>
		<title>Импортёр: 1 версия импортирована</title>
		<link rel="alternate" type="text/html" href="http://ru.ru-skazki.ru/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:Wikidata/doc&amp;diff=4845&amp;oldid=prev"/>
		<updated>2024-05-01T10:07:13Z</updated>

		<summary type="html">&lt;p&gt;1 версия импортирована&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Предыдущая версия&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Версия от 13:07, 1 мая 2024&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Импортёр</name></author>
	</entry>
	<entry>
		<id>http://ru.ru-skazki.ru/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:Wikidata/doc&amp;diff=4844&amp;oldid=prev</id>
		<title>ru&gt;Andras в 10:50, 18 июня 2023</title>
		<link rel="alternate" type="text/html" href="http://ru.ru-skazki.ru/index.php?title=%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D1%8C:Wikidata/doc&amp;diff=4844&amp;oldid=prev"/>
		<updated>2023-06-18T10:50:47Z</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;{{СИШ}}&lt;br /&gt;
{{Рейтинг модуля|p}}&lt;br /&gt;
{{TOC right}}&lt;br /&gt;
Используется в {{Tl|Wikidata}} (см. описания параметров там же). Настраивается при помощи [[Модуль:Wikidata/config]]. &lt;br /&gt;
&lt;br /&gt;
Прежде чем вносить какие-либо изменения в данный модуль, просьба оттестировать их в [[Модуль:Wikidata/песочница|/песочнице]]. Обратите внимание, что не всё корректно работает в песочнице.&lt;br /&gt;
&lt;br /&gt;
== Общие сведения ==&lt;br /&gt;
Функции данного модуля не предназначены для прямого вызова из шаблонов карточек или других модулей, не являющихся функциями расширения данного. Для вызова из шаблонов карточек используйте шаблон {{Tl|Wikidata}} или один из специализированных шаблонов для свойств. Для вызова функций Викиданных предназначенных для отображения чаще всего достаточно вызова &amp;lt;code&amp;gt;frame:expandTemplate{}&amp;lt;/code&amp;gt; с вызовом шаблона, ответственного за отрисовку свойства. С другой стороны, вызов определённых функций модуля (в основном это касается &amp;lt;code&amp;gt;getEntity()&amp;lt;/code&amp;gt;) может в будущем стать предпочтительным. Данный Lua-функционал в любом случае стоит рассматривать как unstable с точки зрения сохранения совместимости на уровне кода (вместе с соответствующими функциями API для Wikibase Client).&lt;br /&gt;
&lt;br /&gt;
Далее описывается внутренняя документация. Названия функций и параметров могут изменяться. При их изменении автор изменений обязан обновить шаблон {{Tl|Wikidata}} и специализированные шаблоны свойств. Изменения в других местах, если кто-то всё-таки вызывает функции модуля напрямую, остаются на совести автора «костыля». Итак, при вызове шаблона {{Tl|Wikidata}} или специализированного шаблона свойства управление отдаётся на функцию formatStatements, которая принимает frame. Из frame достаются следующие опции, которые так или иначе передаются в остальные функции:&lt;br /&gt;
* &amp;lt;code&amp;gt;plain&amp;lt;/code&amp;gt; — булевый переключатель (по умолчанию false). Если true, результат совпадает с обычным вызовом &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;{{#property:pNNN}}&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt; (по факту им и будет являться)&lt;br /&gt;
* &amp;lt;code&amp;gt;references&amp;lt;/code&amp;gt; — булевый переключатель (по умолчанию true). Если true, после вывода значения параметра дополнительно выводит ссылки на источники, указанные в Викиданных. Для вывода используется [[Модуль:Sources]]. Обычно отключается для тех свойств, которые являются «самоописываемыми», например, внешними идентификаторами или ссылками (когда такая ссылка является доказательством своей актуальности), например, идентификаторы IMDb.&lt;br /&gt;
* &amp;lt;code&amp;gt;value&amp;lt;/code&amp;gt; — значение, которое надо выводить &amp;#039;&amp;#039;вместо&amp;#039;&amp;#039; значений из Викиданных (используется, если что-то задано уже в карточке в виде т. н. локального свойства)&lt;br /&gt;
&lt;br /&gt;
По умолчанию модуль поддерживает вывод следующих значений без дополнительных настроек:&lt;br /&gt;
* географические координаты (coordinates)&lt;br /&gt;
* количественные значения (quantity)&lt;br /&gt;
* моноязычный текст (monolingualtext)&lt;br /&gt;
* строки (string)&lt;br /&gt;
* даты (time)&lt;br /&gt;
Остальные типы данных требуют указания функции форматирования значения.&lt;br /&gt;
&lt;br /&gt;
== Кастомизация ==&lt;br /&gt;
Поддерживаются три типа параметров-функций, которые дополнительно указывают, как надо форматировать значения:&lt;br /&gt;
* &amp;lt;code&amp;gt;property-module&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;property-function&amp;lt;/code&amp;gt; — название модуля и функции модуля, которые отвечают за форматирование вывода массива значений &amp;#039;&amp;#039;свойства&amp;#039;&amp;#039; (statements, claims) с учётом квалификаторов, ссылок и прочего. Например, оформляет множество выводов в таблицу или график. Характерные примеры:&lt;br /&gt;
** вывод таблицы и графика населения в {{Tl|wikidata/Population}} и [[Модуль:Wikidata/Population]].&lt;br /&gt;
*: Спецификация функции: &amp;lt;code&amp;gt;function p.…( context, options )&amp;lt;/code&amp;gt;, поведение по умолчанию: [[Модуль:Wikidata#formatPropertyDefault]].&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;claim-module&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;claim-function&amp;lt;/code&amp;gt; — название модуля и функции модуля, которые отвечают за форматирование вывода значения &amp;#039;&amp;#039;свойства&amp;#039;&amp;#039; (statement, claim) с учётом квалификаторов, ссылок и прочего. Может, например, дополнительно к основному значению (main snak) вывести значения квалификаторов. Характерные примеры:&lt;br /&gt;
** вывод вышестоящих административных единиц и страны в [[Модуль:Wikidata/Places]];&lt;br /&gt;
** вывод авторов латинского названия и даты публикации в [[Модуль:Wikidata/Biology]];&lt;br /&gt;
** вывод операционной системы и даты релиза в [[Модуль:Wikidata/Software]];&lt;br /&gt;
** вывод количества и даты, на которую оно верно, в [[Модуль:Wikidata/number]];&lt;br /&gt;
*: Спецификация функции: &amp;lt;code&amp;gt;function p.…( context, options, statement )&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;value-module&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;value-function&amp;lt;/code&amp;gt; — название модуля и функции модуля, которые отвечают за форматирование &amp;#039;&amp;#039;значения&amp;#039;&amp;#039; (snak, snak data value), в зависимости от контекста, как значений свойства, так и значений квалификатора (если вызывается из &amp;lt;code&amp;gt;claim-module/claim-function&amp;lt;/code&amp;gt;). Необходимо для изменения отображения свойства, например, генерации викиссылки вместо простой строки или даже вставки изображения вместо отображения имени файла изображения (так как ссылки на изображения хранятся как строки). Характерные примеры:&lt;br /&gt;
** вывод ссылки на [[Викисклад]] в [[Модуль:Wikidata/media]]&lt;br /&gt;
** вывод ссылок на внешние сайты в [[Модуль:Wikidata/link]]&lt;br /&gt;
*: Спецификация функции: &amp;lt;code&amp;gt;function p.…( value, options )&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Заготовки функций ===&lt;br /&gt;
{{Скрытый блок&lt;br /&gt;
| Заголовок     = property-function&lt;br /&gt;
| Содержание    = &amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function p.formatSomeProperty( context, options )&lt;br /&gt;
	local claims = context.selectClaims( options, options.property );&lt;br /&gt;
	if claims == nil then&lt;br /&gt;
		return &amp;#039;&amp;#039;&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	local formattedStatements = {}&lt;br /&gt;
	for _, claim in ipairs( claims ) do&lt;br /&gt;
		local formattedStatement = context.formatStatement( options, claim )&lt;br /&gt;
		-- local formattedStatement = p.formatSomeStatement( context, options, claim )&lt;br /&gt;
		if ( formattedStatement and formattedStatement ~= &amp;#039;&amp;#039; ) then&lt;br /&gt;
			formattedStatement = context.wrapStatement( formattedStatement, options.property, claim.id )&lt;br /&gt;
			table.insert( formattedStatements, formattedStatement )&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return mw.text.listToText( formattedStatements, options.separator, options.conjunction )&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Также см. код метода &amp;lt;code&amp;gt;formatPropertyDefault&amp;lt;/code&amp;gt; ниже, в нём присутствует больше проверок и работа параметрами вызова.&lt;br /&gt;
}}&lt;br /&gt;
{{Скрытый блок&lt;br /&gt;
| Заголовок     = claim-function&lt;br /&gt;
| Содержание    = &amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function formatSomeClaim( context, options, statement )&lt;br /&gt;
	local circumstances = context.getSourcingCircumstances( statement );&lt;br /&gt;
	options.qualifiers = statement.qualifiers;&lt;br /&gt;
	local result = context.formatSnak( options, statement.mainsnak, circumstances );&lt;br /&gt;
&lt;br /&gt;
	if ( result and result ~= &amp;#039;&amp;#039; and options.references ) then&lt;br /&gt;
		result = result .. context.formatRefs( options, statement );&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return result;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Также см. код метода &amp;lt;code&amp;gt;formatStatementDefault&amp;lt;/code&amp;gt; ниже, в нём есть пример работы с квалификаторами.&lt;br /&gt;
}}&lt;br /&gt;
{{Скрытый блок&lt;br /&gt;
| Заголовок     = value-function&lt;br /&gt;
| Содержание    = &amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function formatSomeValue( context, options, value )&lt;br /&gt;
	return value;&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Также см. код метода &amp;lt;code&amp;gt;formatUrlSingle&amp;lt;/code&amp;gt; в модуле [[Модуль:URL]].&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Context API ===&lt;br /&gt;
{{Заготовка раздела|описать публичные методы, доступные через &amp;lt;code&amp;gt;context&amp;lt;/code&amp;gt;.}}&lt;br /&gt;
==== Переменные ====&lt;br /&gt;
* &amp;lt;code&amp;gt;entity&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;frame&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Методы ====&lt;br /&gt;
* &amp;lt;code&amp;gt;cloneOptions( options )&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;getSourcingCircumstances( statement )&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;formatProperty( options )&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;formatPropertyDefault( context, options )&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;formatSnak( options, snak, circumstances )&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;formatStatement( options, statement )&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;formatStatementDefault( context, options, statement )&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;formatRefs( options, statement )&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;formatValueDefault( context, options, value )&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;parseTimeBoundariesFromSnak( snak )&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;parseTimeFromSnak( snak )&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;selectClaims( options, propertyId )&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;wrapSnak( value, hash, attributes )&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;wrapStatement( value, propertyId, claimId, attributes )&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;wrapQualifier( value, qualifierId, attributes )&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Функции для форматирования ===&lt;br /&gt;
==== property-function ====&lt;br /&gt;
* [[Модуль:Wikidata/date|Wikidata/date]]::formatDateIntervalProperty&lt;br /&gt;
* [[Модуль:Wikidata/Medals|Wikidata/Medals]]::formatProperty&lt;br /&gt;
* [[Модуль:Wikidata/Software|Wikidata/Software]]::formatVersionProperty&lt;br /&gt;
* [[Модуль:Wikidata/P512|Wikidata/P512]]::formatAcademicDegree&lt;br /&gt;
* [[Модуль:Wikidata/number|Wikidata/number]]::formatPropertyWithMostRecentClaimAndIndicator&lt;br /&gt;
* [[Модуль:Wikidata/number|Wikidata/number]]::formatColorIndex&lt;br /&gt;
&lt;br /&gt;
==== claim-function ====&lt;br /&gt;
* [[Модуль:Wikidata/Places|Wikidata/Places]]::formatCountryClaimWithFlag&lt;br /&gt;
* [[Модуль:Wikidata/Places|Wikidata/Places]]::formatPlaceWithQualifiers&lt;br /&gt;
* [[Модуль:Wikidata/item|Wikidata/item]]::formatEntityWithGenderClaim&lt;br /&gt;
* [[Модуль:Wikidata/Biology|Wikidata/Biology]]::formatTaxonNameClaim&lt;br /&gt;
* [[Модуль:Wikidata/item|Wikidata/item]]::applyDefaultTemplate&lt;br /&gt;
* [[Модуль:Wikidata/date|Wikidata/date]]::formatDateOfBirthClaim&lt;br /&gt;
* [[Модуль:Wikidata/date|Wikidata/date]]::formatDateOfDeathClaim&lt;br /&gt;
&lt;br /&gt;
==== value-function ====&lt;br /&gt;
* [[Модуль:Wikidata|Wikidata]]::extractCategory&lt;br /&gt;
* [[Модуль:Wikidata/link|Wikidata/link]]::fromModule&lt;br /&gt;
* [[Модуль:Wikidata/Medals|Wikidata/Medals]]::formatValue&lt;br /&gt;
* [[Модуль:Wikidata/media|Wikidata/media]]::formatCommonsCategory&lt;br /&gt;
* [[Модуль:Wikidata/Software|Wikidata/Software]]::formatExtension&lt;br /&gt;
* [[Модуль:Wikidata/number|Wikidata/number]]::formatRA&lt;br /&gt;
* [[Модуль:Wikidata/number|Wikidata/number]]::formatDMS&lt;br /&gt;
* [[Модуль:Wikidata/url|Wikidata/url]]::formatUrlValue&lt;br /&gt;
* [[Модуль:Wikidata/url|Wikidata/url]]::formatLangRefs&lt;br /&gt;
&lt;br /&gt;
== См. также ==&lt;br /&gt;
* [[Модуль:Wikibase]]&lt;br /&gt;
* Независимые иноязычные аналоги:&lt;br /&gt;
** [[:fr:Module:Wikidata]]&lt;br /&gt;
** [[:ca:Mòdul:Wikidades]]&lt;br /&gt;
** [[:it:Modulo:Wikidata]]&lt;br /&gt;
** [[:de:Modul:Wikidata]]&lt;br /&gt;
** [[:en:Module:WikidataIB]]&lt;br /&gt;
** [[:en:Module:Wd]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;noinclude&amp;gt;&lt;br /&gt;
[[Категория:Модули:Документация]]&lt;br /&gt;
&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;includeonly&amp;gt;&lt;br /&gt;
[[Категория:Модули:Викиданные]]&lt;br /&gt;
&amp;lt;/includeonly&amp;gt;&lt;/div&gt;</summary>
		<author><name>ru&gt;Andras</name></author>
	</entry>
</feed>