Модуль:Wikidata/P512/doc
Это страница документации Модуль:Wikidata/P512.
Содержит функции для форматирования учёных степеней, получаемых из свойства викиданных d:Property:P512. По сравнению с formatPropertyDefault()
из Модуль:Wikidata включает в себя следующую логику:
- В викиданных отмечаются факты получения всех степеней, но в карточке нет смысла показывать кандидатскую при наличии соответствующей докторской. Например Путилов, Борис Николаевич (показывается только д. ф. н.), Зайцев, Александр Иосифович (показывается и к. ф. н. и д. и. н.)
- После самой учёной степени в скобках показывается год её присвоения (из квалификатора d:P585). Иногда для указания этой же информации используют d:P580, но первый вариант гораздо распространённее (ср. [1] и [2])
- В статью добавляется соответствующая степени категория (например Категория:Кандидаты искусствоведения)
Для правильной реализации пунктов 1 и 3 нужно загружать элемент, соответствующий каждой ученой степени персоны и обращаться к свойствам d:P156 и d:P910 соответственно. Однако, для первой версии, решено захардкодить связи между степенями первой и второй ступени, а также соответствующими категориями по соображениям производительности и для минимизации зависимостей данного модуля от других.
Названия функций данного модуля, а также их сигнатуры могут меняться без предупреждения, поэтому не рекомендуется использовать их напрямую. Штатно модуль используется из шаблона {{wikidata/p512}}, в котором осуществляется вызов {{#invoke:Wikidata|formatStatements
с параметрами property-module=Wikidata/P512
и property-function=formatAcademicDegree
Тесты
[править код]1 тестов из 15 провалено.
Тест | Ожидаемое значение | Фактическое значение | |
---|---|---|---|
demo | <span class="wikidata-claim" data-wikidata-property-id="P512" data-wikidata-claim-id="Q4115189$2fb0ce43-4ffe-9e6e-6dab-0d101b0ceac0">доктор филологических наук</span>[[Категория:Доктора филологических наук]] | <span class="wikidata-claim" data-wikidata-property-id="P512" data-wikidata-claim-id="Q4115189$2fb0ce43-4ffe-9e6e-6dab-0d101b0ceac0">доктор филологических наук</span>[[Категория:Доктора филологических наук]] |
Тест | Ожидаемое значение | Фактическое значение | |
---|---|---|---|
d:Q752297[1] | Категория:Доктора философии | ||
d:Q849697[1] | |||
d:Q913404[1] | Категория:Доктора медицины | Категория:Доктора медицины | |
d:Q959320[1] | Категория:Доктора права | Категория:Доктора права | |
d:Q5978719[1] | |||
d:Q17281180[1] | Категория:Доктора искусствоведения | Категория:Доктора искусствоведения | |
d:Q19603972[1] | Категория:Кандидаты философских наук | Категория:Кандидаты философских наук |
Тест | Ожидаемое значение | Фактическое значение | |
---|---|---|---|
{} | "" | "" | |
{1987} | " (1987)" | " (1987)" | |
{2017, 2024} | " (2017)" | " (2017)" |
Тест | Ожидаемое значение | Фактическое значение | |
---|---|---|---|
{} | {} | {} | |
{1} | {} | {} | |
{1, 16698078, 19610224} | {[19610224]=true} | {[19610224]=true} | |
{17281125, 17281125} | {[18071588]=true} | {[18071588]=true} |