Модуль:Wikidata/документація

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку

Це сторінка документації для Модуль:Wikidata

Модуль:Wikidata (обг. · [ред.] · історія · посилання · документація · підсторінки · тести – результати)


Використовується в {{Wikidata}}.

Функції цього модуля не призначені для прямого виклику з шаблонів карток чи інших модулів, що не є його функціями розширення. Для виклику з шаблонів карток використовуйте шаблон {{wikidata}} чи один зі спеціалізованих шаблонів для властивостей. Для виклику функцій Вікіданих, що призначені для відображення, зазвичай достатньо виклику frame:expandTemplate{} з викликом шаблону, що відповідає за відображення властивості. З іншого боку, виклик окремих функцій модуля (в основному це стосується getEntityObject()) може в наступному стати предпочтительным (наприклад, коли з'явиться можливість виклику getEntityObject для довільного елемента з ціллю кешування і вкладених викликів). Даний Lua-функціонал в будь-якому випадку слід розглядати як нестабільний з точки зору збереження сумісності на рівні коду (разом з відповідними функціями API для Wikibase Client).

Далі описується внутрішня документація. Назви функцій і параметрів можуть змінитися. При їх зміненні автор змін зобов'язаний оновити шаблон {{wikidata}} та спеціалізовані шаблони властивостей. Зміни в інших місцях, якщо хтось всё ж таки викликає функції модуля напряму, залишаються на сумлінні автора «костиля». Итак, при вызове шаблона {{wikidata}} или специализированного шаблона свойства управление отдаётся на функцию formatStatements, которая принимает frame. Из frame достаются следующие опции, которые так или иначе передаются в остальные функции:

  • plain — булевый переключатель (по умолчанию false). Если true, результат совпадает с обычным вызовом {{#property:pNNN}} (по факту им и будет являться)
  • references — булевый переключатель (по умолчанию true). Если true, после вывода значения параметра дополнительно выводит ссылки на источники, указанные в Викиданных. Для вывода используется Модуль:Sources. Обычно отключается для тех свойств, которые являются «самоописываемыми», например, внешними идентификаторами или ссылками (когда такая ссылка является доказательством своей актуальности), например, идентификаторы IMDb.
  • value — значення, яке треба виводити замість значень з Вікіданних (використовується, якщо щось задано вже в картці у вигляді т. з. локальної властивості).

За замовчанням модуль підтримує виведення наступних значень без додаткових налаштувань:

  • географічні координати (coordinates)
  • кількістьні значення (quantity)
  • одномовний текст (monolingualtext)
  • рядки (string)
  • дати (time)

Інщі типи даних потребують указання функції форматування значення.

Поддерживаются два типа параметрів-функцій, которые дополнительно указывают, як треба форматувати значення:

  • claim-module, claim-function — назва модуля та функції модуля, які відповідають за форматування виводу значення властивості (statement, claim) враховуючи кваліфікатори, посилання та інше. Може, наприклад, додатково до основного значення (main snak) вивести значення кваліфікаторів. Характерні приклади:
    Специфікація функції: function p.…( context, statement )
  • value-module, value-function — назва модуля та функції модуля, які відповідають за форматоване значення (snak, snak data value), залежно від контексту, как значень властивості, так і значень кваліфікатора (якщо викликається з claim-module/claim-function). Необхідно для змінення відображення властивості, наприклад, генерації вікіпосиланн. замість простого рядка чи навіть вставки зображення замість відображення назви файла зображення (бо посилання на зображення зберігаються як рядки). Характерні приклади:
    Специфікація функції: function p.…( value, options )