Шаблон:Wikidata-coords
execTplWithCoords() из модуля WikidataCoords.Wikidata-coords — служебный шаблон для передачи географических координат из других шаблонов в {{coord}}, позиционные карты и другие схожие служебные шаблоны. Если координаты не заданы вручную, шаблон получает их из свойства географические координаты (P625) связанного элемента Викиданных.
Шаблон предназначен прежде всего для использования внутри других шаблонов. Ниже описаны параметры и варианты вызова самого шаблона, а не параметры шаблонов, которые его вызывают.
Краткое описание
Вызывает шаблон, указанный первым параметром, передавая в него остальные параметры и добавляя координаты.
Если координаты не переданы явно через coord или lat_deg, шаблон получает их из свойства географические координаты (P625) через Модуль:Wikidata и добавляет параметры lat_* и lon_*.
Второй параметр задаёт формат передачи координат:
- при пустом значении координаты передаются именованными параметрами
lat_*иlon_*; - при значении
coordкоординаты собираются в строку и передаются как параметрcoord; - при значениях
12345678,23456789и345678910координаты передаются в соответствующих числовых параметрах.
Если в вызываемый шаблон нужно передать первый числовой параметр, используется параметр 01. Остальные параметры, не относящиеся к обработке координат, передаются в вызываемый шаблон без специальной обработки.
Использование
Общая форма вызова:
{{Wikidata-coords|имя вызываемого шаблона|формат передачи координат
|lat_deg =
|lat_min =
|lat_sec =
|lat_dir =
|lon_deg =
|lon_min =
|lon_sec =
|lon_dir =
|coord =
|from =
|параметр вызываемого шаблона = значение
}}
Первый параметр является обязательным: это имя шаблона, который должен быть вызван. Второй параметр необязателен и определяет способ передачи координат в вызываемый шаблон.
Если в вызываемый шаблон нужно передать первый числовой параметр, используется параметр 01. Например, вызов:
{{Wikidata-coords|ПозКарта
|01 = Россия
|label = Название
|width = 265
|from = Q123456
}}
после подготовки координат раскрывает {{ПозКарта}} примерно как:
{{ПозКарта
|Россия
|label = Название
|width = 265
|lat_deg = <широта>
|lat_min = 0
|lat_sec = 0
|lat_dir = <N или S>
|lon_deg = <долгота>
|lon_min = 0
|lon_sec = 0
|lon_dir = <E или W>
|from = Q123456
}}
Если координаты не были переданы в самом вызове шаблона, значения lat_deg и lon_deg будут взяты из свойства P625 указанного или связанного элемента Викиданных.
Наиболее распространённые варианты включения:
{{coord}} со строкой coord
Используется, когда координаты нужно вывести через {{coord}} как готовую строку:
{{wikidata-coords|coord|coord
|display = inline
|format = dms
|from = Q21026859
}}
Первый параметр coord — вызываемый шаблон {{coord}}, второй параметр coord — строковый формат передачи координат. Если параметр coord не передан явно, строка координат собирается из P625 или из lat_*/lon_*.
{{coord}} с позиционными координатами
Используется, когда {{coord}} должен получить координаты в параметрах 1—8:
{{wikidata-coords|coord|12345678
|lat_deg = {{{lat_deg|}}}
|lat_min = {{{lat_min|}}}
|lat_sec = {{{lat_sec|}}}
|lat_dir = {{{lat_dir|}}}
|lon_deg = {{{lon_deg|}}}
|lon_min = {{{lon_min|}}}
|lon_sec = {{{lon_sec|}}}
|lon_dir = {{{lon_dir|}}}
|9 = type:{{#if: {{{region|}}}|edu_region:{{{region}}}|edu}}
|scale = 100000
|format = dms
|display = title
|from = {{{from|}}}
}}
В этом варианте координаты занимают числовые параметры 1—8, поэтому 9 остаётся первым свободным числовым параметром {{coord}} после координат. Запись вида type:edu_region:RU для {{coord}} и GeoData разбирается как type=edu и region=RU.
{{ПозКарта}} с именованными координатами
Используется, когда вызываемый шаблон принимает координаты как именованные параметры lat_* и lon_*:
{{wikidata-coords|ПозКарта
|01 = {{{Позиционная карта|}}}
|label = {{{Метка|}}}
|width = 265
|lat_deg = {{{lat_deg|}}}
|lat_min = {{{lat_min|}}}
|lat_sec = {{{lat_sec|}}}
|lat_dir = {{{lat_dir|}}}
|lon_deg = {{{lon_deg|}}}
|lon_min = {{{lon_min|}}}
|lon_sec = {{{lon_sec|}}}
|lon_dir = {{{lon_dir|}}}
|float = center
|caption =
|from = {{{from|}}}
}}
В этом варианте второй параметр не указан, поэтому координаты остаются именованными. Параметр 01 становится первым числовым параметром {{ПозКарта}}, то есть названием позиционной карты.
Подробное описание алгоритма работы находится в документации Модуль:WikidataCoords.
Варианты вызова
Источник координат
| Что передано в шаблон | Что делает шаблон |
|---|---|
Непустой параметр coord | Передаёт готовую строку координат в вызываемый шаблон. Координаты из Викиданных не запрашиваются. |
Непустой параметр lat_deg | Использует локально переданные lat_* и lon_*. Координаты из Викиданных не запрашиваются. |
coord и lat_deg пустые | Получает координаты из свойства P625 через Модуль:Wikidata. |
Для отключения запроса к Викиданным нужно указать lat_deg или coord. Один только lon_deg не отключает автоматическое получение P625. Координаты из Викиданных передаются как десятичные градусы; минуты и секунды получают значения по умолчанию 0.
Формат передачи координат
Второй параметр шаблона задаёт, в каком виде координаты будут переданы вызываемому шаблону.
| Второй параметр | Как передаются координаты | Пример раскладки | Первый свободный числовой параметр после координат |
|---|---|---|---|
| не указан | Именованными параметрами lat_deg, lat_min, lat_sec, lat_dir, lon_deg, lon_min, lon_sec, lon_dir. | lat_deg=55, lat_min=45, lat_sec=0, lat_dir=N, lon_deg=37, lon_min=37, lon_sec=0, lon_dir=E | Не меняется. |
coord | Строкой lat_deg/lat_min/lat_sec/lat_dir/lon_deg/lon_min/lon_sec/lon_dir в параметре coord. | coord=55/45/0/N/37/37/0/E | Не меняется. |
12345678 | Числовыми параметрами 1—8. | 1=55, 2=45, 3=0, 4=N, 5=37, 6=37, 7=0, 8=E | 9 |
23456789 | Числовыми параметрами 2—9. Параметр 01 становится параметром 1 вызываемого шаблона. | 1=<значение 01>, 2=55, 3=45, 4=0, 5=N, 6=37, 7=37, 8=0, 9=E | 10 |
345678910 | Числовыми параметрами 3—10. Параметр 01 становится параметром 1 вызываемого шаблона. | 1=<значение 01>, 3=55, 4=45, 5=0, 6=N, 7=37, 8=37, 9=0, 10=E | 11 |
В числовых форматах 12345678, 23456789 и 345678910 именованные параметры координат lat_* и lon_* в вызываемый шаблон не передаются. Если номер числового параметра совпадает с номером, занятым координатами выбранного формата, исходное значение этого параметра будет заменено координатой. В формате 345678910 второй числовой параметр не занят координатами и, при необходимости, передаётся как обычный параметр 2.
Если параметр coord передан явно, преобразование по второму параметру не выполняется: готовая строка координат передаётся в вызываемый шаблон как есть.
Целевые шаблоны
Первый параметр шаблона — это имя шаблона, который будет вызван после подготовки координат. В рабочих включениях чаще всего используются, в порядке убывания числа включений:
- {{coord}};
- {{ПозКарта}};
- {{Геокар/Позкарта}};
- {{НП/ПозКарта}};
- {{Бывший НП/ПозКарта}};
- {{Достопримечательность/Позкарты}};
- {{НП/ПозКарта+}}.
Например, в вызове:
{{wikidata-coords|coord|12345678|...}}
первый параметр coord означает вызываемый шаблон {{coord}}, а второй параметр 12345678 означает формат передачи координат. Это разные значения, хотя они оба записаны позиционными параметрами.
Параметры шаблона
| Параметр | Описание |
|---|---|
1 | Имя вызываемого шаблона. Обязательный параметр. |
2 | Формат передачи координат: coord, 12345678, 23456789, 345678910 или пустое значение. |
01 | Значение, которое нужно передать как первый числовой параметр вызываемого шаблона. |
lat_deg, lat_min, lat_sec, lat_dir | Компоненты широты. |
lon_deg, lon_min, lon_sec, lon_dir | Компоненты долготы. |
coord | Готовая строка координат. При непустом значении координаты из Викиданных не запрашиваются. |
from | Идентификатор элемента Викиданных, из которого нужно получить координаты, например Q123. Если параметр не указан, используются данные элемента, связанного с текущей страницей. |
Остальные параметры передаются в вызываемый шаблон без изменений. Например, при вызове {{coord}} это могут быть display, format, scale, type:... и другие параметры самого {{coord}}.
TemplateData
Вызывает указанный шаблон и при отсутствии явных координат подставляет координаты из свойства P625 текущего элемента Викиданных.
| Параметр | Описание | Тип | Статус | |
|---|---|---|---|---|
| Шаблон | 1 | Имя вызываемого шаблона без фигурных скобок. | Имя шаблона | обязательный |
| Формат передачи координат | 2 | Формат, в котором координаты должны быть переданы вызываемому шаблону. Используемые значения: 12345678, 23456789, 345678910, coord. Если не указан, используются именованные параметры lat_* и lon_*.
| Однострочный | необязательный |
| Первый параметр вызываемого шаблона | 01 | Значение, которое нужно передать как первый числовой параметр вызываемого шаблона. | Строковый (без форматирования) | необязательный |
| Девятый параметр вызываемого шаблона | 9 | Дополнительный числовой параметр вызываемого шаблона. При формате 12345678 это первый свободный числовой параметр после координат; например, для шаблона coord сюда может передаваться строка параметров координат вида type:edu или type:edu_region:RU. | Строковый (без форматирования) | необязательный |
| Широта, градусы | lat_deg | Широта в градусах. Если указана, координаты из Викиданных не запрашиваются. | Число | необязательный |
| Широта, минуты | lat_min | Минуты широты. По умолчанию 0.
| Число | необязательный |
| Широта, секунды | lat_sec | Секунды широты. По умолчанию 0.
| Число | необязательный |
| Направление широты | lat_dir | N для северной широты или S для южной.
| Однострочный | необязательный |
| Долгота, градусы | lon_deg | Долгота в градусах. | Число | необязательный |
| Долгота, минуты | lon_min | Минуты долготы. По умолчанию 0.
| Число | необязательный |
| Долгота, секунды | lon_sec | Секунды долготы. По умолчанию 0.
| Число | необязательный |
| Направление долготы | lon_dir | E для восточной долготы или W для западной.
| Однострочный | необязательный |
| Строка координат | coord | Готовая строка координат в формате, ожидаемом вызываемым шаблоном. Если указана, координаты из Викиданных не запрашиваются. | Однострочный | необязательный |
| Элемент Викиданных | from | Идентификатор элемента Викиданных, из которого нужно получить координаты, например Q123. Если не указан, используется элемент, связанный с текущей страницей.
| Строковый (без форматирования) | необязательный |