Модуль:NYCS DB/doc

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

Это страница документации Модуль:NYCS DB.

Модуль содержит более 60 функций для вычисления информации, связанной с маршрутами Нью-Йоркского метрополитена. Область использования:

  • более 400 статей о станциях и пересадочных узлах;
  • около 70 статей о линиях и маршрутах;
  • список станций, список маршрутов, список линий;
  • другие статьи со ссылками на статьи о станциях, линиях и маршрутах.

Проблема состоит в том, что поезда в Нью-Йорке ходят по маршрутам, эта информация отражена в статьях, а маршруты периодически меняются. До появления этого модуля каждый раз при изменении в каком-то маршруте приходилось вносить апдейт в несколько десятков статей, каждый раз рискуя что-то забыть или ошибиться. Модуль вычисляет практически всю информацию такого рода.

Охват информации[править код]

Что учитывается[править код]

Что учитывается в модуле (если надо, см. подробности ниже):

  • движение поездов по маршрутам;
  • деление маршрутов на экспрессы и локальные;
  • изменение маршрутов в зависимости от времени суток;
  • наличие вилочного движения;
  • возможность различий между направлениями;
  • доступность станций для инвалидов;
  • закрытые станции;
  • неиспользуемые пути;
  • проектируемые/строящиеся станции и проектируемые маршруты;
  • отображение временных изменений (вся та же информация, но параллельно для обычной схемы и для введённой на несколько месяцев в связи с каким-нибудь большим ремонтом; пока только для изменений в маршрутах и в виртуальных пересадках и только в карточке станции).

Что пока не учитывается[править код]

В дальнейшем можно добавить новые возможности:

  • учёт того факта, что некоторые поезда оборачиваются не доезжая до конечной станции (при этом F на станции Кингс-Хайвей и 4 на станции Бернсайд-авеню и трёх предыдущих идут по экспресс-пути, что в модуле пока не отражено);
  • различия в остановках между поездами, движущимися на юг и на север (на момент составления модуля это имеет значение для станции Акуидакт-Рейстрак и для некоторых поездов 4 в северной части маршрута в часы пик, а также для выбора между локальным и экспресс-путём у некоторых маршрутов на станциях Канал-стрит и Куинс-Плаза, хотя совсем недавно это было и у ночного челнока R и ещё где-то); сегодня учитываются только различия между поездами, движущимися в пиковом направлении и в обратном ему; информация о различиях между севером и югом пока находится прямо в статьях и поддерживается вручную;
  • различия между утренним и вечерним часом пик;
  • суперэкспрессы (маршруты, проходящие без остановки даже некоторые из станций, помеченных как «для всех поездов»; в последние годы не используются, но могут быть введены в любой момент);
  • места возможного перехода поезда с экспресс-путей на локальные или наоборот для пополнения вычисляемого списка соседних станций для каждой станции;
  • количество путей по участкам на схемах линий.

Функции[править код]

Во всех примерах взяты:

Кроме того, во избежание повторения примеров в таблице функций использованы для построения:

Для карточек статей о станциях[править код]

Название Ввод[1] Вывод Форматирование вывода Применение Пример
station_full Станция. Останавливающиеся на станции маршруты. Для каждого маршрута его буллет со ссылкой на статью о маршруте и в уголке значок, обозначающий, когда этот маршрут останавливается на этой станции. Карточка станции. J — круглосуточноJ — круглосуточноM — круглосуточно, кроме ночиM — круглосуточно, кроме ночиZ — в часы пик в пиковом направленииZ — в часы пик в пиковом направлении
station_lines Станция. Линии, проходящие через станцию. Просто список ссылок на статьи о линиях. Второй (опциональный) параметр — цвет букв (для вывода на цветном фоне в карточке). Карточка станции. линия Нассо-стрит, Би-эм-ти
station_next Станция. Те станции, которые могут оказаться следующими при поездке от данной станции на поездах разных маршрутов. Как в station_full, но вместо буллетов маршрутов — текст со ссылкой на статью о маршруте. Список состоит из двух разделённых горизонтальной чертой частей (как правило север и юг, но в общем случае просто по одну и другую сторону от станции). Если во втором параметре написать acc, будут выданы те станции, которые доступны для инвалидов. Карточка станции. Бауэри
    (Jкруглосуточно Zв часы пик в пиковом направлении)
Бродвей — Лафайетт-стрит
    (Mв будни днём и вечером)
Марси-авеню
    (Jкруглосуточно Mкруглосуточно, кроме ночи Zв часы пик в пиковом направлении)
station_netto_T Станция. Название станции (или пересадочного узла) без уточнения. Чистый текст. Карточка станции. Эссекс-стрит
station_acc Станция. Обозначение доступности станции для инвалидов. Значок инвалидного кресла и (опционально) текст примечания. Карточка станции.
station_opened Станция. Дата открытия. Текст. Карточка станции. 16 сентября 1908
station_eng Станция. Во втором параметре поддерживаются значения former и future для бывших и будущих станций соответственно. Английское название. Текст. Карточка станции. Essex Street
station_ridership Станция. Пассажиропоток. Текст. Для станций, входящих в пересадочный узел, не выводится ничего, потому что в источнике данные приводятся по пересадочным узлам суммарно. Для таких станций пассажиропоток выводится только в карточке всего пересадочного узла при помощи функции complex_ridership. Карточка станции. 1 347 765
(317 из 424)[2]
[3]
station_connections Станция. Во втором параметре поддерживаются значения former и future для бывших и будущих станций соответственно. Пересадки на другие виды транспорта, а также виртуальные пересадки между станциями метро. В статьях о пересадочных узлах срабатывает в карточке узла, а не в карточках отдельных станций. Текст. Карточка станции. Фар-Рокавей (LIRR)[en][3]
station_csv Станция и имя поля. Боро (если второй параметр boro), структурный тип станции (если второй параметр struc), географические координаты (если второй параметр coord), код станции (если второй параметр id). Текст. Карточка станции.
  • Манхэттен
  • подземная
  • 40°43′06″ с. ш. 73°59′15″ з. д.HGЯO
  • 102
station_cats Станция. Во втором параметре поддерживаются значения former и future для бывших и будущих станций соответственно. Категории для статьи (три вида категорий: по линии, по году открытия и по кросс-платформенной пересадке). При вызове не в пространстве статей категории показываются как обычные ссылки списком. Карточка станции.
former_data Станция и имя поля. Только для бывших станций: боро (если второй параметр boro), дата открытия (если второй параметр opened), дата закрытия (если второй параметр closed), структурный тип станции (если второй параметр struc). Текст. Карточка станции.

Карточки для примера[править код]

«Эссекс-стрит»
Essex Street
J — круглосуточноJ — круглосуточноM — круглосуточно, кроме ночиM — круглосуточно, кроме ночиZ — в часы пик в пиковом направленииZ — в часы пик в пиковом направлении
Нью-Йоркский метрополитен

Расположение платформ 40°43′06″ с. ш. 73°59′15″ з. д.HGЯO
Дата открытия 16 сентября 1908
Боро Манхэттен
Тип
(по данным MTA)
подземная
Количество платформ 2
Тип платформ 1 островная, 1 боковая
Код станции 102
Соседние станции Бауэри
    (Jкруглосуточно Zв часы пик в пиковом направлении)
Бродвей — Лафайетт-стрит
    (Mв будни днём и вечером)
Марси-авеню
    (Jкруглосуточно Mкруглосуточно, кроме ночи Zв часы пик в пиковом направлении)
«Фар-Рокавей — Мотт-авеню»
Far Rockaway–Mott Avenue
A — круглосуточноA — круглосуточно
Нью-Йоркский метрополитен

Расположение платформ 40°36′14″ с. ш. 73°45′19″ з. д.HGЯO
Дата открытия 1869
(в составе метро с 16 января 1958)
Боро Куинс
Округ Фар-Рокавей
Тип
(по данным MTA)
эстакадная
Количество платформ 1
Тип платформы островная
Доступность Доступность для маломобильных групп населения
Выход к улицам Бич 22-я улица и Мотт-авеню
Пассажиропоток (2019) 1 347 765
(317 из 424)[2]
Пересадки Фар-Рокавей (LIRR)[en]
Код станции 209
Соседние станции Бич 25-я улица
    (Aкруглосуточно)
(конечная)
«Корт-стрит»
Court Street
З А К Р Ы Т А
и превращена в музей
Нью-Йоркский метрополитен

Платформа с музейными экспонатами
Дата открытия 9 апреля 1936
Дата закрытия 1946
Боро Бруклин
Округ Нижний Бруклин
Тип подземная
Количество платформ 1
Тип платформы островная
Выход к улицам Скермерхорн-стрит, Борум-Плейс
Соседние станции (конечная)
Хойт-стрит — Скермерхорн-стрит

Для других частей статей о станциях[править код]

Название Ввод[1] Вывод Форматирование вывода Применение Пример
station_prose0 Станция. Самое начало преамбулы: название станции на русском и английском и линия (либо список линий). Связный текст. Преамбула статьи о станции. «Эссекс-стрит» (англ. Essex Street) — станция Нью-Йоркского метрополитена, расположенная на линии Нассо-стрит, Би-эм-ти.
station_prose Станция. Один необязательный параметр описан правее. Останавливающиеся на станции маршруты, и далее (в зависимости от типа станции) маршруты: для которых станция является конечной; проходящие станцию без остановки; проходящие по тем и иным путям. Если станция на одном из 10 первых мест по пассажиропотоку, то добавляется текст ещё и об этом. Связный текст. Через второй параметр можно передать дополнительный текст, который будет вставлен после слов «На станции». Преамбула статьи о станции. На станции останавливаются маршруты: J (круглосуточно), M (круглосуточно, кроме ночи) и Z (в часы пик в пиковом направлении). Станция является северной конечной для маршрута M (в выходные).
SL Станция, ориентация схемы (V или H), тип пути, список маршрутов (через запятую и пробел) для добавки к вычисляемым и список маршрутов (через запятую и пробел) для отмены.

Допустимые типы пути:

  • (пусто) — все маршруты, останавливающиеся на станции;
  • skip — все маршруты, проходящие станцию без остановки;
  • lcl — локальный путь на экспресс-станции;
  • exp — экспресс-путь на экспресс-станции;
  • manual — по умолчанию никаких маршрутов нет (показываются только те, которые добавлены через следующий параметр).
Маршруты, проходящие через станцию по данному пути.[5] Для каждого маршрута только мелкий буллет без значка. Схема платформ и путей станции, составленная при помощи шаблонов серии SL.
 
 
 JZ
 
 
 M
station_expressinuse Станция и два варианта возвращаемого значения. Если не задана валидная станция, статья заносится в Категория:Статьи с ошибочными параметрами при обращении к модулю NYCS DB.

Для демонстрационных целей поддерживаются фиктивные станции «+» и «-», соответствующие двум случаям, описанным правее.

Если на станции экспресс-пути используются хотя бы одним маршрутом (без разницы, с остановкой или без), то второй из переданных параметров, иначе третий. Строка. На схеме путей и платформ позволяет создать if, чтобы показывать экспресс-пути сплошной линией или пунктиром.
Станция, где
экспресс-пути
используются
Станция, где
экспресс-пути
не используются



л


э


э


л






 


 



station_terminalinuse Как выше. В четвёртый параметр можно передать направление (n или s). Если станция является конечной хотя бы для одного маршрута (северной или южной соответственно, если в четвёртом параметре задано n или s, и хотя бы северной или южной в противном случае), то второй из переданных параметров, иначе третий. Функция используется для путей, которые служат только для разворота поездов. Строка. Аналогично предыдущей функции.
Станция, где
оборотный путь
используется
Станция, где
оборотный путь
не используется






о














connection_use_st Две или три станции. Если не задано две валидных станции, статья заносится в Категория:Статьи с ошибочными параметрами при обращении к модулю NYCS DB. Один необязательный параметр (и альтернативный способ заполнения обязательных) описан правее. Маршруты, использующие соединение между двумя станциями (если задано три, то от первой до двух остальных суммарно). Учитываются только маршруты, останавливающиеся на заданных станциях, но не проходящие их без остановки. Текст. Если в третьем параметре (для случая трёх станций в четвёртом) задано слово when, то маршруты выдаются с описанием времён, иначе без. Если там же задано слово letters, то выдаётся только список букв и цифр текстом без ссылок, а если слово bullets, bullets all или full small, то список буллетов.[5] Если в третьем параметре (вместо третьей станции) задано x или o, это обозначает, что для второй станции нужны только маршруты, проходящие по экспресс- или локальным путям соответственно. Статья о станции (описание развилок на пути от станции). А пути уходят вон туда (маршрут Q круглосуточно). Они делятся на экспресс-пути (регулярного движения нет) и локальные (маршрут Q круглосуточно).

Тоннель входит в состав линии Восьмой авеню, Ай-эн-ди (маршруты A и C метрополитена).

station_terminal Станция и направление (n или s). Два необязательных параметра описаны правее. Маршруты, для которых данная станция является конечной. Текст. Если в третьем параметре задано слово when, то маршруты выдаются с описанием времён, иначе без. Если в четвёртом параметре (при незаданном when в третьем) задано слово plain, то буквы маршрутов выдаются без ссылок на статьи о них. Если там же задано слово letters, выдаётся только список букв и цифр текстом без ссылок.[5] Статья о станции. А этот путь служит конечным (маршрут S (челнок Франклин-авеню)).
station_terminalonly Станция. Проверка, является ли станция конечной для всех маршрутов, останавливающихся на ней. Если станция является северной конечной для всех её поездов, то n, если южной, то s, иначе пустая строка. Статья о станции. s[3]
route_table_nav Станция или пересадочный узел. Списки станций по маршрутам, проходящим через станцию или пересадочный узел, которым посвящена статья (по порядку с севера на юг). Горизонтальный навшаблон. Навшаблон в статье о станции или о пересадочном узле.

Фрагмент преамбулы для примера[править код]

«Эссекс-стрит» (англ. Essex Street) — станция Нью-Йоркского метрополитена, расположенная на линии Нассо-стрит, Би-эм-ти. … На станции останавливаются маршруты: J (круглосуточно), M (круглосуточно, кроме ночи) и Z (в часы пик в пиковом направлении). Станция является северной конечной для маршрута M (в выходные).

Для поездов, следующих на восток, используется островная платформа и два пути с двух сторон от неё: северный из них относится к линии Нассо-стрит (маршруты J и Z), а южный входит в состав соединения Кристи-стрит, соединяющего линию Шестой авеню и линию Джамейка (маршрут M).

Для списка станций[править код]

Название Ввод[1] Вывод Форматирование вывода Применение
all_stations Неограниченное количество параметров парами: название станции и викитекст, выводящий иллюстрацию. В качестве станций задаются физические станции, то есть для перечисленных в таблице multiline_stations целые станции, а в таблице station_complexes — части статьи. Викитекст в чётных параметрах имеет вид:
  • для горизонтальных иллюстраций — [[Файл:...|100px]]
  • для вертикальных иллюстраций — [[Файл:...|80px]]

Параметры должны быть заданы для всех действующих станций.

Весь список станций. См. в статье Список станций.

Для статей о пересадочных узлах[править код]

Название Ввод[1] Вывод Форматирование вывода Применение Пример
complex_lines Пересадочный узел. Линии, проходящие через все станции пересадочного узла. Просто список ссылок на статьи о линиях, как в station_lines. Карточка пересадочного узла. линия Нассо-стрит, Би-эм-ти
линия Шестой авеню, Ай-эн-ди
complex_ridership Пересадочный узел. Пассажиропоток. Текст, аналогично station_ridership. Карточка пересадочного узла. 8 861 296
(34 из 424)[2]
complex_boro Пересадочный узел. Боро (или список боро для разных станций, если узел находит на границе). Текст. Карточка пересадочного узла. Манхэттен
complex_prose Пересадочный узел. Маршруты, останавливающиеся на всех станциях узла, единым списком, а также линии, проходящие через станции пересадочного узла. Если узел на одном из 10 первых мест по пассажиропотоку, то добавляется текст ещё и об этом. Всё связным текстом, каждая линия и каждый маршрут оформлены как пункт списка. Если несколько маршрутов останавливаются на станциях узла в одни и те же периоды времени, они перечисляются через запятую в одном пункте списка. Преамбула статьи о пересадочном узле. В пересадочный узел входят станции следующих линий:

На станциях пересадочного узла останавливаются маршруты:

  • F, J (круглосуточно),
  • <F>, Z (в часы пик в пиковом направлении),
  • M (круглосуточно, кроме ночи).
complex_next Пересадочный узел. Один необязательный параметр описан правее. Следующие станции для всех станций пересадочного узла. Отдельная таблица, а в ней списки как в station_next (но части не разделены горизонтальной чертой, а расположены слева и справа). Значение acc во втором параметре тоже поддерживается. Статья о пересадочном узле, раздел «Соседние станции».
Предыдущая станция Линия
Название станции
Следующая станция
Бауэри
(Jкруглосуточно Zв часы пик в пиковом направлении)
Бродвей — Лафайетт-стрит
(Mв будни днём и вечером)

линия Нассо-стрит, Би-эм-ти
Эссекс-стрит

Марси-авеню
(Jкруглосуточно Mкруглосуточно, кроме ночи Zв часы пик в пиковом направлении)
Вторая авеню
(Fкруглосуточно <F>в часы пик в пиковом направлении)

линия Шестой авеню, Ай-эн-ди
Деланси-стрит

Ист-Бродвей
(Fкруглосуточно <F>в часы пик в пиковом направлении)
station_next_ns Как station_next, но третий параметр — n или s. Как station_next, но только для следующих станций на север или на юг соответственно третьему параметру. Статья о пересадочном узле, альтернативный вариант раздела «Соседние станции».
station_bkg Станция. Цвет фона для станции, как в all_stations, на основе поля bkg таблицы routes.

Фрагмент преамбулы и карточка для примера[править код]

(использованы также некоторые функции, перечисленные выше в разделе для станций, но поддерживающие также пересадочные узлы)
«Деланси-стрит / Эссекс-стрит»
пересадочный узел
F<F>JMZ
Нью-Йоркский метрополитен

Боро Манхэттен
Округ Нижний Ист-Сайд
Выход к улицам Деланси-стрит, Эссекс-стрит
Пассажиропоток (2019) 8 861 296
(34 из 424)[2]

... В пересадочный узел входят станции следующих линий:

На станциях пересадочного узла останавливаются маршруты:

  • F, J (круглосуточно),
  • <F>, Z (в часы пик в пиковом направлении),
  • M (круглосуточно, кроме ночи).


Предыдущая станция Линия
Название станции
Следующая станция
Бауэри
(Jкруглосуточно Zв часы пик в пиковом направлении)
Бродвей — Лафайетт-стрит
(Mв будни днём и вечером)

линия Нассо-стрит, Би-эм-ти
Эссекс-стрит

Марси-авеню
(Jкруглосуточно Mкруглосуточно, кроме ночи Zв часы пик в пиковом направлении)
Вторая авеню
(Fкруглосуточно <F>в часы пик в пиковом направлении)

линия Шестой авеню, Ай-эн-ди
Деланси-стрит

Ист-Бродвей
(Fкруглосуточно <F>в часы пик в пиковом направлении)

Для статей о маршрутах и списка маршрутов[править код]

Название Ввод[1] Вывод Форматирование вывода Применение Пример
route_descr Маршрут. Полное название. Текст; название линии в этом тексте оформляется как ссылка на статью о линии. Карточка маршрута, список маршрутов. Локальный маршрут линии Шестой авеню
route_terminals Маршрут. Для планируемого маршрута надо задать во втором параметре слово future. Конечные станции. Список из двух разделённых горизонтальной чертой частей (север и юг); у каждого элемента списка выводятся периоды времени. Периоды не выводятся, если они совпадают с общими для маршрута. Если во втором параметре задать слово small, периоды выводятся уменьшенным шрифтом (это используется только в списке маршрутов). Карточка маршрута, список маршрутов. Форест-Хилс — 71-я авеню (в будни днём и вечером)
Мидл-Виллидж — Метрополитан-авеню (ночью)
Эссекс-стрит (в выходные)
Мидл-Виллидж — Метрополитан-авеню (круглосуточно, кроме ночи)
Мертл-авеню (ночью)
route_count_stations Маршрут. Для планируемого маршрута надо задать во втором параметре слово future. Количество станций на маршруте. У каждого элемента списка выводятся периоды времени; периоды не выводятся, если они совпадают с общими для маршрута. Карточка маршрута. 8 (ночью)
13 (в выходные)
36 (в будни днём и вечером)
route_periods Маршрут. Для планируемого маршрута надо задать во втором параметре слово future. Когда работает маршрут. Текст. Карточка маршрута. круглосуточно
route_color Маршрут. Код цвета маршрута. Код без предшествующего #. Карточка маршрута. ff6319
route_prose Маршрут. Фраза, сообщающая про цвет маршрута. Текст. Преамбула статьи о маршруте. На картах, станциях, вагонах и т. д. он обозначается оранжевым цветом, поскольку проходит по линии Шестой авеню.
route_lines Маршрут и контекст: list (список маршрутов, этот вариант работает по умолчанию) или lead (преамбула статьи о маршруте). Список линий, по которым проходит маршрут. Текст со ссылками на статьи о линиях; в варианте для списка маршрутов перед линией, дающей маршруту цвет, ставится квадратик этого цвета. Список маршрутов либо преамбула статьи о маршруте. линия Куинс-бульвара, Ай-эн-ди;      линия Шестой авеню, Ай-эн-ди; линия Нассо-стрит, Би-эм-ти; линия Джамейка, Би-эм-ти; линия Мертл-авеню, Би-эм-ти
линиям Куинс-бульвара, Ай-эн-ди, Шестой авеню, Ай-эн-ди, Нассо-стрит, Би-эм-ти, Джамейка, Би-эм-ти, и Мертл-авеню, Би-эм-ти.
route_regimes Маршрут либо два маршрута (если второй является разновидностью первого). Для планируемого маршрута надо задать во втором параметре слово future (в этом случае два маршрута не поддерживаются). Таблица способов обслуживания станций маршрутом по участкам пути и периодам времени. Строки таблицы соответствуют участкам (от станции до станции), а столбцы периодам времени. Один вызов функции строит таблицу для всего маршрута. Статья о маршруте.
От станции
включительно
До станции
включительно
Круглосуточно
Франклин-авеню Проспект-парк локальные пути
route_table Маршрут либо два маршрута (если второй является разновидностью первого). Один необязательный параметр (и альтернативный способ заполнения обязательных) описан правее. Несколько строк таблицы с информацией по станциям (способ обслуживания маршрутом/ами, название, пересадки). Один вызов функции строит таблицу для всего маршрута (или двух). Во втором параметре поддерживается слово future, в этом случае строится схема для планируемого маршрута (на момент создания модуля T), включая планируемые станции. В третьем параметре поддерживается обозначение периода времени (как в таблице routes_periods), тогда схема строится только для него. Статья о маршруте.
S (челнок Франклин-авеню) Станция Доступность для маломобильных групп населения Пересадки
круглосуточно Франклин-авеню Доступность для маломобильных групп населения
A — ночьюA — ночьюC — круглосуточно, кроме ночиC — круглосуточно, кроме ночи  Франклин-авеню
круглосуточно Парк-Плейс Доступность для маломобильных групп населения
круглосуточно Ботанический сад
2 — круглосуточно2 — круглосуточно3 — круглосуточно, кроме ночи3 — круглосуточно, кроме ночи4 — круглосуточно4 — круглосуточно5 — в будни днём5 — в будни днём  Франклин-авеню — Медгар-Эверс-колледж
круглосуточно Проспект-парк Доступность для маломобильных групп населения
B — в будни днём и вечером до 23:00B — в будни днём и вечером до 23:00Q — круглосуточноQ — круглосуточно
route_schedule Маршрут. Ссылка на расписание маршрута на сайте MTA. Текст. Статья о маршруте. https://new.mta.info/document/9541

Фрагмент списка маршрутов для примера[править код]

M Локальный маршрут линии Шестой авеню линия Куинс-бульвара, Ай-эн-ди;      линия Шестой авеню, Ай-эн-ди; линия Нассо-стрит, Би-эм-ти; линия Джамейка, Би-эм-ти; линия Мертл-авеню, Би-эм-ти локальный Форест-Хилс — 71-я авеню (в будни днём и вечером)
Мидл-Виллидж — Метрополитан-авеню (ночью)
Эссекс-стрит (в выходные)
Мидл-Виллидж — Метрополитан-авеню (круглосуточно, кроме ночи)
Мертл-авеню (ночью)

Фрагмент преамбулы, карточка, табличка и схема маршрута для примера[править код]

Локальный маршрут линии Шестой авеню
M
Нью-Йоркский метрополитен
Действует круглосуточно
Количество станций 8 (ночью)
13 (в выходные)
36 (в будни днём и вечером)
Конечные станции Форест-Хилс — 71-я авеню (в будни днём и вечером)
Мидл-Виллидж — Метрополитан-авеню (ночью)
Эссекс-стрит (в выходные)
Мидл-Виллидж — Метрополитан-авеню (круглосуточно, кроме ночи)
Мертл-авеню (ночью)

M — маршрут Нью-Йоркского метрополитена, следующий по линиям Куинс-бульвара, Ай-эн-ди, Шестой авеню, Ай-эн-ди, Нассо-стрит, Би-эм-ти, Джамейка, Би-эм-ти, и Мертл-авеню, Би-эм-ти.

От станции
включительно
До станции
включительно
День + вечер Выходные Ночь
Форест-Хилс — 71-я авеню Бродвей — Лафайетт-стрит локальные пути
Эссекс-стрит Флашинг-авеню локальные пути локальные пути
Мертл-авеню локальные пути локальные пути экспресс-пути
Сентрал-авеню Мидл-Виллидж — Метрополитан-авеню локальные пути локальные пути локальные пути


M Станция Доступность для маломобильных групп населения Пересадки
в будни днём и вечером Форест-Хилс — 71-я авеню Доступность для маломобильных групп населения
E — в будни днём и вечеромE — в будни днём и вечеромF — в будни днём и вечеромF — в будни днём и вечером<F> — в часы пик в пиковом направлении<F> — в часы пик в пиковом направленииR — в будни днём и вечеромR — в будни днём и вечером
в будни днём и вечером 67-я авеню
R — в будни днём и вечеромR — в будни днём и вечером
в будни днём и вечером 63-я драйв — Риго-парк
R — в будни днём и вечеромR — в будни днём и вечером
в будни днём и вечером Вудхейвен-бульвар
R — в будни днём и вечеромR — в будни днём и вечером
в будни днём и вечером Гранд-авеню — Ньютаун
R — в будни днём и вечеромR — в будни днём и вечером
в будни днём и вечером Элмхерст-авеню
R — в будни днём и вечеромR — в будни днём и вечером
в будни днём и вечером Джексон-Хайтс — Рузвельт-авеню Доступность для маломобильных групп населения
E — в будни днём и вечеромE — в будни днём и вечеромF — в будни днём и вечеромF — в будни днём и вечером<F> — в часы пик в пиковом направлении<F> — в часы пик в пиковом направленииR — в будни днём и вечеромR — в будни днём и вечером на той же станции
7 — в будни днём и вечером7 — в будни днём и вечером  74-я улица — Бродвей
в будни днём и вечером 65-я улица
R — в будни днём и вечеромR — в будни днём и вечером
в будни днём и вечером Нортерн-бульвар
R — в будни днём и вечеромR — в будни днём и вечером
в будни днём и вечером 46-я улица
R — в будни днём и вечеромR — в будни днём и вечером
в будни днём и вечером Стайнуэй-стрит
R — в будни днём и вечеромR — в будни днём и вечером
в будни днём и вечером 36-я улица
R — в будни днём и вечеромR — в будни днём и вечером
в будни днём и вечером Куинс-Плаза Доступность для маломобильных групп населения
E — в будни днём и вечеромE — в будни днём и вечеромR — в будни днём и вечеромR — в будни днём и вечером
в будни днём и вечером Корт-сквер — 23-я улица Доступность для маломобильных групп населения
E — в будни днём и вечеромE — в будни днём и вечером на той же станции
7 — в будни днём и вечером7 — в будни днём и вечером<7> — в часы пик в пиковом направлении<7> — в часы пик в пиковом направлении  Корт-сквер
G — в будни днём и вечеромG — в будни днём и вечером  Корт-сквер
в будни днём и вечером Лексингтон-авеню — 53-я улица Доступность для маломобильных групп населения
E — в будни днём и вечеромE — в будни днём и вечером на той же станции
6 — в будни днём и вечером6 — в будни днём и вечером<6> — в будни днём в пиковом направлении<6> — в будни днём в пиковом направлении  51-я улица
в будни днём и вечером Пятая авеню — 53-я улица
E — в будни днём и вечеромE — в будни днём и вечером
в будни днём и вечером 47-я — 50-я улицы — Рокфеллер-центр Доступность для маломобильных групп населения
B — в будни днём и вечером до 23:00B — в будни днём и вечером до 23:00D — в будни днём и вечеромD — в будни днём и вечеромF — в будни днём и вечеромF — в будни днём и вечером<F> — в часы пик в пиковом направлении<F> — в часы пик в пиковом направлении
в будни днём и вечером 42-я улица — Брайант-парк
B — в будни днём и вечером до 23:00B — в будни днём и вечером до 23:00D — в будни днём и вечеромD — в будни днём и вечеромF — в будни днём и вечеромF — в будни днём и вечером<F> — в часы пик в пиковом направлении<F> — в часы пик в пиковом направлении на той же станции
7 — в будни днём и вечером7 — в будни днём и вечером<7> — в часы пик в пиковом направлении<7> — в часы пик в пиковом направлении  Пятая авеню
1 — в будни днём и вечером1 — в будни днём и вечером2 — в будни днём и вечером2 — в будни днём и вечером3 — в будни днём и вечером3 — в будни днём и вечером  Таймс-сквер — 42-я улицакруглосуточно, кроме ночи
7 — в будни днём и вечером7 — в будни днём и вечером<7> — в часы пик в пиковом направлении<7> — в часы пик в пиковом направлении  Таймс-скверкруглосуточно, кроме ночи
A — в будни днём и вечеромA — в будни днём и вечеромC — в будни днём и вечеромC — в будни днём и вечеромE — в будни днём и вечеромE — в будни днём и вечером  42-я улица — Автовокзал Портового управлениякруглосуточно, кроме ночи
N — в будни днём и вечеромN — в будни днём и вечеромQ — в будни днём и вечеромQ — в будни днём и вечеромR — в будни днём и вечеромR — в будни днём и вечеромW — в будни днём и вечером до 23:00W — в будни днём и вечером до 23:00  Таймс-сквер — 42-я улицакруглосуточно, кроме ночи
S (челнок 42-й улицы) — в будни днём и вечеромS (челнок 42-й улицы) — в будни днём и вечером  Таймс-скверкруглосуточно, кроме ночи
в будни днём и вечером 34-я улица — Геральд-сквер Доступность для маломобильных групп населения
B — в будни днём и вечером до 23:00B — в будни днём и вечером до 23:00D — в будни днём и вечеромD — в будни днём и вечеромF — в будни днём и вечеромF — в будни днём и вечером<F> — в часы пик в пиковом направлении<F> — в часы пик в пиковом направлении на той же станции
N — в будни днём и вечеромN — в будни днём и вечеромQ — в будни днём и вечеромQ — в будни днём и вечеромR — в будни днём и вечеромR — в будни днём и вечеромW — в будни днём и вечером до 23:00W — в будни днём и вечером до 23:00  34-я улица — Геральд-сквер
33-я улица (PATH)[en]
в будни днём и вечером 23-я улица
F — в будни днём и вечеромF — в будни днём и вечером<F> — в часы пик в пиковом направлении<F> — в часы пик в пиковом направлении
23-я улица (PATH)[en]
в будни днём и вечером 14-я улица
F — в будни днём и вечеромF — в будни днём и вечером<F> — в часы пик в пиковом направлении<F> — в часы пик в пиковом направлении на той же станции
1 — в будни днём и вечером1 — в будни днём и вечером2 — в будни днём и вечером2 — в будни днём и вечером3 — в будни днём и вечером3 — в будни днём и вечером  14-я улица
L — в будни днём и вечеромL — в будни днём и вечером  Шестая авеню
14-я улица (PATH)[en]
в будни днём и вечером Уэст Четвёртая улица — Вашингтон-сквер Доступность для маломобильных групп населения
A — в будни днём и вечеромA — в будни днём и вечеромB — в будни днём и вечером до 23:00B — в будни днём и вечером до 23:00C — в будни днём и вечеромC — в будни днём и вечеромD — в будни днём и вечеромD — в будни днём и вечеромE — в будни днём и вечеромE — в будни днём и вечеромF — в будни днём и вечеромF — в будни днём и вечером<F> — в часы пик в пиковом направлении<F> — в часы пик в пиковом направлении
Девятая улица (PATH)[en]
в будни днём и вечером Бродвей — Лафайетт-стрит Доступность для маломобильных групп населения
B — в будни днём и вечером до 23:00B — в будни днём и вечером до 23:00D — в будни днём и вечеромD — в будни днём и вечеромF — в будни днём и вечеромF — в будни днём и вечером<F> — в часы пик в пиковом направлении<F> — в часы пик в пиковом направлении на той же станции
6 — в будни днём и вечером6 — в будни днём и вечером<6> — в будни днём в пиковом направлении<6> — в будни днём в пиковом направлении  Бликер-стрит
круглосуточно, кроме ночи Эссекс-стрит
J — круглосуточно, кроме ночиJ — круглосуточно, кроме ночиZ — в часы пик в пиковом направленииZ — в часы пик в пиковом направлении на той же станции
F — круглосуточно, кроме ночиF — круглосуточно, кроме ночи<F> — в часы пик в пиковом направлении<F> — в часы пик в пиковом направлении  Деланси-стрит
круглосуточно, кроме ночи Марси-авеню Доступность для маломобильных групп населения
J — круглосуточно, кроме ночиJ — круглосуточно, кроме ночиZ — в часы пик в пиковом направленииZ — в часы пик в пиковом направлении
круглосуточно, кроме ночи Хьюс-стрит
J — круглосуточно, кроме будней днём в пиковом направлении и ночиJ — круглосуточно, кроме будней днём в пиковом направлении и ночи
круглосуточно, кроме ночи Лоример-стрит
J — круглосуточно, кроме будней днём в пиковом направлении и ночиJ — круглосуточно, кроме будней днём в пиковом направлении и ночи
круглосуточно, кроме ночи Флашинг-авеню Доступность для маломобильных групп населения
J — круглосуточно, кроме будней днём в пиковом направлении и ночиJ — круглосуточно, кроме будней днём в пиковом направлении и ночи
круглосуточно Мертл-авеню
J — круглосуточноJ — круглосуточноZ — в часы пик в пиковом направленииZ — в часы пик в пиковом направлении
круглосуточно Сентрал-авеню
круглосуточно Никкербоккер-авеню
круглосуточно Мертл-авеню — Уайкофф-авеню Доступность для маломобильных групп населения
L — круглосуточноL — круглосуточно  Мертл-авеню — Уайкофф-авеню
круглосуточно Сенека-авеню
круглосуточно Форест-авеню
круглосуточно Фреш-Понд-роуд
круглосуточно Мидл-Виллидж — Метрополитан-авеню Доступность для маломобильных групп населения

Для статей о линиях и списка линий[править код]

Название Ввод[1] Вывод Форматирование вывода Применение Пример
line_prose Линия. Маршруты, использующие линию, и их время работы на этой линии. Если линия считается «стволовой» и даёт цвет маршрутам, то добавляется текст ещё и об этом. Текст. Преамбула статьи о линии. маршрутами: J (круглосуточно), M (круглосуточно, кроме ночи) и Z (в часы пик в пиковом направлении). Линия считается «стволовой»: маршруты J и Z, проходящие по ней, обозначаются коричневым цветом.
line_bullets Линия. Маршруты, использующие линию. Крупные буллеты. Если во втором параметре передать ненулевое значение, будут буллеты обычного размера. Карточка линии; список линий. JMZ
line_count_stations Линия. Количество станций на линии. Просто число. Карточка линии. 6
line_nowrap Линия. Название линии с предотвращением переноса по дефисам в части после запятой. Карточка линии. Линия Нассо-стрит, Би-эм-ти
line_color Линия. Код цвета, который получают от линии маршруты, проходящие по ней. Если его нет (линия не «стволовая»), то чёрный. Код без предшествующего #. Карточка линии. 996633
line_opened Линия. Год открытия самой старой станции. Если во втором параметре передать непустое значение, то для линий, которые были построены раньше, чем перешли в состав метрополитена, будут выданы оба года и поясняющий текст. Текст. Карточка линии. 1908
line_aboveground Линия. Есть ли наземные участки (ответ для карточки). Текст: «есть», «нет» или «вся линия». Карточка линии. нет
segment_table Сегмент линии. Три необязательных параметра описаны ниже[⇨]. Несколько строк таблицы с информацией по станциям (название, пути у платформ, маршруты с временами, пересадки). Один вызов функции строит таблицу для одного сегмента. Для построения таблицы по всей линии надо комбинировать эту функцию с функцией connection_use и прочим текстом и разметкой. Статья о линии.

Станции на линии


 Станция Доступ для людей с ограниченными возможностями Тип
(по данным MTA)
Пути у
платформ
Дата
открытия
Маршруты
либо дата
закрытия
Пересадки
Линия начинается
Франклин-авеню[6] Доступность для маломобильных групп населения эстакадная все 15 августа 1896 S (челнок Франклин-авеню) — круглосуточноS (челнок Франклин-авеню) — круглосуточно
A — ночьюA — ночьюC — круглосуточно, кроме ночиC — круглосуточно, кроме ночи  Франклин-авеню
Ответвлялась линия Фултон-стрит, Би-эм-ти
 
 
Станция снесена Дин-стрит эстакадная все 15 августа 1896 1995
Парк-Плейс Доступность для маломобильных групп населения в выемке все 19 июня 1899 S (челнок Франклин-авеню) — круглосуточноS (челнок Франклин-авеню) — круглосуточно
Ботанический сад[7] в выемке все 19 июня 1899 S (челнок Франклин-авеню) — круглосуточноS (челнок Франклин-авеню) — круглосуточно
2 — круглосуточно2 — круглосуточно3 — круглосуточно, кроме ночи3 — круглосуточно, кроме ночи4 — круглосуточно4 — круглосуточно5 — в будни днём5 — в будни днём  Франклин-авеню — Медгар-Эверс-колледж
Проспект-парк Доступность для маломобильных групп населения в выемке все 2 июля 1878 S (челнок Франклин-авеню) — круглосуточноS (челнок Франклин-авеню) — круглосуточно
B — в будни днём и вечером до 23:00B — в будни днём и вечером до 23:00Q — круглосуточноQ — круглосуточно
Линия примыкает к линии Брайтон
B — в будни днём и вечером до 23:00B — в будни днём и вечером до 23:00Q — круглосуточноQ — круглосуточно
B — в будни днём и вечером до 23:00B — в будни днём и вечером до 23:00Q — круглосуточноQ — круглосуточно
connection_use Два сегмента линий. Если не задано два валидных сегмента, статья заносится в Категория:Статьи с ошибочными параметрами при обращении к модулю NYCS DB. Один необязательный параметр описан правее. Маршруты, использующие соединение между двумя сегментами. Если маршрутов не найдено, то возвращается текст, заданный через третий параметр, а в его отсутствие — «соединение не используется». Пустая строка в третьем параметре рассматривается как заданный в параметре пустой текст, в отличие от по-настоящему незаданного параметра. Буллеты и значки как в route_table. Статья о линии.
connection_use_2 Четыре сегмента линий. Если не задано четыре валидных сегмента, статья заносится в Категория:Статьи с ошибочными параметрами при обращении к модулю NYCS DB. Два необязательных параметра описаны правее. Список маршрутов для первой пары сегментов в скобках, затем слова «и обратно» и список для второй пары в скобках. Если маршрутов для какой-либо пары не найдено, то в соответствующих скобках возвращается текст, заданный через пятый параметр, а в его отсутствие — «соединение не используется». Если не найдено для обеих пар, то скобки возвращаются одни, а в них текст, заданный через шестой параметр, а в его отсутствие — «оба соединения не используются»; слова «и обратно» в этом случае возвращаются до скобок. Буллеты и значки как в route_table. Статья о линии.
  • (E — круглосуточноE — круглосуточноM — в будни днём и вечеромM — в будни днём и вечеромR — круглосуточно, кроме ночиR — круглосуточно, кроме ночи) и обратно (соединение не используется)
  • и обратно (оба соединения не используются)
segment_regimes Сегмент линии. Два необязательных параметра описаны правее. Маршруты, работающие на этом сегменте как экспрессы и локальные, в зависимости от периода времени. Таблица. В левой верхней клетке можно вывести текст, сообщающий о том, о каком участке линии идёт речь, и передаваемый через второй параметр. Если во втором параметре передать слово auto, в левой верхней клетке будут выведены названия первой и последней станций сегмента, разделённые при помощи тире и перевода строки (если на участке всего одна станция, то просто её название). Если в третьем параметре передать непустое значение, вместо «экспресс-пути» будет написано «экспресс-путь». Статья о линии.
Парксайд-авеню —
Брайтон-Бич
День + вечер Выходные + ночь
Экспресс-пути B(до 23:00)
Локальные пути Q Q
connection_use_color Два сегмента линий. Код цвета, соответствующего маршрутам, использующим соединение между двумя сегментами. Если маршрутов нет или их цвета различны, то чёрный. Код без предшествующего #. Статья о линии. 996633

Дополнительные параметры функции segment_table[править код]

В функции segment_table второй параметр может принимать значения:

Значение параметра Смысл Для каких станций
Для более компактного показа информации о пересадках:
2 Добавить столбец с маршрутами для второй части каждой станции (для станций, обслуживающих по две линии) и показать в столбце с пересадками только данные по другим станциям пересадочного узла. Для пар линий 63-й улицы и Арчер-авеню, где по две линии идут параллельно через одни и те же станции.
1 Все маршруты из обеих частей станции показать вместе, соединив столбцы с маршрутами и с пересадками. Для станции Декалб-авеню, где распределение путей между линиями сделано в какой-то мере условно.
0 В столбце с пересадками вместо информации о пересадках поместить текст: «Все станции в этой рамке связаны пересадкой». Это будет сделано для всех станций сегмента, поэтому сегмент должен состоять из одной станции. Для двух случаев на линиях Восьмой авеню и Бродвея, где две станции находятся на разных ветках одной линии и связаны пересадкой (те, которые перечислены в таблице twins). В этих случаях две таблицы строятся параллельно слева и справа и в каждой из них есть строка, соответствующая части одного и того же пересадочного узла. Два значения параметра соответствуют строкам левой и правой таблиц.

Для этих же случаев имеются третий и четвёртый параметры, обеспечивающие визуальное объединение этих двух строк. В третий параметр можно передать значение left или right, чтобы вокруг строки таблицы нарисовать жирную рамочку с трёх сторон: сверху, снизу и слева/справа. Если третий параметр задан, то в четвёртый параметр можно передать высоту строки таблицы, измеренную в строках текста.

название станции из таблицы twins В столбце с пересадками убрать данные по указанной станции.
Для обозначения того факта, что это схема строящейся или исторической линии:
future Проектируемый/строящийся сегмент, информацию о станциях надо брать из таблицы stations_future.
former Закрытый/исторический сегмент, информацию о станциях надо брать из таблицы stations_former.
reincarn Сегмент из обычной таблицы stations, но в составе закрытой/исторической линии, поэтому строится с некоторыми особенностями.
reincarn back То же, но станции перечисляются в обратном порядке.

Фрагмент преамбулы, карточка, табличка и схема линии для примера[править код]

Линия Нассо-стрит, Би-эм-ти
BMT Nassau Street Line
Нью-Йоркский метрополитен
JMZ
Открытие первого участка 1908 год
Количество станций 6
Наземные участки нет

Линия Нассо-стрит, Би-эм-ти — линия Нью-Йоркского метрополитена, расположенная на Манхэттене и обслуживаемая маршрутами: J (круглосуточно), M (круглосуточно, кроме ночи) и Z (в часы пик в пиковом направлении). Линия считается «стволовой»: маршруты J и Z, проходящие по ней, обозначаются коричневым цветом.

Часы пик Остальное время
Локальные пути J Z J
— в пиковом направлении; — в обратном пиковому

Станции на линии


 Станция Доступ для людей с ограниченными возможностями Тип
(по данным MTA)
Пути у
платформ
Дата
открытия
Маршруты Пересадки
Линия является продолжением линии Джамейка
J — круглосуточноJ — круглосуточноM — круглосуточно, кроме ночиM — круглосуточно, кроме ночиZ — в часы пик в пиковом направленииZ — в часы пик в пиковом направлении
Бруклин
Вильямсбургский мост
Манхэттен
Эссекс-стрит подземная все 16 сентября 1908 J — круглосуточноJ — круглосуточноM — круглосуточно, кроме ночиM — круглосуточно, кроме ночиZ — в часы пик в пиковом направленииZ — в часы пик в пиковом направлении
F — круглосуточноF — круглосуточно<F> — в часы пик в пиковом направлении<F> — в часы пик в пиковом направлении  Деланси-стрит
Ответвление к линии Шестой авеню
M — в будни днём и вечеромM — в будни днём и вечером
Бауэри подземная все 4 августа 1913 J — круглосуточноJ — круглосуточноZ — в часы пик в пиковом направленииZ — в часы пик в пиковом направлении
Канал-стрит подземная все 4 августа 1913 J — круглосуточноJ — круглосуточноZ — в часы пик в пиковом направленииZ — в часы пик в пиковом направлении
4 — ночью4 — ночью6 — круглосуточно6 — круглосуточно<6> — в будни днём в пиковом направлении<6> — в будни днём в пиковом направлении  Канал-стрит
N — ночьюN — ночьюR — круглосуточно, кроме ночиR — круглосуточно, кроме ночиW — в будни днём и вечером до 23:00W — в будни днём и вечером до 23:00  Канал-стрит
N — круглосуточно, кроме ночиN — круглосуточно, кроме ночиQ — круглосуточноQ — круглосуточно  Канал-стрит
Присоединялись пути от Манхэттенского моста
 
 
Чеймберс-стрит Доступность для маломобильных групп населения подземная все 4 августа 1913 J — круглосуточноJ — круглосуточноZ — в часы пик в пиковом направленииZ — в часы пик в пиковом направлении
4 — круглосуточно4 — круглосуточно5 — круглосуточно, кроме ночи5 — круглосуточно, кроме ночи6 — круглосуточно6 — круглосуточно<6> — в будни днём в пиковом направлении<6> — в будни днём в пиковом направлении  Бруклинский мост — Сити-холл
Фултон-стрит Доступность для маломобильных групп населения подземная все 30 мая 1931 J — круглосуточноJ — круглосуточноZ — в часы пик в пиковом направленииZ — в часы пик в пиковом направлении
2 — круглосуточно2 — круглосуточно3 — круглосуточно, кроме ночи3 — круглосуточно, кроме ночи  Фултон-стрит
4 — круглосуточно4 — круглосуточно5 — круглосуточно, кроме ночи5 — круглосуточно, кроме ночи  Фултон-стрит
A — круглосуточноA — круглосуточноC — круглосуточно, кроме ночиC — круглосуточно, кроме ночи  Фултон-стрит
Всемирный торговый центр (PATH)[en]
Брод-стрит подземная все 30 мая 1931 J — круглосуточноJ — круглосуточноZ — в часы пик в пиковом направленииZ — в часы пик в пиковом направлении
Линия сливается с линией Бродвея
и продолжается как линия Четвёртой авеню
N — ночьюN — ночьюR — круглосуточноR — круглосуточноW — в будни днём и вечером до 23:00W — в будни днём и вечером до 23:00
N — ночьюN — ночьюR — круглосуточноR — круглосуточноW — часть рейсов в часы пик в пиковом направленииW — часть рейсов в часы пик в пиковом направлении
Манхэттен
Тоннель Монтегью-стрит
Бруклин

Для схемы всего метрополитена[править код]

Название Ввод[1] Вывод Форматирование вывода Пример
segment_color Сегмент линии либо два сегмента. Если задан второй сегмент, то третий параметр — обозначения segor, segand, segandnot, как в шаблоне {{NYCS seg use}}. Код цвета, соответствующего маршрутам, проходящим по сегменту. Если маршрутов нет или их цвета различны, то чёрный. Если задан второй сегмент, то он учитывается так, как указано в третьем параметре. Код без предшествующего #. 000000
seg2color Сегмент линии либо два сегмента. Код цвета, соответствующего линии, на которой расположен сегмент. Если линия не стволовая, то чёрный. Если задан второй сегмент, то цвет (не чёрный) возвращается только при условии, что он одинаковый для обоих сегментов. Код без предшествующего #. 996633
segment_dir Сегмент линии либо два сегмента. Если задан второй сегмент, то третий параметр — обозначения segor, segand, segandnot, как в шаблоне {{NYCS seg use}}. В четвёртом параметре можно передать обозначение периода времени согласно модулю. Способы использования сегмента (есть экспресс-поезда; есть экспресс-поезда только в пиковом направлении; есть движение по схеме «скип-стоп»; ничего из перечисленного нет). Имя цвета. grey
seg_route Сегмент, маршрут. Непустое значение, если маршрут проходит по сегменту, и пустое в противном случае.[5] Текст. x
segment_route_coef Маршрут, сегмент линии либо два сегмента. Если задан второй сегмент, то четвёртый параметр — обозначения segor, segand, segandnot, как в шаблоне {{NYCS seg use}}. Коэффициент зелёного и синего для функции rgb, обозначающей использование сегмента маршрутом по временам суток: наиболее яркий красный обозначает круглосуточное использование, наиболее бледный розовый только по ночам, серый отсутствие маршрута на сегменте. Число от 0 до 255. 0
seg_line Сегмент, линия. Непустое значение, если линия проходит по сегменту, и пустое в противном случае. Текст. x

Некоторые примеры — здесь.

Для других статей и общего назначения[править код]

Название Ввод[1] Вывод Форматирование вывода Пример для станции Пример для пересадочного узла
station_bullets Станция или пересадочный узел. Останавливающиеся на станции маршруты.[5] Буллеты со ссылками на статьи о маршрутах. JMZ F<F>JMZ
station_letters Станция или пересадочный узел. Останавливающиеся на станции маршруты.[5] Всё текстом без ссылок, и для каждого маршрута выводится только его буква или цифра. J, M, Z F, <F>, J, M, Z
station_letters_L Станция или пересадочный узел. Один необязательный параметр описан правее. Название станции без уточнения, но с останавливающимися на ней маршрутами.[5] Всё текстом со ссылкой на статью о станции, и для каждого маршрута выводится только его буква или цифра. Если во второй параметр передать true, выводится текст без ссылки. Эссекс-стрит (J, M, Z) Деланси-стрит / Эссекс-стрит (F, <F>, J, M, Z)
station_netto_L Станция или пересадочный узел. Название станции без уточнения. Текст со ссылкой на статью о станции. Эссекс-стрит Деланси-стрит / Эссекс-стрит
station_descr Станция или пересадочный узел. Описание станции для дизамбига. «Эссекс-стрит» — станция Нью-Йоркского метрополитена на Манхэттене, обслуживаемая маршрутами J, M, Z. «Деланси-стрит / Эссекс-стрит» — пересадочный узел Нью-Йоркского метрополитена на Манхэттене, обслуживаемый маршрутами F, <F>, J, M, Z.
SM Станция и прочие параметры для шаблона {{SM smart}}. Прочие параметры (dir, side, X, Y) должны передаваться во втором параметре единым стрингом, в котором перед именем параметра ставится {{!}}, а перед значением {{=}}, которые при подстановке превратятся в | и = соответственно. Третий параметр может принимать значения former или reincarn, как в функции segment_table. В четвёртом параметре можно передать любое непустое значение, чтобы был использован графический файл не с белым, а с серым фоном. Пятый параметр предназначен для параметра label, передаваемого в шаблон {{SM smart}}. Функция вызывает шаблон {{SM smart}}, который строит кружок, обозначающий станцию на схеме метро, — например, на схеме демонтированных линий.
const Различные константы. Единственным параметром служит имя константы, значение которой нужно получить (подробнее см. комментарии в модуле в тексте локальной функции const). 2019
legend Список условных обозначений для периодов времени.
  круглосуточно
  круглосуточно, кроме ночи
  круглосуточно, кроме будней днём (либо часов пик) в пиковом направлении
  в будни днём (и, возможно, вечером)
  в будни круглосуточно
  в часы пик
  в будни днём (либо в часы пик) в пиковом направлении
  в будни днём (либо в часы пик) в направлении, обратном пиковому
  в выходные
  ночью
  ночью и в выходные (и, возможно, вечером)
  нет движения поездов

Фрагмент карточки и текста для статьи об улице[править код]

улица Такая-то
англ. Some Street
Общая информация
Страна США
Город Нью-Йорк
Метро Эссекс-стрит (JMZ)
Деланси-стрит (F<F>)
или
Деланси-стрит / Эссекс-стрит (F<F>JMZ)
Боро Манхэттен

Пример строчек для дизамбига[править код]

(на самом деле в дизамбигах будет дана ссылка на каждую статью один раз, а не три, как здесь)
  • «Эссекс-стрит» — станция Нью-Йоркского метрополитена на Манхэттене, обслуживаемая маршрутами J, M, Z.
  • «Деланси-стрит» — станция Нью-Йоркского метрополитена на Манхэттене, обслуживаемая маршрутами F, <F>.
  • «Деланси-стрит / Эссекс-стрит» — пересадочный узел Нью-Йоркского метрополитена на Манхэттене, обслуживаемый маршрутами F, <F>, J, M, Z.

Примечания к функциям[править код]

  1. 1 2 3 4 5 6 7 8 В качестве станций, а также сегментов линий следует передавать названия согласно списку в таблице stations (см. ниже), в качестве пересадочных узлов — согласно списку в таблице station_complexes, в качестве маршрутов — согласно списку в таблице routes.
  2. 1 2 3 4 Annual Subway Ridership
  3. 1 2 3 В качестве примера взята станция Фар-Рокавей — Мотт-авеню (линия Рокавей, Ай-эн-ди).
  4. В качестве примера взята станция Корт-стрит (линия Фултон-стрит, Ай-эн-ди).
  5. 1 2 3 4 5 6 7 В тех форматах, где не выводятся времена, из списка маршрутов исключаются те, которые останавливаются на станции только ночью, только иногда в часы пик, только в выходные летом и т. п. Это примечание не касается, однако, форматов, строящих куски связного текста, а также формата bullets all.
  6. Станция имела перпендикулярные платформы для эстакадной линии Фултон-стрит и для линии Брайтон (ныне эта её часть относится к линии Франклин-авеню).
  7. Станция была перемещена севернее в 1928 году.

Таблицы[править код]

Для нужд этого модуля вся схема Нью-Йоркского метрополитена разделена на сегменты, каждый из которых на всём своём протяжении обслуживается одинаковыми маршрутами. В некоторых случаях может оказаться, что между соседними сегментами нет разницы с точки зрения маршрутов, а разделены они по другим причинам, например из-за необходимости нарисовать что-нибудь между ними на схеме линии. Сегменты всегда разделены в тех местах, где одна линия переходит в другую.

Две главных таблицы[править код]

stations[править код]

Большая таблица, около 500 записей. Все станции по сегментам, в пределах каждого сегмента с севера на юг (согласно принятому в Нью-Йорке railroad north и railroad south для всех участков метрополитена[1]). Поля:

Имя поля Смысл Пояснения
segment Название сегмента, на котором находится станция.
station Название станции (ключ таблицы). Названием в большинстве случаев служит название статьи, кроме исключений, перечисленных в таблицах multiline_stations и station_complexes, когда названием служит название перенаправления.
info Примечание к названию станции. Показывается в виде сноски. Сообщает как правило о том, что станция в прошлом имела пересадку на другую станцию, ныне снесённую.
type Тип станции, отвечающий на вопрос, все ли поезда останавливаются на станции.

Возможные типы:

  • x — экспресс-станция (на ней останавливаются все поезда);
  • o — локальная станция (экспресс-поезда её проходят без остановки);
  • J и Z — во время работы маршрутов J и Z в режиме скип-стоп останавливается J или Z соответственно (если режим скип-стоп будет введён и для других маршрутов, можно будет здесь добавить и другие обозначения);
  • - — станция закрыта (на момент создания модуля таких нет);
  • пустой тип — для станций на сегментах, где нет различения станций по типам и все поезда останавливаются на всех станциях.
subtype Подтип, конкретизация к предыдущему полю.

Для станций типа x задаётся подтип, используемый только для вычисления маршрутов, идущих по экспресс-путям. Возможные подтипы:

  • suppress — экспресс-путей нет (либо распределение маршрутов между путями нестандартно и подлежит описанию вручную);
  • bidi — один экспресс-путь;
  • tt — средний путь является не экспресс-путём, а оборотным;
  • пустой подтип — два экспресс-пути.

Для станций типа o есть другие значения подтипа:

  • split — это значит, что экспресс-пути обходят станцию по спрямлённой трассе;
  • under — это значит, что экспресс-пути проходят под станцией и не видны с платформ(ы).

Ещё один подтип, используемый независимо от типа:

  • bumper — если на станции есть ровно два пути и оба заканчиваются тупиками.
other_type Только для станций, обслуживающих несколько линий, если на текущей линии в пределах станции нет путей без остановки, а на другой линии есть. В этом поле ставится o (как в поле type в записи, соответствующей другой части этой станции), и это приводит к правильному показу «лок.» на схеме линии в графе «Пути у платформ»; использовано только у двух станций.
note Примечание. У станции Акуидакт-Рейстрак стрелка вверх, обозначающая платформу только в северном направлении.
north_back Логическое поле[2], обозначающее, что в списке соседних станций надо для данной станции северную соседнюю показывать как южную, а южную как северную. Применяется тогда, когда railroad north и railroad south для данной станции противоположны им же для расположенных параллельно других частей физической станции или других станций внутри пересадочного узла, для которых список соседних станций показывается вместе.
acc Доступность для инвалидов. Источник здесь или здесь. Варианты:
  • yes — станция доступна;
  • n — только в северном направлении;
  • s — только в южном направлении.

Чтобы поддерживать это поле в актуальном состоянии, можно следить за статьёй английской Википедии en:Accessibility of the Metropolitan Transportation Authority (по методу «наблюдение за наблюдающим»): англоязычные коллеги следят за источниками по теме и регулярно обновляют эту статью.

sep Отсутствие бесплатного перехода между направлениями. Источник здесь, вот сам сайт и страница со ссылкой на карту, ссылка подписана «2010 Route Map in the style of the 1959 Schematic». Единственный вариант:
  • yes — значит платформы разделены и перехода между ними нет (в противном случае поле не заполнено).
eng Английское название станции.
old Старое название станции, используемое при указанном параметре reincarn (существующая станция как часть исторической линии). Знак минус в этом параметре обозначает, что при построении схемы исторической линии эту станцию надо пропустить.
oldlink Ссылка на статью, используемая при указанном параметре reincarn (существующая станция как часть исторической линии). Эта ссылка содержит в качестве уточнения название исторической линии и является перенаправлением на статью о существующей станции, где сказано о её конфигурации в прошлом.
oldtype Тип станции, используемый при указанном параметре reincarn (существующая станция как часть исторической линии). Фактически нужно только для случаев, когда на исторической схеме надо показать станцию как локальную (oldtype='o'), а на современной не надо.
oldeng Старое английское название станции (пока не используется, потому что в схемах линий английские названия не участвуют).
opened Дата открытия. Внимание: последние 4 цифры обязаны быть номером года. Если дата неизвестна, поле остаётся пустым (пустой стринг, между кавычками ничего).
orig Дата первоначального открытия. Если станция была открыта в составе железной дороги, а позже включена в состав метрополитена, то в поле opened ставится дата включения в состав метрополитена, а в поле orig — дата первоначального открытия.
above Если на схеме линии надо изобразить перед станцией мост или тоннель, то здесь указывается его имя. Здесь же, вокруг имени моста/тоннеля или вместо него, указывается граница боро, например: Манхэттен<hr>Такой-то тоннель<hr>Бруклин Если для этого моста/тоннеля существует статья, то имя ставится как ссылка на неё; если нет статьи, а есть только перенаправление на статью о линии метро, то без ссылки. Манхэттенский мост и некоторые другие мосты и тоннели указывать не надо, они указываются вручную прямо на схеме.
below То же, но не перед станцией, а после неё. Если станции до и после моста/тоннеля относятся к разным линиям, то мост/тоннель надо указывать для обеих станций, а если к одной и той же, то только для одной из них.
below_key Если на схеме линии после станции надо изобразить строчку или несколько из таблицы stations_former, то здесь указывается имя сегмента из той таблицы.
below_key_reincarn Аналогично предыдущему, но игнорируется в режиме reincarn.
below_stub Если на схеме линии после станции надо изобразить подключение бывшей линии, то здесь указывается его конфигурация. Значение параметра состоит из двух символов: плюс или минус обозначает подключение или ответвление, а затем w или e обозначает запад или восток.
below_stub_text Текст к предыдущему параметру.
above_stub То же, но до станции.
above_stub_text Текст к предыдущему параметру.
r_key Ключ для извлечения пассажиропотока из таблицы ridership.
r_ast Логическое поле[2], обозначающее, что цифра пассажиропотока дана для всего пересадочного узла.
c_key Ключ для извлечения географических данных из таблицы csv.
conn Ссылка на русскую статью (и, если надо, на английскую) для пересадки на другой вид транспорта.
br Для длинных названий станций — название, разбитое на две строчки тегом <br>. Используется только в схеме линии. В схеме маршрута использовать нельзя, потому что там важна высота текста в клетке в строках.

Если через станцию проходят несколько линий (см. ниже таблицу multiline_stations), то здесь каждая из частей станции имеет свою запись. При этом поля начиная с acc в каждой из записей заполняются одинаково, дублируя информацию.

routes_periods[править код]

Большая таблица, около 1000 записей. Собственно расписание движения поездов. Поля:

Имя поля Смысл Пояснения
route Маршрут. Как в таблице routes.
period Период времени.

Варианты:

  • rh (rush hours) — часы пик;
  • md (middays) — дневное время в рабочие дни, за исключением часов пик;
  • ev (evenings) — вечернее время в рабочие дни;
  • we (weekends) — выходные и праздники;
  • ln (late nights) — ночное время.

Кроме того, в некоторых записях обозначен период времени:

  • also.

Это нужно для построения схемы маршрута — схема составляется на основе тех сегментов, которые маршрут проходит в часы пик (поскольку в часы пик он проходит почти все свои сегменты), и если какой-то из своих сегментов маршрут не проходит в часы пик, то этот сегмент добавляется в таблицу с пометкой also. Аналогично, если схема маршрута строится для двух маршрутов-вариантов параллельно (на момент составления модуля такими случаями являются: 6 и <6>, 7 и <7>, F и <F>, J и Z, A и ; можно так же изобразить N и W, но это уже будет орисс), то надо иметь в виду, что сегменты для неё берутся от первого маршрута, поэтому если у второго есть сегменты, отсутствующие в часах пик у первого, то их тоже надо добавить к первому с периодом also. Последовательность записей с also должна укладываться в общую последовательность обхода сегментов маршрутом, задаваемую записями с rh, а записи с rh и also вместе должны предшествовать остальным записям для того же маршрута и для его варианта. (Если маршрут в часы пик не проходит какой-то свой сегмент, зато проходит другой сегмент, на котором находятся те же станции, как это происходит с маршрутом D на станции Декалб-авеню, то применяется другой подход, без записи с also, и он описан ниже.)

segment Сегмент. Сегменты в пределах каждого сочетания маршрута и периода времени перечислены с севера на юг, аналогично станциям в таблице stations; исключения из этого порядка обрабатываются таблицей nodes и полями fork и joint.
Три поля выше этого места — ключ.
how Ответ на вопрос, как этот маршрут в это время обслуживает этот сегмент.

Варианты:

  • x — поезд останавливается только на станциях, имеющих тип x;
  • J, Z (можно добавлять и другие символы) — поезд останавливается только на станциях, у которых тип обозначен тем же символом либо x;
  • пустой способ — поезд следует со всеми остановками.
dir Ограничение движения поездов по направлению движения (пиковое или противоположное ему) или по части периода времени.

Варианты:

  • peak — указанный способ обслуживания относится к пиковому направлению, а обратно поезд идёт со всеми остановками;
  • peakonly — как peak, но обратно поезд не идёт (в обратном направлении те же составы следуют под другим маршрутом либо не следуют вообще, потому что уходят в / выходят из депо);
  • peak+ — как peakonly, но только иногда (меньшая часть рейсов);
  • notpeakonly — как peakonly, но в обратную сторону.

Кроме того, есть вариант, обозначаемый цифрой 1, смысл которого — ограничение периода времени:

  • в часы пик — только некоторые рейсы (но в обоих направлениях, а не в одном, в отличие от peak+);
  • вечером — только до 23:00;
  • в выходные дни — только в летний сезон;
  • ночью — только в рабочие дни.

Аналогично, есть вариант, обозначаемый цифрой 2:

  • вечером — только после 23:00;
  • в выходные дни — кроме летнего сезона;
  • ночью — только в выходные дни.
fork Пометка сегментов, расположение которых в таблице отличается от порядка обхода поездом. Значение south соответствует началу (северному сегменту) ответвления на юг (например, маршрут A), а north наоборот (например, маршрут 5); значение uturn у последнего сегмента по списку обозначает, что он не последний по маршруту (маршрут M).
alt Отношение записи к временным изменениям в маршрутах.

Варианты:

  • пусто — запись одинаково верна для обычной схемы и для временной;
  • +1, +2 и т. д. — только для временной схемы;
  • -1, -2 и т. д. — только для обычной схемы (внимание, здесь должен быть символ дефиса, который есть на клавиатуре).

Для включения механизма показа временных изменений надо занести в таблицу alts запись с соответствующим номером.

future Логическое поле[2], обозначающее, что маршрут проектируется.
tt Логическое поле[2], обозначающее, что экспресс-пути в данном случае используются для оборота.
shuttle Логическое поле[2], обозначающее, что маршрут в этот период времени является челноком (расставляется во всех записях, относящихся к данному сочетанию маршрута и периода времени).
Все поля ниже этого места — только для построения схем маршрутов.
joint Точка пристыковки перевёрнутого сегмента к обычному. Для маршрута, у которого на трассе имеется точка разворота и поэтому часть сегментов надо изобразить задом наперёд (на момент создания модуля только маршрут M). Оно ставится со значением true в записи с периодом времени rh у последнего обычного сегмента перед первым сегментом, который надо перевернуть. Сегменты после точки разворота у такого маршрута перечисляются в обратном порядке: от второй конечной станции к точке разворота, навстречу той части маршрута, которая до точки разворота. При этом поддерживаются маршруты с разворотом с двумя северными концами, но не с двумя южными. Если появится маршрут с двумя южными, программу придётся дописывать. Тем более не поддерживаются маршруты с двумя разворотами (а они возможны, например если тот же M будет перенаправлен на Бродвей-Джанкшен и затем на Канарси).
pattern В записях с периодом времени rh либо also схематическое изображение символов, которые должны быть нарисованы в схеме маршрута слева от названия станции у всех станций данного сегмента и всех последующих, пока не попадётся сегмент, у которого задан другой pattern.
shape Аналогично, но которые должны быть нарисованы в отдельной строке после данного сегмента (и заодно признак, что нужно нарисовать такую отдельную строку).
novert_n Логическое поле[2], сообщающее о том, что если строка таблицы увеличена в высоту из-за нескольких строк пересадок в её правом столбце, то в символах, расположенных слева от названия станции, не нужно рисовать соединяющую кружки вертикальную линию сверху от первой станции сегмента (если сегмент первый в маршруте, то заполнять поле не нужно, отмена вертикальной линии работает автоматически).
novert_s То же снизу от последней станции сегмента (и если сегмент последний в маршруте, то заполнять не нужно).
Следующая группа полей тоже предназначена для построения схем маршрутов, но используется только для маршрута D на станции Декалб-авеню, где распределение путей между линиями сделано в какой-то мере условно. Маршрут D проходит эту станцию ночью по путям, отнесённым к одной линии, а в остальное время — по путям, отнесённым к другой (как экспресс). Первым путям соответствует сегмент Brigh DK, а вторым сегмент Fourth DK, оба сегмента включают только эту станцию. Соответственно, сегмент Brigh DK для маршрута D присутствует в таблице с периодом времени ln, а сегмент Fourth DK — со всеми остальными. Если бы для этой станции была задана запись с периодом времени also, то станция была бы показана на схеме маршрута дважды.
fullsta Логическое поле[2] в записи с периодом rh, сообщающее о том, что в схеме маршрута для станций этого сегмента (то есть для станции Декалб-авеню) надо рассматривать проход поездов по всем путям, а не только по путям определённой линии (аналогично параметру 1 в функции segment_table).
segment_subst В записи, сегмент которой отсутствует среди записей с периодом rh, альтернативный сегмент, присутствующий там.

Внимание: данные в этой таблице должны отражать прохождение маршрутов по тем или иным путям, а не просто факт остановки на станции. Запись должна присутствовать в таблице, даже если поезд проходит сегмент экспрессом, а на сегменте нет ни одной экспресс-остановки.

Дополнительная информация о станциях[править код]

stations_future[править код]

Аналогично таблице stations, но только проектируемые/строящиеся станции. В поле opened ограничение про номер года не действует. Дополнительные поля:

  • struc — тип станции, который для действующих станций вычисляется на основании таблицы csv; задаётся текстом, и если поле отсутствует, то по умолчанию имеется в виду «подземная»;
  • boro — боро.

stations_former[править код]

Аналогично таблицам stations и stations_future, но только закрытые/исторические станции. Большая таблица, более 200 записей. Дополнительные поля:

  • struc и boro — как в предыдущей таблице; поле struc по умолчанию имеется в виду «эстакадная»;
  • saved — логическое поле[2], обозначающее, что станция закрыта, но не снесена;
  • closed — дата закрытия;
  • station2 — как station, поле для второго названия станции на случай, если платформы разных направлений представляли собой две отдельных станции;
  • en — название английской статьи на случай, если русская отсутствует (а она как правило отсутствует);
  • transfer — комментарий про бывшие пересадки на другие станции. Поле может быть указано и в таблице stations — у станций, вставляемых при помощи параметра reincarn в схемы исторических линий. В отличие от поля info, используется не в сноске, а в графе «Примечания» и заполняется без точки в конце и с маленькой буквы;
  • spur — обозначение бывшей конечной, находившейся на ответвлении (значение поля состоит из двух букв: s или n обозначает южную или северную, а затем w или e обозначает, что станция располагалась к западу или к востоку от основной линии);
  • spur_noreincarn — аналогично предыдущему, но игнорируется в режиме reincarn.

Если станция обслуживала и существующую линию, и закрытую, то она сюда не заносится, потому что эта таблица используется только посегментно для построения схемы линии, а станция, которая до сих пор существует, на такой схеме берётся из таблицы stations.

twins[править код]

Те станции, которые описаны в статьях по две в одном разделе статьи. Поля:

  • ключ таблицы — название станции, как она бы называлась, если бы она была одна, а не две;
  • eng — то же, на английском языке;
  • comment1 и comment2 — краткое название на русском, позволяющее отличить одну станцию от другой;
  • station1 и station2 — название станции, как она действительно названа в модуле.

multiline_stations[править код]

Те станции, через которые проходят две линии и больше. Поля:

  • full — название статьи про станцию;
  • part — название перенаправления на статью, которое соответствует путям определённой линии на станции и используется в таблице stations в качестве «квазистанции»;
  • text — начало текстового описания распределения маршрутов по путям для данной части станции (программа берёт эти описания в том же порядке, в котором они перечислены в таблице, поэтому для первой части каждой станции этот текст начинается с большой буквы, а для остальных укорочен, чтобы не повторять те же слова в статье);
  • after — пояснение после этого описания, которое программа заключает в скобки;
  • level — текст, который добавляется к описанию части станции, и он же признак, что для данной части станции надо построить также описание распределения маршрутов по локальным и экспресс-путям;
  • detailed — логическое поле[2], обозначающее, что перечисление маршрутов для частей станции должно быть с указанием времён для каждого (по умолчанию оно делается без времён);
  • no_lcl и no_exp — логические поля[2], отменяющие перечисление локальных и экспресс-маршрутов соответственно для данной части станции;
  • cross — логическое поле[2], обозначающее, что на станции имеется кросс-платформенная пересадка (но за таковую засчитываются только пересадки между маршрутами разных линий).

station_complexes[править код]

Пересадочные узлы. Поля:

  • article — название статьи про пересадочный узел; если статьи про узел нет, то в этом поле ставится условное значение (одинаковое для обеих записей), имеющее длину 1 (цифра либо латинская буква);
  • station — название перенаправления на статью, которое соответствует станции;
  • section — название раздела, на который ведёт это перенаправление; пустая строка обозначает (кроме станций с заполненным полем future, см. ниже), что станция связана с остальным пересадочным узлом виртуальной пересадкой (с выходом из метро и повторным входом, но без повторной оплаты) и имеет отдельную статью;
  • periods — для пересадок, действующих только в некоторые периоды времени, обозначение периодов, совпадающее с одним из значений ключа в таблице icons; наличие этого поля рассматривается как признак, что пересадка не виртуальная (между Таймс-сквер и Брайант-парком пересадка не виртуальная и работает только в часы работы челнока, все виртуальные пересадки работают круглосуточно);
  • alt — аналогично одноимённому полю в таблице routes_periods;
  • future — логическое поле[2], обозначающее, что либо это проектируемая/строящаяся станция, либо это пересадочный узел, в котором все станции кроме этой проектируемые/строящиеся.

Дополнительная информация о путях[править код]

nodes[править код]

Необходимая информация по точкам соединения сегментов, где переход поезда с сегмента на сегмент отличается от порядка перечисления сегментов в расписании. Поля:

  • segment — название сегмента, подходящего к точке с одной из сторон;
  • node_n — название точки, если она является северной для сегмента;
  • node_s — то же, если она является южной;
  • nodetype — тип точки.

Каждая запись содержит информацию об одном сегменте, примыкающем к точке. Для точки требуется две или три записи по сегментам. Поля, соответствующие точке, содержат одинаковую информацию во всех записях, относящихся к ней. Поддерживаются два типа точек:

  • fork — развилка (в одной точке сходятся три сегмента, один с севера и два с юга либо наоборот, поезд проходит без изменения направления);
  • uturn — разворот (два сегмента, но оба примыкают к точке с севера или оба с юга, поезд проходит либо с изменением направления через эти два сегмента, либо обычным образом в порядке перечисления сегментов).

Информация о точке заносится в таблицу только в том случае, если развилка либо разворот используется каким-либо маршрутом (один и тот же маршрут в одно и то же время суток проходит по обеим веткам развилки, либо существует маршрут, проходящий через точку по сегментам, образующим разворот).

Эта таблица частично дублирует информацию из таблицы routes_periods, потому что так было удобнее для алгоритма.

unused_connections[править код]

Перегоны, которые по сегодняшнему расписанию не используются маршрутами, однако должны быть учтены при показе соседних станций. Для каждого перегона даются две станции, между которыми он проходит. Поля:

  • station — станция;
  • north — логическое поле, является ли станция северной для перегона (возможны две южных или две северных, если проезд по перегону является разворотом);
  • connection — условное обозначение перегона (чтобы было ясно, какие станции относятся к одному перегону).

unused_tracks[править код]

Аналогично предыдущему — участки путей, которые не используются маршрутами. Для каждого участка даются две или более станций. Поля:

  • station — станция;
  • segment — условное обозначение участка (не связано с сегментами, используемыми в остальных таблицах);
  • closed — текст комментария к станции, если она сегодня не существует, например «закрыта» или «снесена»;
  • index — номер станции по участку, считая с севера на юг (станции будут связаны перегоном, если они расположены на одном участке и имеют соседние номера).

Эта таблица и предыдущая имеют частично совпадающую функциональность, однако в эту таблицу занесены пути, ведущие к закрытым станциям, а в предыдущую — пары существующих станций, пути между которыми не используются.

В эти две таблицы можно добавить неиспользуемые экспресс-пути, проходящие параллельно локальным путям. Они не добавлены сюда умышленно, потому что не найден источник, который бы гарантировал полноту списка (с учётом всех мест, где поезд может перейти с экспресс-путей на локальные или наоборот). Внимание: несмотря на то что в таблице stations отмечены все экспресс-станции и видно, на каких станциях остановится поезд, идущий по экспресс-пути, — эти вычисления производятся только для существующих маршрутов. Чтобы соседние станции вычислялись и для неиспользуемых экспресс-путей, необходимо все такие пути заносить в эти две таблицы.

Таблицы, копируемые с сайта mta.info[править код]

ridership[править код]

Большая таблица, около 400 записей. Содержит ключ (сокращённое название станции на английском языке и обозначения останавливающихся на ней маршрутов) и данные по годовому пассажиропотоку для каждой станции или пересадочного узла. Ключ должен совпадать с полем r_key в таблице stations. Поля:

Имя поля Смысл
r Пассажиропоток.
prev Пассажиропоток за предыдущий год.
rank Номер станции по пассажиропотоку.
comment Сноска.

Эти данные вынесены в отдельную таблицу, чтобы при обновлении источника менять только её. Ниже дана инструкция по переносу данных из источника в таблицу.

Если источник представляет собой html Если источник представляет собой файл xlsx
  1. Сохранить html источника в текстовом файле.
  2. Оставить в нём только часть от <table id="subway"> до закрывающего </table> включительно, остальное стереть.
  3. Заменить <img и _subway (где знаком подчёркивания обозначен пробел) на <!--, а alt=" и /> на -->.
  4. Открыть полученный файл в браузере и скопировать таблицу из браузера в Эксель.
  5. В столбце с названием станции заменить апострофы на сочетание обратной косой черты и апострофа.
  1. Найти в Экселе лист с данными за год (а не за день).
  2. В столбце с названием станции:
    • удалить все скобки,
    • запятые заменить на пробелы,
    • а апострофы — на сочетание обратной косой черты и апострофа.

И далее:

  1. В предположении, что название станции с маршрутами (ключ) оказалось в столбце A, пассажиропоток за нужный год в столбце G, пассажиропоток за предыдущий год в столбце F, номер станции по пассажиропотоку в столбце J, а столбец K пуст, занести в столбец L такую формулу:
="['" & A2 & "']={r=" & G2 & ",prev=" & F2 & ",rank=" & J2 & "},"
(пример приведён для второй строки) и размножить её на всю высоту.
  1. Удалить строки, в которых нет станций.
  2. Скопировать столбцы K и L в модуль на место строк таблицы ridership[3].
  3. Если где-то возникают ошибки компиляции из-за станций, по которым нет данных, дополнить данные нулями.
  4. Убедиться в предпросмотре, что в статье Список станций Нью-Йоркского метрополитена пассажиропоток показывается корректно во всех строках (и нигде нет слова ERROR).
    1. У тех станций, где есть проблема, проверить, не изменился ли ключ. Изменения могут касаться как названия станции и проходящих через неё маршрутов, так и пропавшего пробела или затесавшегося невидимого символа.
    2. Если ключ изменился оправданно (в связи с изменением названия станции или маршрутов), оставить здесь новое значение и привести в соответствие поле r_key в таблице stations (помня, что один ключ может использоваться для нескольких станций, поскольку этот источник приводит данные не по станциям, а по пересадочным узлам, а кроме того таблица stations разбивает на несколько строк станции, обслуживающие несколько линий).
    3. Расхождения в пробелах и невидимых символах подогнать под то, что сделано в таблице stations.
  5. Не забыть обновить в функции const все значения, связанные с пассажиропотоком.
  6. Если с момента предыдущего обновления изменилось вхождение станций в пересадочные узлы:
    1. Добавить вручную поле comment к тем станциям, которых коснулось это изменение (например:
comment='Без учёта станции «Кортландт-стрит», которая не входила в пересадочный узел.'
у тех, где это уже не актуально, оно удалится само в момент нажатия на Ctrl+V, см. выше).
  1. Убедиться, что в таблице stations проставлено поле r_ast у тех станций, пассажиропоток для которых дан по пересадочным узлам (и не проставлено у остальных; фактически проверить надо только те станции, у которых вхождение в пересадочные узлы изменилось).

csv[править код]

Большая таблица, более 400 записей. Содержит ключ (номер станции) и некоторые географические данные для станции. Ключ должен совпадать с полем c_key в таблице stations. Поля:

Имя поля Смысл
boro Боро (Манхэттен, Бруклин…).
struc Структурный тип станции (подземная, эстакадная…).
lat Географическая широта.
lon Географическая долгота.
id Код станции.

Эти данные вынесены в отдельную таблицу, чтобы при обновлении источника менять только её. Ниже дана инструкция по переносу данных из источника в таблицу.

  1. Сохранить источник в текстовом файле. Убедиться, что у него осталось расширение csv. Открыть его в Экселе.
  2. В предположении, что код станции оказался в столбце A, номер станции (ключ) в столбце C, боро в столбце G, структурный тип в столбце I, географические координаты в столбцах J и K, направления на север и юг в столбцах L и M, а столбец N пуст, занести в столбец O такую формулу:
="['" & C2 & "']={boro='" & G2 & "',struc='" & I2 & "',lat='" & J2 & "',lon='" & K2 & "',id='" & A2 & "',n='" & L2 & "',s='" & M2 & "'}, --" & F2 & " / " & H2
(пример приведён для второй строки) и размножить её на всю высоту.
  1. Удалить строки, в которых нет станций либо (в самом низу) которые относятся к Статен-Айленду.
  2. Скопировать столбцы N и O в модуль на место строк таблицы csv[3].

Примечание. В файле в источнике добавили поля, связанные с доступностью станций для инвалидов. С одной стороны, можно их учесть, изменив формулу в Экселе следующим образом:

="['" & C2 & "']={boro='" & G2 & "',struc='" & I2 & "',lat='" & J2 & "',lon='" & K2 & "',id='" & A2 & "',n='" & L2 & "',s='" & M2 & "',a='" & N2 & "',an='" & P2 & "',as='" & Q2 & "'}, --" & F2 & " / " & H2

и заменив поле acc в таблице станций на поддержку новых полей в функции station_csv. С одной стороны, подход станет корректнее. С другой стороны, некоторые функции модуля станут забирать больше ресурсов, а каждое изменение будет требовать полного импорта файла.

Словари[править код]

routes[править код]

Указатель на Пенсильванском вокзале. Стрелки показывают выход к двум станциям метро, не соединённым между собой пересадкой: 34-я улица — Пенсильванский вокзал (слева) и 34-я улица — Пенсильванский вокзал (справа). Названия станций одинаковые, на указателе они не написаны, а обозначены только маршруты поездов: ACE и 123

Просто список всех маршрутов. Поля:

  • id (оно же индекс элемента таблицы) — обозначение маршрута, используемое в других таблицах;
  • bkg — код цвета фона для строки в списке станций (только для станций, обслуживаемых маршрутами одного цвета; похож на код цвета маршрута, но бледнее);
  • color — код цвета маршрута;
  • label — обозначение маршрута, используемое в имени файла, изображающего буллет маршрута (по умолчанию берётся из id);
  • link — название статьи про маршрут (по умолчанию строится на основе id);
  • name — название маршрута, используемое в текстовой ссылке на статью (по умолчанию берётся из id);
  • tooltip — всплывающая подсказка для буллета (по умолчанию берётся из id);
  • descr — полное название маршрута (экспресс/локальный такой-то линии);
  • onedir — логическое поле[2], обозначающее, что маршрут идёт только в одну сторону;
  • shuttle — логическое поле[2], обозначающее, что маршрут является челночным (причём всегда, а не только по ночам);
  • future — логическое поле[2], обозначающее, что маршрут проектируется;
  • schedule — ссылка на расписание маршрута на сайте MTA (часть ссылки, одинаковая для всех маршрутов, не приводится);
  • second — маршрут, являющийся дополнением данного маршрута (только для челнока Леффертс-бульвара).

icons[править код]

Названия графических файлов и текст для отображения комбинации периодов времени для каждого маршрута. Поля:

  • индекс элемента таблицы — комбинация периодов времени (см. выше про таблицу routes_periods и ниже про функцию howstops), для которой подбирается графический файл;
  • icon — часть имени файла (остальная часть у всех файлов достраивается одинаково);
  • tooltip — всплывающая подсказка (объединяется программой с подсказкой для маршрута из предыдущей таблицы);
  • ignore — логическое поле[2], надо ли игнорировать данную комбинацию периодов времени, когда задан формат без периодов времени (и тогда маршруты, обслуживающие станцию в наименее значительные периоды времени, просто не показываются);
  • comma — логическое поле[2], надо ли ставить запятую после этого текста перед «и» (например, если в нём есть слово «кроме» и запятая перед ним);
  • alltimes — логическое поле[2], засчитывается ли данная комбинация как круглосуточная;
  • num — номер по порядку для использования в списке условных обозначений (только в записях, используемых в этом списке);
  • legend — текст для списка условных обозначений (отсутствие поля обозначает, что текст надо брать из поля tooltip).

Если для какой-то комбинации периодов времени в этой таблице отсутствует запись, то все статьи, в которых эта недостающая запись потребовалась, заносятся в Категория:Статьи с незаданным описанием комбинации времён в модуле NYCS DB, а в самих статьях информация, которая должна браться из этой таблицы, заменяется на само обозначение комбинации периодов времени, которое не нашлось в таблице. Если в этой категории окажутся статьи, надо в найти в них это обозначение и дополнить таблицу.

subperiods[править код]

Поперечное сечение 4-путного тоннеля. Чертёж 1904 года

Возможные сочетания периодов времени и способов обслуживания станции поездом. Поля:

  • period — период, как в таблице routes_periods;
  • subperiod — аналог поля dir из той же таблицы, но не для сегмента, а для станции.

Возможные значения для поля subperiod:

  • peak — в пиковом направлении;
  • not peak — в направлении, обратном пиковому;
  • some peak — в пиковом направлении, только иногда;
  • пустая строка — в обоих направлениях;
  • 1 и 2 — ограничения по времени, как в таблице.

lines[править код]

Информация по тем линиям, по которым она нужна. Поля:

  • индекс элемента таблицы — название статьи, но с маленькой буквы (потому что именно так они написаны в названиях статей о станциях);
  • color — код цвета для квадратика в списке линий для маршрута (квадратик рисуется только для тех линий, у которых цвет совпадает с цветом у маршрута);
  • link — ссылка на статью о соответствующей стволовой линии;
  • shuttle — логическое поле[2], обозначающее, что этот цвет соответствует челнокам.

colors[править код]

Информация по цветам, используемым для обозначения маршрутов и линий. Поля:

  • индекс элемента таблицы — код цвета;
  • text — название цвета на русском языке в творительном падеже.

alts[править код]

Вре́менные изменения в маршрутах. Каждая запись соответствует вре́менной схеме, вызванной каким-нибудь ремонтом и т. п. Поля:

  • number — номер от 1 и дальше (не обязательно подряд) в текстовом формате, используемый в поле alt (с добавлением спереди минуса или плюса) в таблицах routes_periods и station_complexes;
  • text — текст, поясняющий смысл временной схемы (с маленькой буквы и без знака препинания в конце, например: «на время ремонта такой-то линии»);
  • refname — имя ссылки для подстановки в <ref name="..."> вместо многоточия;
  • link — ссылка на источник;
  • title — заголовок для ссылки на источник.

Для добавления временной схемы надо:

  • добавить запись здесь, дав ей какой-нибудь номер, которого пока нет;
  • в таблицах routes_periods и station_complexes добавить записи, действующие только по временной схеме, с плюсом (в поле alt значение должно состоять из плюса и здешнего номера);
  • там же снабдить полем alt с минусом записи, действующие только по постоянной схеме, но не действующие по временной (в поле alt значение должно состоять из минуса и здешнего номера);
  • если изменение не сводится только к добавлению или отмене, то скопировать постоянную запись, переправить копию на временный вариант и снабдить постоянную запись полем alt с минусом, а копию полем alt с плюсом.

Для удаления временной схемы надо:

  • удалить её запись здесь (перенумеровывать остальные не нужно);
  • в таблицах routes_periods и station_complexes удалить записи с этим номером и плюсом;
  • там же удалить у оставшихся записей поле alt с этим номером и минусом.

Пример удаления временной схемы можно увидеть в истории правок модуля за 27 апреля 2020 года (там большинство временных изменений было отменено, а одна временная бесплатная пересадка превратилась в постоянную).

Если наступит момент, когда никаких временных схем нет, надо будет оставить одну запись, у которой поле number не задано (то есть nil).

Примечания к таблицам[править код]

  1. На линии Джамейка (она наиболее спорная в этом отношении) север сделан на Джамейке.
  2. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 Заполнено только если true.
  3. 1 2 В Экселе выделяем столбцы, проведя мышкой по их заголовкам, жмём Ctrl+C, в редакторе модуля стираем все строки таблицы, ставим курсор в начале строки после них, жмём Ctrl+V.

Принцип действия вкратце[править код]

Организация движения и прочее IRL[править код]

Понятие маршрута[править код]

Станция с 3 путями, средний на этой станции платформы не имеет. По боковым путям идут поезда маршрута 7, а по среднему — <7>

В обычном метрополитене (например, в Москве) поезд идёт по своей линии из конца в конец; рельсовые соединения между линиями если где-то и существуют, то не используются поездами с пассажирами (кроме редких случаев, когда надо перегнать поезд с линии на линию). В Нью-Йорке метрополитен больше похож на трамвайную сеть: маршрут поворачивает с улицы на улицу, где-то идёт вместе с другим маршрутом, а где-то нет. Поэтому есть отдельно понятие маршрута (route, service, train, см. Список маршрутов Нью-Йоркского метрополитена) и отдельно понятие линии (line, см. Список линий Нью-Йоркского метрополитена). Линия играет роль улицы, причём в большинстве случаев она и проходит по улице (над ней по эстакаде или под ней на глубине подвальных этажей домов).

На практике в АИ, предназначенных для пассажиров, имеется путаница, состоящая в том, что слово линия (line) применяется по отношению к маршрутам (пример можно видеть на фотографии с Томасом Прендергастом ниже). Однако английская Википедия, а русская вслед за ней, старается эту путаницу не копировать, потому что хотя пассажирам, возможно, не нужна информация про историю строительства линий (тех линий, которые на самом деле линии), — читателям Википедии она нужна, соответственно для читателей нужно сохранить два разных термина, не смешивающихся между собой.

Экспресс-маршруты[править код]

На многих линиях есть 4 пути, причём два из них имеют платформы на всех станциях, а два только на некоторых, и маршруты идут или по одним путям, или по другим. Первые маршруты и пути называются локальными (local), а вторые экспрессами (express). Станции называются экспресс-станциями, если на них есть остановка экспресс-маршрутов (платформа при экспресс-пути), и локальными — если нет.

Станция
Путь
Экспресс-станция Локальная станция
Экспресс-путь есть остановка нет остановки
Локальный путь есть остановка есть остановка

Как правило все пути идут в одном уровне и экспресс-путями являются два средних, хотя возможны и варианты (они оговорены в статьях о станциях, где это не так). На некоторых линиях есть 3 пути, тогда экспресс-путь один средний и он используется только в пиковом направлении (peak direction, в сторону Манхэттена утром и обратно вечером).

Другие особенности маршрутов[править код]

Помимо локальных и экспресс-маршрутов, имеются маршруты, работающие в паре по принципу скип-стоп (skip-stop), — это своего рода экспресс для бедных, поезд проходит без остановки часть станций (а другой поезд другую часть), но двигается по обычным локальным путям, потому что экспресс-путей на линии нет. На момент составления модуля этот принцип актуален для маршрутов J и Z, у которых в режиме скип-стоп при 6 или 7 пропускаемых станциях время на проход всего маршрута сокращается с 52 минут до 47[1].

На некоторых маршрутах организовано вилочное движение, когда часть поездов направляется по другой линии (например, из-за ограниченной пропускной способности конечных станций в часы пик).

Некоторые маршруты называются челночными (shuttle), однако они не обязательно ходят по одному пути в обе стороны (только у двух из них есть это свойство), но они просто короче обычных маршрутов (эмпирически замечено, что на маршрутах, называемых челночными, не более 8 станций).

Деление маршрутов на номерные и литерные соответствует двум типоразмерам вагонов (а также станций, тоннелей и т. д.) и с логикой данного модуля не связано (хотя и можно заметить, что по каждому сегменту идут маршруты или только номерные, или только литерные).

Расписание как функция времени[править код]

Председатель MTA Томас Прендергаст анонсирует ремонт на линии Канарси в 2016 году

И наконец, всё расписание движения маршрутов, со всеми поворотами и делением на локальные и экспрессы, зависит от времени суток и дня недели (time period). Есть 5 периодов времени с разным расписанием:

Часы
Дни
00:00—06:30 06:30—09:30 09:30—15:30 15:30—20:00 20:00—24:00
пн — пт ночь часы пик день (кроме
часов пик)
часы пик вечер
сб — вс выходные
(и в праздники тоже действует расписание выходного дня)

В общем случае каждый маршрут на каждом участке своей трассы в каждый период времени в каждом направлении ходит либо локальным, либо экспрессом (либо по схеме скип-стоп с указанием, на каких станциях он останавливается), что и отражено в таблице routes_periods. Линия, по которой ходит всё время один и тот же маршрут, да ещё всегда со всеми остановками, и ещё не переходит на другие линии (линия Канарси и маршрут L), — это редкость.

Живучесть системы[править код]

Общая конфигурация сети метрополитена с большим числом рельсовых соединений между линиями придаёт ей живучесть. При закрытии какого-либо участка на ремонт маршруты изменяются таким образом, чтобы обслуживать всю остальную сеть (в отличие от традиционных метрополитенов, где закрытие одного участка приводит к разрыву сети на две части). Это даёт метрополитену возможность работать круглосуточно и производить ремонт без остановки работы на ночь, закрывая движение только там, где надо, и направляя поезда в объезд. Для показа в статьях самых долгосрочных временных изменений в маршрутах есть поддержка в модуле. Одним из них на момент создания модуля был ремонт тоннеля 14-й улицы, входящего в вышеупомянутую линию Канарси, имеющую мало возможностей по перенаправлению поездов. Ремонт на линии Канарси[en] вызвал в 2016—2019 годах много дискуссий, завершившихся вмешательством губернатора штата Нью-Йорк и изменением плана таким образом, чтобы движение по линии было максимально сохранено.

Названия станций[править код]

Верхние два ряда:
Две станции с названием «36-я улица»,
через которые проходит маршрут R,
и две станции с названием «7-я авеню»,
через которые проходит маршрут B.
Расстояние между станциями в каждой паре
около 10 км
Нижний ряд:
А это одна и та же станция, но в разные годы

Названия станций повторяются многократно, потому что станции названы в честь улиц (поперечных к линии — точно как трамвайные остановки), а одна улица может пересекать несколько разных линий, на каждой из которых в этом месте есть станция (и плюс в каждом боро могут быть улицы с одинаковыми названиями). Чтобы указать на станцию однозначно, в реальной жизни принято добавлять к её названию либо боро (Манхэттен, Бруклин, Куинс, Бронкс), либо бывшую компанию, к которой станция относилась до объединения 3 частей метрополитена в 1940 году (IRT, BMT, IND), либо маршруты, останавливающиеся на ней, либо кроме поперечной ещё и продольную улицу. Способы с боро и с компанией дают однозначность только иногда. Способ с маршрутами неудобен тем, что маршруты со временем меняются, поэтому, например, не сразу можно понять, что имелось в виду под Avenue U, D Train в 1996—1997 году (станций под названием «Авеню Ю» всего три, но маршрут D сегодня не проходит ни через одну из них). Кроме того, нередка ситуация, когда маршрут останавливается на станции только ночью или только несколько раз в сутки в часы пик, и такой маршрут у такой станции иногда включают в название, а иногда нет.

После терактов 11 сентября были разрушены две станции, расположенные на разных линиях и называвшиеся «Кортландт-стрит»: одна была восстановлена относительно быстро, но затем закрывалась на реконструкцию; другая была признана не подлежащей восстановлению, тоннель был построен заново без станции, а новая станция на этом месте была открыта через 17 лет. Но на протяжении всех этих лет в разных источниках, от новостных сайтов до форумов метрофанов, появлялись формулировки типа «станция „Кортландт-стрит“ разрушена» и «когда она будет восстановлена», без всяких признаков того, что пишущий знает, что этих станций две, и даже в новостях про одну из них нередко размещались фотографии другой.

Отражение реальности в Википедии[править код]

Организация статей[править код]

Вслед за английской Википедией, статьи про станции как правило названы следующим образом: <название станции> (<название линии>), где <название линии> совпадает с названием статьи про линию (только в русской Википедии с маленькой буквы). Исключения перечислены ниже, причём если статья названа иначе, то имеется перенаправление, которое названо по тому же принципу и ведёт на соответствующий раздел статьи. Итак, исключения:

  1. Через станцию проходят пути нескольких линий — тогда статья имеет уточнение «Нью-Йоркское метро». Такие случаи перечислены в таблице multiline_stations. В таблице stations в таком случае каждая из частей станции (пути, платформы и маршруты, относящиеся к каждой линии) представлена по отдельности. Одна из этих станций (Декалб-авеню) не имеет однозначного распределения путей между линиями, поэтому для неё придумано несколько ухищрений, прокомментированных в этой документации.
  2. Станция входит в пересадочный узел (включающий несколько станций) — тогда статья описывает все станции, входящие в узел, и тоже имеет уточнение «Нью-Йоркское метро». Каждая станция имеет раздел в статье, озаглавленный «Платформа (-мы) такой-то линии». Такие случаи перечислены в таблице station_complexes. Отличие от предыдущего случая в том, что в предыдущем случае станция считается одной, несмотря на то что через неё проходят несколько линий.
  3. Линия разветвляется, на каждой из двух веток имеется станция, обе станции формально относятся к одной линии и при этом соединены пересадкой, то есть входят в пересадочный узел. В таком случае обе станции описываются в одном разделе статьи. Две пары таких станций отмечены в таблице station_complexes комментариями «две станции — один раздел статьи», и они же перечислены в таблице twins. В одной из пар названия станций разные (Чеймберс-стрит и Всемирный торговый центр) и перенаправления названы так, как указано выше, в другой паре названия станций одинаковые (Канал-стрит) и в уточнениях перенаправлений после названия линии есть дополнительные слова.
  4. Ещё один случай отмечен комментарием в таблице station_complexes: «станция с двумя линиями входит в пересадочный узел» (то есть станция одновременно обладает особенностями, названными в двух первых исключениях).

Рекомендуется по возможности пользоваться этими перенаправлениями, а не прямыми ссылками на статьи, чтобы по тексту ссылки всегда было видно, о чём идёт речь.

Условные обозначения[править код]


Для обозначения маршрутов и в источниках, и в Википедии используются цветные кружки (для некоторых поставленные на угол квадратики, diamond) с буквами или цифрами маршрутов («буллеты», bullet). Для обозначения периодов времени, в которые маршрут останавливается на определённой станции, в Википедии используются специальные значки, найденные в старых расписаниях. Коллеги из английской Википедии смогли найти такие значки не для всех сочетаний периодов времени, поэтому иногда приходится использовать один значок для разных сочетаний (можно надеяться, близких друг другу: см. в таблице icons комментарий «файлы для сочетаний времён есть только досюда»). В выпадающем списке условных обозначений описание к каждому значку сформулировано приблизительно — так, чтобы оно покрыло разные случаи использования каждого значка.

Значок маршрута и значок времён вместе выглядят вот так: 3 — круглосуточно, кроме ночи3 — круглосуточно, кроме ночи (в данном примере обозначение следует понимать так, что маршрут 3 останавливается на станции круглосуточно, кроме ночи). До создания этого модуля такие обозначения строились при помощи шаблонов (в частности, {{NYCS when}}).

Модуль[править код]

Таблица stations содержит все станции (причём для станций, указанных выше в исключении 1, даны «псевдостанции», составляющие их). Для каждой станции указано, к какому сегменту она относится с точки зрения этого модуля. Таблица routes_periods имеет ключ, состоящий из маршрута, периода времени и сегмента, и отвечает на вопрос, каким образом данный маршрут ходит по данному сегменту в данный период времени. Порядок станций внутри сегмента в первой таблице и порядок сегментов внутри сочетания маршрута и периода времени во второй таблице соответствуют реальному порядку станций на линиях и реальному порядку их обхода поездом с севера на юг.

Функция howstops возвращает комбинацию периодов времени, в которые заданный маршрут останавливается на заданной станции. Она их возвращает примерно в таком формате: rh(peak)+md+ev, где плюсами разделены собственно периоды времени (как в таблице routes_periods), а в скобках при некоторых из них даны способы обслуживания станции поездом (как в таблице subperiods). Внимание: в переменных, обозначающих способы обслуживания станции поездом, различаются пустая строка (в обоих направлениях) и nil (ни в каком направлении): для пустой строки период времени присутствует в возвращаемом значении, но без добавки в скобках (как md и ev в приведённом примере), а для nil — отсутствует.

Функция howskips (используемая реже) — аналог функции howstops, но для прохода маршрута через станцию без остановки. Функция normalize приводит результат двух предыдущих функций к стандартному виду, чтобы его можно было найти в таблице icons.

Массив arr состоит из элементов, каждый из которых имеет два поля: обозначение маршрута (как в таблице routes_periods) и комбинация периодов времени в вышеуказанном формате. Функция arr_add пополняет этот массив одним сочетанием маршрута и периода времени. Функция arr_text строит на основании этого массива викикод в том или ином формате (см. столбец «Форматирование вывода» в списке функций выше). Большинство доступных снаружи функций модуля построены как цикл, заполняющий массив функцией arr_add, и в конце форматирование массива функцией arr_text.

Массив arrarr (используемый для списка конечных станций маршрута и для списка соседних станций заданной станции) состоит из элементов, каждый из которых имеет два поля: название станции и массив arr. При построении списка соседних станций в некоторых элементах массива заполняется также логическое поле, говорящее о том, что станцию надо показать уменьшенным шрифтом (для закрытых станций и для неиспользуемых соединений).

Функция build_route — большая функция, которая строит список станций для маршрута или двух в различных форматах для разных целей.

Поддержка модуля[править код]

Основной случай, когда необходимо вносить изменения в модуль, — это изменения в маршрутах, что требует подправить таблицу routes_periods. Но кроме того:

  • Возможен случай, что на разных частях какого-либо сегмента движение поездов становится разным. Тогда надо разбить этот сегмент на два, придумать новое название для одной из частей и проапдейтить все места в модуле, где упоминается изменённый сегмент, а также все статьи о линиях, где он упоминается (а он может упоминаться не только в статье о самой линии, к которой он относится).
  • Возможен случай, что отменяется движение поездов по какому-либо участку путей (например, там, где M поворачивает с линии Шестой авеню на линию Нассо-стрит). Тогда, чтобы не потерять что-то в «соседних станциях», надо добавить этот участок в таблицу unused_connections.
  • Возможен случай, что затрагивается та часть маршрута, которая связана с развилками. Тогда надо убедиться, что в статье о маршруте правильно показывается схема, и при необходимости исправить поля shape и pattern.
  • Возможен случай, что переименовывается или добавляется станция. Тогда надо привести в соответствие статью либо перенаправление, название станции в модуле (во всех таблицах, включая поле eng в таблице stations), а также обращения к модулю в тех статьях, где данная станция упоминается как параметр при обращении к функциям модуля через шаблоны (для их нахождения можно использовать поиск, раз и два, только надо не напутать с расстановкой трёх типов палок). При переименовании статьи всегда полезно проверить «ссылки сюда» для старого названия.
  • Если будет решено изменить систему уточнений в этих статьях, то названия, использованные в этом модуле, должны сохраниться хотя бы в виде перенаправлений. В тех шаблонах, где в модуль передаётся имя статьи, берущееся по умолчанию, надо будет передавать явным образом имя перенаправления.
  • Есть некоторые места в статьях, которые не поддерживаются модулем, например столбец «Режим работы» в списке маршрутов.

Для помощи в обнаружении статей с ошибками при обращении к этому модулю созданы две категории, которые надо проверять после любого изменения:

На подстраницах модуля есть обращения к некоторым особо критичным из его функций для всех станций, пересадочных узлов, линий и маршрутов. Эти подстраницы можно использовать для предпросмотра при внесении изменений в модуль и в шаблоны, обращающиеся к нему. При желании можно на этих подстраницах менять названия функций, оставляя тот же список станций и т. д.

Примечания к принципу действия[править код]

Конец документации, начало модуля[править код]