Модуль:WD/doc
Это страница документации Модуль:WD.
Назначение
правитьВ модуле собираются сервисные фукнции, связанные с чтением Викиданных.
Функции, доступные из вики-разметки
правитьlabel()
правитьОписание
- Возвращает метку свойства или элемента Викиданных на указанном языке. Если на указанном языке метки нет, возвращается метка на английском. Если нет метки и на английском, возвращается «нет метки» (константа MSG_NO_LABEL). Если указать несуществующее свойство или элемент Викиданных, будет сгенерирована ошибка Lua (см. константы ERRMSG_PROPERTY_NOT_FOUND, ERRMSG_ITEM_NOT_FOUND и ERRMSG_ENTITY_NOT_FOUND). Для элементов-перенаправлений возвращается метка элемента, на который оно указывает.
- Функция используется в шаблоне {{WD label}}.
Использование
- {{#invoke:WD|label|идентификатор|язык}}
Параметры:
- идентификатор — идентификатор свойства (Pxxx или pxxx) или элемента Викиданных (Qxxx или qxxx);
- язык — двухбуквенный код языка (ru, en, de и т. д.).
Примеры для свойств:
- {{#invoke:WD|label|P569|ru}} → дата рождения
- {{#invoke:WD|label|P569|en}} → date of birth
- {{#invoke:WD|label|P569|de}} → Geburtsdatum
- {{#invoke:WD|label|P569|la}} → dies natalis
- {{#invoke:WD|label|P97|ru}} → титул
- {{#invoke:WD|label|P97|en}} → noble title
- {{#invoke:WD|label|P97|la}} (нет метки на латыни) → noble title
Примеры для элементов:
- {{#invoke:WD|label|Q2|ru}} → Земля
- {{#invoke:WD|label|Q2|en}} → Earth
- {{#invoke:WD|label|Q2|de}} → Erde
- {{#invoke:WD|label|Q2|la}} → Tellus
- {{#invoke:WD|label|Q8258093|ru}} (перенаправление Q8258093 → Q6305566) → Category:Aquitani
Примеры ошибок:
- {{#invoke:WD|label|P999999|ru}} (несуществующее свойство) → ошибка Lua «свойство P999999 не найдено»
- {{#invoke:WD|label|Q6|ru}} (несуществующий элемент) → ошибка Lua «элемент Q6 не найден»
- {{#invoke:WD|label|BOND007|ru}} (неверный идентификатор) → ошибка Lua «Введённый идентификатор не известен системе. Используйте один из действующих идентификаторов сущностей»
description()
правитьОписание
- Возвращает описание свойства или элемента Викиданных на указанном языке. Если на указанном языке описания нет, возвращается описание на английском. Если нет описания и на английском, возвращается «нет описания» (константа MSG_NO_DESCRIPTION). Если указать несуществующее свойство или элемент Викиданных, будет сгенерирована ошибка Lua (см. константы ERRMSG_PROPERTY_NOT_FOUND, ERRMSG_ITEM_NOT_FOUND и ERRMSG_ENTITY_NOT_FOUND). Для элементов-перенаправлений возвращается описание элемента, на который оно указывает.
- Функция используется в шаблоне {{WD description}}.
Использование
- {{#invoke:WD|description|идентификатор|язык}}
Параметры:
- идентификатор — идентификатор свойства (Pxxx или pxxx) или элемента Викиданных (Qxxx или qxxx);
- язык — двухбуквенный код языка (ru, en, de и т. д.).
Примеры для свойств:
- {{#invoke:WD|description|P569|ru}} → день, месяц, год, в который субъект был рождён
- {{#invoke:WD|description|P569|en}} → date on which the subject was born
- {{#invoke:WD|description|P569|de}} → Datum, an dem eine Person geboren wurde
- {{#invoke:WD|description|P97|ru}} → дворянский титул персоны
- {{#invoke:WD|description|P97|en}} → titles held by the person
- {{#invoke:WD|description|P97|la}} (нет описания на латыни) → titles held by the person
Примеры для элементов:
- {{#invoke:WD|description|Q2|ru}} → третья от Солнца планета о солнечное системе
- {{#invoke:WD|description|Q2|en}} → third planet from the Sun in the Solar System
- {{#invoke:WD|description|Q2|de}} → dritter Planet von der Sonne aus im Sonnensystem
- {{#invoke:WD|description|Q2|la}} (нет описания на латыни) → tertius planeta a Sole in systemate solari
- {{#invoke:WD|description|Q8258093|ru}} (перенаправление Q8258093 → Q6305566) → категория в проекте Викимедиа
Примеры ошибок:
- {{#invoke:WD|description|P999999|ru}} (несуществующее свойство) → ошибка Lua «свойство P999999 не найдено»
- {{#invoke:WD|description|Q6|ru}} (несуществующий элемент) → ошибка Lua «элемент Q6 не найден»
- {{#invoke:WD|description|BOND007|ru}} (неверный идентификатор) → ошибка Lua «Введённый идентификатор не известен системе. Используйте один из действующих идентификаторов сущностей»
datatype()
правитьОписание
- Возвращает тип данных свойства Викиданных (одно из значений констант DT_xxx). Если свойство не найдено или функции передан идентификатор элемента, генерируется ошибка Lua (константа ERRMSG_PROPERTY_NOT_FOUND).
Использование
- {{#invoke:WD|datatype|идентификатор}}
Примеры:
- {{#invoke:WD|datatype|P31}} → wikibase-item
- {{#invoke:WD|datatype|P1687}} → wikibase-property
- {{#invoke:WD|datatype|P304}} → string
- {{#invoke:WD|datatype|P1476}} → monolingualtext
- {{#invoke:WD|datatype|P18}} → commonsMedia
- {{#invoke:WD|datatype|P854}} → url
- {{#invoke:WD|datatype|P569}} → time
- {{#invoke:WD|datatype|P625}} → globe-coordinate
- {{#invoke:WD|datatype|P2067}} → quantity
Примеры ошибок:
- {{#invoke:WD|datatype|P999999}} (несуществующее свойство) → ошибка Lua «свойство P999999 не найдено»
- {{#invoke:WD|datatype|Q2}} (элемент) → ошибка Lua «свойство Q2 не найдено»
- {{#invoke:WD|datatype|BOND007}} (неверный идентификатор) → ошибка Lua «Введённый идентификатор не известен системе. Используйте один из действующих идентификаторов сущностей»
format_property()
правитьОписание
- Для указанного свойства Викиданных возвращает ссылку на него в виде [[:d:Property:Pxxx|<метка> (Pxxx)]] с меткой на указанном языке. Если на указанном языке метки нет, используется метка на английском. Если нет метки и на английском, вместо неё используется «нет метки». Если свойство не найдено или функции передан идентификатор элемента, генерируется ошибка Lua (константа ERRMSG_PROPERTY_NOT_FOUND).
- Функция используется в шаблоне {{WD property}}
Использование
- {{#invoke:WD|format_property|идентификатор|язык}}
Параметры:
- идентификатор — идентификатор свойства Викиданных (Pxxx или pxxx);
- язык — двухбуквенный код языка (ru, en, de и т. д.).
Примеры:
- {{#invoke:WD|format_property|P569|ru}} → дата рождения (P569)
- {{#invoke:WD|format_property|P569|en}} → date of birth (P569)
- {{#invoke:WD|format_property|P569|de}} → Geburtsdatum (P569)
- {{#invoke:WD|format_property|P569|la}} → dies natalis (P569)
- {{#invoke:WD|format_property|P97|ru}} → титул (P97)
- {{#invoke:WD|format_property|P97|en}} → noble title (P97)
- {{#invoke:WD|format_property|P97|la}} (нет метки на латыни) → noble title (P97)
Примеры ошибок:
- {{#invoke:WD|format_property|P999999|ru}} (несуществующее свойство) → ошибка Lua «свойство P999999 не найдено»
- {{#invoke:WD|format_property|Q2|ru}} (не свойство) → ошибка Lua «свойство Q2 не найдено»
- {{#invoke:WD|format_property|BOND007|ru}} (неверный идентификатор) → ошибка Lua «Введённый идентификатор не известен системе. Используйте один из действующих идентификаторов сущностей»
format_item()
правитьОписание
- Для указанного элемента Викиданных возвращает ссылку на него в виде [[:d:Qxxx|<метка> (Qxxx)]] с меткой на указанном языке. Если на указанном языке метки нет, используется метка на английском. Если нет метки и на английском, вместо неё используется «нет метки». Если элемент не найден или функции передан идентификатор свойства, генерируется ошибка Lua (константа ERRMSG_ITEM_NOT_FOUND). Для элементов-перенаправлений возвращается ссылка метка и идентификатор на того элемента, на который оно указывает.
- Функция используется в шаблоне {{WD item}}.
Использование
- {{#invoke:WD|format_item|идентификатор|язык}}
Параметры:
- идентификатор — идентификатор элемента Викиданных (Qxxx или qxxx);
- язык — двухбуквенный код языка (ru, en, de и т. д.).
Примеры:
- {{#invoke:WD|format_item|Q2|ru}} → Земля (Q2)
- {{#invoke:WD|format_item|Q2|en}} → Earth (Q2)
- {{#invoke:WD|format_item|Q2|de}} → Erde (Q2)
- {{#invoke:WD|format_item|Q2|la}} → Tellus (Q2)
- {{#invoke:WD|format_item|Q8258093|ru}} (перенаправление Q8258093 → Q6305566) → Category:Aquitani (Q6305566)
Примеры ошибок:
- {{#invoke:WD|format_item|Q6|ru}} (несуществующий элемент) → ошибка Lua «элемент Q6 не найден»
- {{#invoke:WD|format_item|P569|ru}} (не элемент) → ошибка Lua «элемент P569 не найден»
- {{#invoke:WD|format_item|BOND007|ru}} (неверный идентификатор) → ошибка Lua «Введённый идентификатор не известен системе. Используйте один из действующих идентификаторов сущностей»
dump_entity()
правитьОписание
- Отладочная функция, позволяющая показать значение в формате JSON, возвращаемое функцией mw.wikibase.getEntityObject() для указанного элемента или свойства Викиданных.
Использование
- {{#invoke:WD|dump_entity|идентификатор}}
Параметр:
- идентификатор — идентификатор свойства (Pxxx или pxxx) или элемента Викиданных (Qxxx или qxxx).
Примеры (из-за объёмности вывода результат не показан, чтобы увидеть его, используйте Служебная:Песочница для шаблонов):
- {{#invoke:WD|dump_entity|P569}}
- {{#invoke:WD|dump_entity|Q2188189}}
dump_sitelinks()
правитьОписание
- Отладочная функция, позволяющая показать ссылки в формате JSON для указанного элемента Викиданных.
Использование
- {{#invoke:WD|dump_sitelinks|идентификатор}}
Параметр:
- идентификатор — идентификатор элемента Викиданных (Qxxx или qxxx).
Пример:
Вызов | Результат |
---|---|
{{#invoke:WD|dump_sitelinks|Q15920521}} | { "ruwikisource": { "site": "ruwikisource", "title": "Ночные мысли (Гейне; Михайлов)", "badges": { } } } |
{{#invoke:WD|dump_sitelinks|Q4100335}} | { "ruwiki": { "site": "ruwiki", "title": "Бутурлин, Василий Иванович", "badges": { } } } |
{{#invoke:WD|dump_sitelinks|Q644102}} | { "nlwiki": { "site": "nlwiki", "title": "Transfiguratiekathedraal (Sint-Petersburg)", "badges": { } }, "zhwiki": { "site": "zhwiki", "title": "主显圣容主教座堂 (圣彼得堡)", "badges": { } }, "plwiki": { "site": "plwiki", "title": "Sobór Przemienienia Pańskiego w Petersburgu", "badges": { } }, "fywiki": { "site": "fywiki", "title": "Transfiguraasjekatedraal (Sint-Petersburch)", "badges": { } }, "ptwiki": { "site": "ptwiki", "title": "Catedral da Transfiguração", "badges": { } }, "frwiki": { "site": "frwiki", "title": "Cathédrale de la Transfiguration de Saint-Pétersbourg", "badges": { } }, "commonswiki": { "site": "commonswiki", "title": "Category:Transfiguration Cathedral (Saint Petersburg)", "badges": { } }, "ruwiki": { "site": "ruwiki", "title": "Спасо-Преображенский собор (Санкт-Петербург)", "badges": { 1: "Q17437798" } }, "trwiki": { "site": "trwiki", "title": "Transfiguration Katedrali (Saint Petersburg)", "badges": { } }, "bewiki": { "site": "bewiki", "title": "Спаса-Праабражэнскі сабор (Санкт-Пецярбург)", "badges": { } }, "kawiki": { "site": "kawiki", "title": "სანქტ-პეტერბურგის ფერისცვალების საკათედრო ტაძარი", "badges": { } }, "enwiki": { "site": "enwiki", "title": "Transfiguration Cathedral (Saint Petersburg)", "badges": { } }, "fiwiki": { "site": "fiwiki", "title": "Kristuksen kirkastumisen katedraali (Pietari)", "badges": { } }, "mkwiki": { "site": "mkwiki", "title": "Соборна црква „Преображение Господово“ (Санкт Петербург)", "badges": { } }, "arzwiki": { "site": "arzwiki", "title": "كاتدرائيه التجلى (سانت بطرسبورج)", "badges": { } }, "itwiki": { "site": "itwiki", "title": "Cattedrale della Trasfigurazione (San Pietroburgo)", "badges": { } } } |
dump_statements()
правитьОписание
- Отладочная функция, позволяющая показать утверждения данного свойства в формате JSON для указанного элемента или свойства Викиданных.
Использование
- {{#invoke:WD|dump_statements|идентификатор|свойство}}
Параметры:
- идентификатор — идентификатор свойства (Pxxx или pxxx) или элемента Викиданных (Qxxx или qxxx);
- свойство — идентификатор свойства (Pxxx или pxxx), значение которого надо показать.
Примеры:
Вызов | Результат |
---|---|
{{#invoke:WD|dump_statements|Q359|P856}} | { 1: { "type": "statement", "qualifiers-order": { 1: "P407", 2: "P813" }, "mainsnak": { "snaktype": "value", "property": "P856", "datavalue": { "value": "https://wikileaks.org/", "type": "string" }, "datatype": "url" }, "qualifiers": { "P407": { 1: { "snaktype": "value", "datavalue": { "value": { "id": "Q1860", "numeric-id": 1860, "entity-type": "item" }, "type": "wikibase-entityid" }, "property": "P407", "hash": "daf1c4fcb58181b02dff9cc89deb084004ddae4b", "datatype": "wikibase-item" } }, "P813": { 1: { "snaktype": "value", "datavalue": { "value": { "before": 0, "time": "+2017-06-23T00:00:00Z", "timezone": 0, "precision": 11, "after": 0, "calendarmodel": "http://www.wikidata.org/entity/Q1985727" }, "type": "time" }, "property": "P813", "hash": "24495fa06a42e28c1078f46588986937c290dfed", "datatype": "time" } } }, "id": "Q359$36814403-433c-591b-eaff-22a38472a46b", "rank": "normal" } } |
{{#invoke:WD|dump_statements|P527|P1696}} | { 1: { "mainsnak": { "snaktype": "value", "property": "P1696", "datavalue": { "value": { "id": "P361", "numeric-id": 361, "entity-type": "property" }, "type": "wikibase-entityid" }, "datatype": "wikibase-property" }, "type": "statement", "id": "P527$a8ab8c55-4864-573a-67d0-613917797d1d", "rank": "normal" } } |
{{#invoke:WD|dump_statements|Q15920521|P1476}} | { 1: { "mainsnak": { "snaktype": "value", "property": "P1476", "datavalue": { "value": { "language": "ru", "text": "Ночные мысли" }, "type": "monolingualtext" }, "datatype": "monolingualtext" }, "type": "statement", "id": "Q15920521$f7c04336-4b68-8307-c98c-569412466eaa", "rank": "normal" } } |
{{#invoke:WD|dump_statements|Q4100335|P570}} | { 1: { "qualifiers": { "P1319": { 1: { "snaktype": "value", "datavalue": { "value": { "before": 0, "time": "+1614-00-00T00:00:00Z", "timezone": 0, "precision": 9, "after": 0, "calendarmodel": "http://www.wikidata.org/entity/Q1985727" }, "type": "time" }, "property": "P1319", "hash": "88c78b9095d71098fc34863e3ad7e1b1a25a571c", "datatype": "time" } } }, "qualifiers-order": { 1: "P1319" }, "references": { 1: { "snaks": { "P143": { 1: { "snaktype": "value", "property": "P143", "datavalue": { "value": { "id": "Q206855", "numeric-id": 206855, "entity-type": "item" }, "type": "wikibase-entityid" }, "datatype": "wikibase-item" } } }, "snaks-order": { 1: "P143" }, "hash": "288ab581e7d2d02995a26dfa8b091d96e78457fc" } }, "mainsnak": { "snaktype": "somevalue", "property": "P570", "datatype": "time" }, "id": "Q4100335$28976D20-340B-4862-9D58-A811570831E3", "type": "statement", "rank": "normal" } } |
Функции, доступные из других модулей
правитьis_property()
править…
is_item()
править…
is_statement()
править…
get_statement_value()
править…
get_item_id()
править…
get_item_qid()
править…
has_valid_item_value()
править…
get_label()
править…
get_description()
править…
get_sitelink()
править…
get_sitelink_by_lang()
править…
table_to_string()
править…