RU:Key:opening_hours

From OpenStreetMap Wiki
Jump to navigation Jump to search
Public-images-osm logo.svg opening_hours
OpenClosed.png
Описание
Время, доступное для посещения. Изменить или перевести это описание.
Группа: Свойства
URL шаблон
https://openingh.openstreetmap.de/evaluation_tool/?EXP=$1
Используется на элементах
точки можно отмечать этим тегомлинии можно отмечать этим тегомполигоны можно отмечать этим тегомотношения можно отмечать этим тегом
Полезные сочетания
Смотри также
Статус: де-факто
Многие редакторы предлагают специальный интерфейс, позволяющий упростить редактирование этих данных, здесь задание в StreetComplete с редактированием данных о часах работы

Ключ opening_hours=* даёт возможность указать время работы практически всему, что имеет так называемые часы работы. Под временем работы понимается время обслуживания, доступности для клиентов. Супермаркеты и магазины открываются и закрываются в разное время в разных странах (а иногда даже в одном городе). В больших городах многие небольшие магазины могут работать круглосуточно. Аптеки, заправки, пивные и рестораны быстрого питания тоже часто работают в режиме 24/7 (без перерывов и выходных). Информация о часах работы может оказаться очень полезной если вы ищете какие-либо типы объектов вечером или ночью.

Данный ключ не предназначен для обозначения условий ограничения доступа (проезда) по времени. Для обозначения таких ограничений используйте Conditional restrictions

Для этих данных существует особый стандартный формат.

Вы можете пометить URL-адрес, по которому можно посмотреть текущие часы работы, добавив тег opening_hours:url=https://example.org/.

Синтаксис довольно сложный, но он позволяет вводить даже очень сложные правила часов работы. Для большинства картографов использование специальных инструментов, таких как плагин OpeningHoursEditor plugin в JOSM (может быть добавлено в меню плагина в настройках), встроенный специальный редактор в Vespucci, Go Map!!, OsmAnd или выполняя задания на часы работы в StreetComplete. Это будет лучше, чем попытка редактировать значения тегов напрямую.

Формальную спецификацию можно найти здесь: opening_hours/specification

Proposed features/Time domains — исторический документ, в котором есть дополнительная информация об этом ключе.

Простые примеры

Открыт по дням недели

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

Вы должны использовать общепринятые английские сокращения дней, как в этой таблице:

Аббревиатура День недели
Mo Понедельник
Tu Вторник
We Среда
Th Четверг
Fr Пятница
Sa Суббота
Su Воскресенье

Несколько интервалов открытия

opening_hours=Mo-Fr 08:00-12:00,13:00-17:30
То же, что и выше, но закрыто с 12:00 до 13:00

Добавьте два временных интервала, в которых они открыты, через запятую и без пробела (,).

Несколько дней с одним и тем же периодом времени

opening_hours=Mo,We 08:00-12:00
Открыт по понедельникам и средам с 08:00 до 12:00

Добавьте дни недели через запятую и без пробела (,).

Несколько дней с разными периодами времени

opening_hours=Mo-Fr 08:00-12:00,13:00-17:30; Sa 08:00-12:00
так же, как указано выше, также открыто в субботу утром

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

Закрыто по праздникам

opening_hours=Mo-Fr 08:00-12:00,13:00-17:30; Sa 08:00-12:00; PH off
То же, что и выше, но явно обозначено, что закрыто в праздничные дни
  • Используйте PH как будто это был будний день. Вместо временного диапазона используйте off чтобы сказать, что они закрыты весь день.
  • Используйте SH на школьные каникулы. Хотя это редко встречается, вы также можете использовать оба варианта (PH и SH) на одном объекте, например, opening_hours=Mo-Fr 08:00-12:00,13:00-17:30; Sa 08:00-12:00; PH off; SH off

Разные часы по праздникам

opening_hours=Mo-Fr 08:00-12:00,13:00-17:30; Sa 08:00-12:00; PH 09:00-12:00
В праздничные дни они открыты с 09:00 до 12:00.
  • Как и в примере выше, PH записывается как и день недели. Поскольку он находится в приоритете по отношению к остальным правилам, он их "переписывает". Для получения дополнительной информации о том, какие правила имеют приоритет, смотрите более подробное руководство.

Exclamation.svg Обратите внимание, что если организация открыта в определённые дни недели независимо от того, являются ли они праздничными или нет, добавлять PH не нужно.

  • Если в некоторые дни во время школьных каникул время работы объекта отличается, то можно использовать SH в качестве префикса для дней недели: opening_hours=Mo-Fr 08:00-12:00,13:00-17:30; Sa 08:00-12:00; SH Mo-Sa 09:00-12:00 (в этом примере объект открыт с понедельника по субботу с 9:00 до 12:00 во время школьных каникул, часы работы вне школьных каникул отличаются).

Закрытие после полуночи

В некоторых случаях заведения закрываются после полуночи. Такой случай немного сложно пометить. Например, место, которое открывается в понедельник в 20:00 и закрывается после полуночи в 2:00, можно обозначить следующим образом — все они действительны согласно спецификации:

opening_hours=Mo 20:00-26:00
открывается в понедельник в 20:00, закрывается в 2:00 — с использованием расширенного синтаксиса часов
opening_hours=Mo 20:00-02:00
открывается в понедельник в 20:00, закрывается в 2:00 — используя расширенное продление часов

Примечание: это может привести к предупреждению в некоторых чрезмерно строгих инструментах редактирования.

opening_hours=Mo 20:00-24:00, Tu 00:00-02:00
открывается в понедельник в 20:00, закрывается в 2:00 — с выделением фрагмента вторника отдельно

Внимание:

opening_hours=Mo 20:00-26:00; Tu 20:00-24:00
открывается в понедельник и вторник в 20:00, закрывается в полночь(!)

Из-за определения того, что следующие правила перезаписывают предыдущие, правило вторника перезаписывает блок вторника, открытый с 0:00 до 2:00 часов. Обязательно используйте запятую вместо точки с запятой, чтобы расширить правило!

Исключение в зависимости от месяца

Напомним, что следующие правила перезапишут предыдущие.

Чтобы обозначить n-й день недели каждого месяца:

opening_hours=Mo 08:00-16:00; Mo[2] 08:00-12:00
Открыт по понедельникам с 8:00 до 16:00, а во второй понедельник каждого месяца открыт с 8:00 до 12:00.

Чтобы обозначить n-й последний день недели каждого месяца:

opening_hours=Mo 08:00-16:00; Mo[-2] 08:00-12:00
Открыт по понедельникам с 8:00 до 16:00, а в предпоследний понедельник каждого месяца открыт с 8:00 до 12:00.

Чтобы обозначить целый месяц:

opening_hours=Mo 08:00-16:00; Dec off
Открыт по понедельникам с 8:00 до 16:00, но закрыт в декабре.

Месяц пишется с использованием первых трёх букв его английского названия (Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec)

Чтобы обозначить день месяца:

opening_hours=Mo-Fr 08:00-16:00; Dec 12 off
Открыт с понедельника по пятницу с 8:00 до 16:00, закрыт 12 декабря.

Месяцы можно совмещать с будними днями.

opening_hours=Mo 08:00-16:00; Dec Mo 08:00-12:00
Открыт по понедельникам с 8:00 до 16:00, а в декабре открыт по понедельникам с 8:00 до 12:00.

Месяцы также можно сочетать или использовать промежутки месяцев, как дни недели.

opening_hours=Mo 08:00-16:00; Jan-Mar Mo 08:00-12:00
Открыт по понедельникам с 8:00 до 16:00, а с января по март открыт по понедельникам с 8:00 до 12:00.

Совместное использование

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

… и другие

Значения тега

  • Перед тем как применить тег к линии линия изучите тег access.

Анализатор (evaluation tool) и YoHours — это веб-инструменты, которые помогают определить значения для тега. Пожалуйста, используйте английский для названий дней недели и месяцев.

Примеры

  • 24/7
    Применяется к объектам, работающим круглосуточно, 7 дней в неделю, 24 часа в сутки.
    Обозначение на карте: иконка соответствующего объекта с изображением числа 24.
  • Sa-Su 00:00-24:00
    Применяется к объектам, круглосуточно работающим в выходные.
  • Mo-Fr 08:30-20:00
    Применяется к объектам, работающим в рабочие дни с 8:30 до 20:00.
  • Mo-Fr 10:00-12:00,12:30-15:00
    Применяется к объектам, работающим в рабочие дни с 10:00 до 15:00 и имеющие обеденный перерыв с 12:00 до 12:30.
  • Mo 10:00-12:00,12:30-15:00; Tu-Fr 08:00-12:00,12:30-15:00; Sa 08:00-12:00
  • Mo-Su 08:00-18:00; Apr 10-15 off; Jun 08:00-14:00; Aug off; Dec 25 off
    Более сложный режим работы, включая разное время работы в зависимости от недели или месяца.
    Применяется к любым объектам с установленным режимом работы.
    Обозначение на карте: иконка соответствующего объекта, возможно с соответствующей подписью.
  • Mo-Sa 10:00-20:00; Tu off или Mo-Sa 10:00-20:00; Tu 10:00-14:00
    Такой способ применяется чтобы из общего диапазона исключить, например, день недели.
    Применяется к любым объектам с установленным режимом работы.
    Обозначение на карте: иконка соответствующего объекта, возможно с соответствующей подписью.
  • Mo-Sa 10:00-20:00; We[-1] off "санитарный день"
    Применяется к объектам, работающим с 10 до 20, кроме воскресенья, последняя среда месяца — санитарный день.
  • sunrise-sunset
    Применяется к объектам, работающим каждый день между восходом и заходом солнца.
  • (sunrise+02:00)-(sunset-02:00)
    Используйте круглые скобки, чтобы добавить временной сдвиг.
    Например: парк, который открывается через 2 часа после восхода солнца и закрывается за 2 часа до захода солнца
  • Su 10:00+
    Воскресенье с 10:00 до неизвестного или неуказанного времени закрытия.
    Применяется к: любым объектам с графиком работы (связанные теги)
    Обозначение на карте: ничего, информация анализируется программным обеспечением
  • Apr-Oct: Fr-Su 10:00-18:00
    Открыто с 10:00 до 18:00 с пятницы по воскресенье, но только с апреля по октябрь.
  • week 1-53/2 Fr 09:00-12:00; week 2-52/2 We 09:00-12:00
    Открыто с 09:00 до 12:00 по пятницам нечётных недель и средам чётных недель.
    Применяется к: любым объектам с графиком работы (связанные теги)
    Обозначение на карте: ничего, информация анализируется программным обеспечением
  • Mo-Sa 08:00-13:00,14:00-17:00 || "by appointment"
    Здесь пригодится fallback rule. Это применимо в любом месте, которое не регулировалось предыдущими правилами.
  • Su-Tu 11:00-01:00, We-Th 11:00-03:00, Fr 11:00-06:00, Sa 11:00-07:00
    Из-за определения, что следующие правила будут перезаписывать предыдущие один раз, период времени после полуночи должен использовать дополнительные правила, которые разделяются запятой вместо точки с запятой.
  • Mo-Su,PH 15:00-03:00; easter -2 days off
    Каждый день, даже в праздничные дни, открыт, но закрыт в Страстну́ю пятницу.
  • Dec 11-Dec 17: Su 10:00-17:00
    Открыт в 3-й  Адвент (который не может состояться до 11-го или после 17-го декабря) с 10:00 до 17:00.

Дополнительные примеры смотрите в evaluation tool и документацию по opening_hours.js.

Синтаксис

  • wd день недели, возможные значения: Mo · Tu · We · Th · Fr · Sa · Su (например Fr 08:30-20:00 (например, Fr 08:30-20:00)
  • hh часы, всегда двузначное число в 24-часовом формате, в виде "hh:mm" · (например, Fr 08:30-20:00)
  • mm минуты, всегда двузначное число, в виде "hh:mm" (например, Fr 08:30-20:00)
  • mo месяц, возможные значения: Jan · Feb · Mar · Apr · May · Jun · Jul · Aug · Sep · Oct · Nov · Dec · "mo md" (например, Dec 25)
  • md день месяца, всегда двузначное число, в виде "mo md" (например, Dec 25)
  • Общий синтаксис: wd hh:mm-hh:mm (например, Fr 08:30-20:00)
  • Общий синтаксис: mo md hh:mm-hh:mm (например, Dec 25 08:30-20:00)

Правила

  • Диапазон часов включительно (всегда час открытия и час закрытия) разделены дефисом "-" · (например, 08:30-20:00)
  • Диапазон дней недели включительно, разделены дефисом "-" · (например, Mo-Fr)
  • Диапазон дней месяца включительно, разделены дефисом "-" · (например, Dec 20-26) или (например, Dec 20-Jan 06)
  • Исчерпывающий список дней, значения разделены запятой "," · (например, Mo,We,Fr)
  • Часы от минут разделены двоеточием ":" · (например, 08:30)
  • Список диапазонов часов, значения разделены запятой "," · (например, 8:30-14:00,16:30-20:00)
  • Разные диапазоны часов в разные дни разделяются точкой с запятой ";" (например, Mo 10:00-12:00,12:30-15:00; Tu-Fr 08:00-12:00,12:30-15:00; Sa 08:00-12:00)
подразумевается: "эти часы работы в этот день ; эти часы работы в этот день"
  • Исключаемые дни и диапазоны отмечаются словом "off", следующим за соответствующим днём или диапазоном
    • день недели: "wd off" (например, Tu off)
    • диапазон дней недели: "wd-wd off" (например, Tu-Th off)
    • месяц: "mo off" (например, Aug off)
    • диапазон месяцев "mo-mo off" (например, Aug-Sep off)
    • день месяца: "mo md off" (например, Dec 25 off)
    • диапазон дней месяца: "mo md-md off" (например, Dec 24-26 off) или "mo md — mo md off" (например, Dec 25-Jan 06 off)
  • Для исключения дней из диапазона дней с указанными часами работы сначала указывается диапазон дней с часами работы, а потом исключаемые дни: (например, Mo-Sa 10:00-20:00; Tu off ) или (например, Mo-Sa 10:00-20:00; Tu 10:00-14:00) (имеется в виду, что это не дополнительные дни, а дни, в которые часы работы отличаются от обычных, например Mo-Fr 08:00-12:30; We 14:00-17:00 означает что в среду магазин работает только во второй половине дня, а не дополнительно к первой половине)
  • Если необычные дни приходятся на начало или конец диапазона, не используйте правила исключения, а используйте обычные правила дополнения (например, Mo-Fr 10:00-20:00; Sa 10:00-14:00)


  • Если режим работы круглосуточный в определённые дни, используйте особый диапазон: 00:00-24:00
  • Если режим работы круглосуточный без выходных, используйте особое значение: 24/7
в этом случае рендерер может отобразить дополнительную иконку.

Синтаксис

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

Вы можете проверить своё составление с помощью инструмента для оценки evaluation tool или более простого приложения YoHours.

Легенда
code либо написан буквально как таковой (включая буквальный разделитель — пробел там, где это необходимо; в других местах синтаксиса пробелы используются только для его представления);
элемент должен быть заменён элементом, синтаксис которого определён в строке, начинающейся с элемент: ниже;
item… означает, что элемент можно повторять по мере необходимости.
[ последовательность элементов ] означает,  что последовательность элементов не является обязательной;
| указывает, что необходимо выбрать одну из последовательностей элементов (разделенных этим символом);
Общий синтаксис
opening_hours= наборы_правил [ ; наборы_правил ]…
Каждый набор правил оценивается по порядку, следующий набор правил, возможно, переопределяет начальное открытое или закрытое состояние, которое могло быть найдено в предыдущих наборах правил.
наборы_правил: правило [ || оправил ]…
Каждое правило обрабатывается по порядку до тех пор, пока оно не будет соответствовать указанным датам или времени, в противном случае следующее правило в наборе правил будет проверяться только в качестве запасного варианта.
правило: диапазон [ статус ] [ комментарий ]
диапазон: [ годы ] даты [   промежуток_времени ] | промежуток_времени | 24/7
Синтаксис для указания дополнительных лет
годы: диапазон_года [ , диапазон_года ]…
диапазон_года: год [ - год | + ] [ / n ]
Необязательный период в n лет может быть указан для лет, которые будут включены в указанный диапазон, начиная с первого указанного года.
год: четырёхзначное число года по григорианскому календарю.
Синтаксис для указания дат (с необязательным временем)
даты: ежемесячно | еженедельно | ежедневно | переменно | каникулы
ежемесячно: дни_месяца [   дни_недели ]
еженедельно: [ неделя   диапазон_недель [ , диапазон_недель ]…   ] диапазон_дней_недели [ , диапазон_дней_недели ]…
ежедневно: месяцы [   дни_месяца [ , дни_месяца ]… ]
переменно: изменяемая_дата [ - изменяемая_дата ]
месяцы: Mth [ -Mth ]
дни_месяца: dd [ -dd ]
диапазон_недель: ww [ - ww | + ] [ / n ]
Необязательный период в n недель может быть указан для недель, которые будут включены в указанный диапазон, начиная с первого указанного номера недели ww.
дни_недели: диапазон_дней_недели [ , диапазон_дней_недели ]… | Wd[ n [ , n ]… ]
Дни недели могут сопровождаться порядковыми номерами, считаться положительно с начала месяца или отрицательно с конца месяца:
Например Mo-Fr 08:00-09:00, or Mo[1,3] 08:00-09:00;
Например Su[1] означает первое воскресенье месяца, а Su[-1] означает последнее воскресенье месяца.
диапазон_дней_недели: Wd [ - Wd ]
ww: 2-значный номер недели (год по ISO) в диапазоне 01-53, например week 25 Mo 08:30-20:00
dd: 2-значный номер дня месяца в диапазоне 01-31, например Dec 25
Mth: Jan | Feb | Mar | Apr | May | Jun | Jul | Aug | Sep | Oct | Nov | Dec
Сокращенное трехбуквенное название месяца на английском языке, например Dec 25
Wd: Mo | Tu | We | Th | Fr | Sa | Su
Сокращенное название дня недели на английском языке, состоящее из двух букв, например Fr 08:30-20:00
ежегодный фестиваль: easter
На данный момент единственным переменным документированным ежегодным праздничным днем является Пасха (при условии, что это христианский григорианский календарь).
переменная дата: ежегодный фестиваль [ знак n days ], например easter -2 days 08:00-17:00 для указания часов работы в Страстну́ю пятницу, или easter +49 days 08:00-17:00 для часов работы на  День Святой Троицы.
holidays: PH | SH
Государственный праздник (зависит от местоположения, требуются данные по стране/региону); scholar holiday (location dependent, requires data per scholar academy).
Синтаксис для указания времени
промежуток_времени: диапазон_времени [ , диапазон_времени ]…
диапазон_времени: время [ - время | + ]
Это может использоваться вместо слов «допоздна» или «до последнего покупателя», например12:00+.
время: точное_время | переменное_время
точное_время: HH : mm
переменное_время: событие | ( событие время_смещения )
событие: dawn | sunrise | sunset | dusk
Обратите внимание, что время заката и восхода солнца требует геолокации для вычисления положения углового возвышения солнца и углового возвышения наблюдаемого горизонта (которое также зависит от высоты). Они могут быть аппроксимированы на уровне моря на моделирующем геоиде или просто приблизительно рассчитаны по местному времени (для страны и часового пояса).
время_смещения: знак hh : mm
hh: Относительное 2-значное число часов в диапазоне 00-48, например (sunrise+01:00)-12:00.
HH: Абсолютное 2-значное число часов (в день, в 24-часовом формате, без утра / вечера) в диапазоне 00-23, например Fr 08:30-20:00.
mm: 2-значное число минут (в часах) в диапазоне 00-59, например Fr 08:30-20:00.
Другие общие синтаксические элементы, используемые для настройки даты и времени
знак: + | -
n: Положительное целое число.
Синтаксис необязательных модификаторов
статус: unknown | open | closed | off
unknown: начальное открытое или закрытое состояние, за исключением последующих дат и времени отмены (также может использоваться для отмены предыдущего явного открытого или закрытого состояния);
open: открываться в указанные даты и время (или постоянно, если время не указано), за исключением следующих дат и времени;
closed или off: закрыты в указанные даты и время (или постоянно, если время не указано), за исключением следующих дат и времени;
В каждом правиле первого набора правил значения тега (включая резервные), если статус явно не указан в указанном диапазоне, предполагается, что он подразумевается как open, оставляя все другие неопределенные даты и время как unknown; итоговое расписание затем последовательно модифицируется каждым последующим набором_правил.
комментарий: "текст"
Короткий комментарий (заключённый в кавычки ", но не содержащий внутри текста других кавычек ") показывающий применимые ограничения или спецификации, например "только дети", "ограниченное обслуживание", или "бронирование по телефону", reservation=*.
Этот комментарий предназначен для отображения в приложениях, а не для автоматической интерпретации. Язык, используемый в этом комментарии, не определяется самим значением тега, но он может быть указан (для целей локализации) тегами, ключ которых содержит суффикс кода языка.

Синтаксис

  • wd день_недели, возможные значения: Mo · Tu · We · Th · Fr · Sa · Su (например Fr 08:30-20:00)
  • hh час, всегда двухзначный номер в 24-часовом формате (без am/pm), в формате "hh:mm" · (например Fr 08:30-20:00)
  • mm минута, всегда двухзначное число в формате "hh:mm" (например Fr 08:30-20:00)
  • mo месяц, возможные значения: Jan · Feb · Mar · Apr · May · Jun · Jul · Aug · Sep · Oct · Nov · Dec · "mo md" (например Dec 25)
  • md день месяца, всегда двухзначное число в формате · "mo md" (например Dec 25)
  • we номер недели, всегда двузначное число в диапазоне 01-53, в формате "week we" (например week 25 Mo 08:30-20:00)
  • SH Школьные каникулы, может использоваться для обозначения разных часов работы во время школьных каникул (например Mo-Fr 08:00-09:00,14:00-15:00; SH off)[1]
  • PH Государственный выходной (праздник), может использоваться для обозначения разных часов работы в праздничные дни. (например Mo-Fr 09:00-17:00; PH 10:00-12:00; PH Su off)[1]
Приведенный выше пример означает, что обычные часы работы — с понедельника по пятницу с 9:00 до 17:00, кроме государственных выходных с 10:00 до 12:00, кроме государственных праздников, приходящихся на воскресенье.

Общий синтаксис значения может быть:

  • hh:mm-hh:mm (например 08:30-20:00).
  • wd hh:mm-hh:mm (например Fr 08:30-20:00).
  • mo md: hh:mm-hh:mm (например Dec 25: 08:30-20:00).
  • mo-mo: wd hh:mm-hh:mm (например Jun-Aug: Su 10:30-16:00 для указания времени работы по воскресеньям в июне, июле и августе).
  • week we: wd hh:mm-hh:mm (например week 25: Mo 08:30-20:00).

Exclamation.svg Обратите внимание, что двоеточие не является обязательным, как указано в разделе opening_hours/specification.

Правила

  • Последовательные часы [всегда нужно указать время открытия-закрытия] разделённых дефисом "-" · (например 08:30-20:00)
  • Рабочие дни подряд открываются разделённые "-" · (например Mo-Fr)
  • Последовательные дни месяца, разделённые "-" · (например Dec 20-26) or (например Dec 20-Jan 06)
  • Открыто с периодичностью "n" в пределах диапазона последовательных дней месяца, за диапазоном следует "/n" (например 02-30/n)
  • Номера недель, разделённые "-" · (например week 01-26)
  • Открыто с периодичностью "n" в течение нескольких недель подряд, за диапазоном следует "/n" (например week 02-52/n)
  • Несколько дней недели, разделённых "," · (например Mo,We,Fr)
  • Несколько диапазонов времени, разделённых "," · (например 08:30-14:00,16:30-20:00)
  • Разные часы в разные дни разделены ";" (например Mo 10:00-12:00,12:30-15:00; Tu-Fr 08:00-12:00,12:30-15:00; Sa 08:00-12:00)
читается как: часы работы в эти дни; часы работы в эти дни
  • Выходной вторник день будет отмечен как (например Tu off)
  • Диапазон выходных дней недели будет отмечен как "wd-wd off" (например Tu-Th off)
  • Нерабочий месяц будет отмечен как "mo off" (например Aug off)
  • Диапазон нерабочих месяцев будет отмечен как "mo-mo off" (например Aug-Sep off)
  • Выходной день месяца будет отмечен как "mo md off" (например Dec 25 off)
  • Диапазон выходных дней месяца будет отмечен как "mo md-md off" (например Dec 24-26 off) или "mo md - mo md off" (например Dec 25-Jan 06 off)
  • Исключения для диапазона дней: сначала диапазон, затем исключение (например Mo-Sa 10:00-20:00; Tu off) или (например Mo-Sa 10:00-20:00; Tu 10:00-14:00) или (например Mo-Fr 08:00-12:30; We 14:00-17:00)
Это означает, что это не дополнения, например, например Mo-Fr 08:00-12:30; We 14:00-17:00 означает, что по средам магазин открыт только во второй половине дня, а не дополнительно.
  • Если это первый или последний день диапазона, не используйте правило исключения, используйте обычное (например Mo-Fr 10:00-20:00; Sa 10:00-14:00)
  • Дни недели, не идущие подряд или не следующие друг за другом, будут помечены как wd[x] (например Su[3] 09:00-12:00)
    • Эта строка используется для обозначения третьего воскресенья месяца с 9:00 до 12:00.
    • Напишите -1, чтобы указать последний день месяца, например Aug Th[-1] означает последний четверг августа.
    • Можно использовать группировку, например Su[1,3,5] и Su[1-3]
  • Если часы работы заведения открыты весь день в определённые дни, то указывайте, например 00:00-24:00
  • Если это 24 часа 7 дней в неделю, то в этой случае есть конкретное значение: 24/7.
    • Такое значение тега может отображать определенный значок в некоторых картах.
  • Специальное значение времени для обозначения времени восхода солнца: sunrise.
  • Специальное значение времени для обозначения времени заката солнца: sunset.
  • Плюс + после времени означает "от" или "открытое конечное время" (например Sa 22:00+ or Sa 18:00-22:00+)

Смотрите спецификацию для дополнительной информации.

Распространённые ошибки

Неправильно стоп Правильно галочка Примечание информационное предупреждение
7/8-23 Mo-Su 08:00-23:00
0600-1800 06:00-18:00
07;00-2;00pm 07:00-14:00
08.00-16.00, public room till 03.00 a.m 08:00-16:00 open, 16:00-03:00 open "public room"
09:00-21:00 TEL/072(360)3200 09:00-21:00 "call us" Добавьте тег contact:phone=*
10:00 - 13:30 / 17:00 - 20:30 10:00-13:30,17:00-20:30
April-September; Mo-Fr 09:00-13:00, 14:00-18:00, Sa 10:00-13:00 Apr-Sep: Mo-Fr 09:00-13:00,14:00-18:00; Apr-Sep: Sa 10:00-13:00
Dining in: 6am to 11pm; Drive thru: 24/7 06:00-23:00 open "Dining in" || 00:00-24:00 open "Drive-through"
MWThF: 1200-1800; SaSu: 1200-1700 Mo,We,Th,Fr 12:00-18:00; Sa-Su 12:00-17:00
BAR: Su-Mo 18:00-02:00; Tu-Th 18:00-03:00; Fr-Sa 18:00-04:00; CLUB: Tu-Th 20:00-03:00; Fr-Sa 20:00-04:00 Tu-Th 20:00-03:00 open "Club and bar"; Fr-Sa 20:00-04:00 open "Club and bar" || Su-Mo 18:00-02:00 open "bar" || Tu-Th 18:00-03:00 open "bar" || Fr-Sa 18:00-04:00 open "bar"
Su-Th 11:00-03:00; Fr-Sa 11:00-05:00 Su-Th 11:00-03:00, Fr-Sa 11:00-05:00 Смотрите последний пример
Mo-We 17:00-01:00; Th,Fr 15:00-01:00; PH,Sa,Su off Mo-We 17:00-01:00, Th,Fr 15:00-01:00; PH off Используйте дополнительные правила. Вы не можете написать "Sa,Su off", потому что в этом случае время "Sa 00:00-01:00" будет закрыто.

Негрегорианские календари

Было некоторое обсуждение того, как отображать не григорианские календари. (“Opening hours syntax for non Gregorian calendar”. 17 Мая 2019. ).

Реализация

JavaScript

Реализация на JavaScript от пользователя Ypid:

Java

  • OpeningHoursParser — библиотека парсера
  • OpeningHoursEvaluator — определитель часов чаботы на основе предыдущего парсера
  • OpeningHoursFragment — библиотека редактора часов чаботы на Android
  • opening-hours-evaluator — библиотека для проверки opening_hours, открыты ли POI в определённое время (использует OpeningHoursParser для анализа)

PHP

Python

C++/Qt

  • KOpeningHours Анализ и оценка (статус в определенное время, итерация по интервалам)

Rust

OsmAnd

OsmAnd 2.0 показывает, является ли POI открытым или закрытым на основе тегов opening_hours. Например, магазин велосипедов Re-CYCLE был закрыт, когда был сделан снимок экрана; однако различные пункты проката велосипедов открыты.

OsmAnd использует этот тег на экране поиска POI. Реализация только частичная, в настоящее время не поддерживаются даты, номера недель или праздники, но большинство значений должны быть проанализированы.

Часы работы для Ulm, Neu-Ulm и окрестностей

Ulm, Neu-Ulm и окрестности.

Веб-приложение доступно на сайте ulm-oeffnungszeiten.creal.de. График работы местности отображается на карте. Исходный код этого приложения под свободной лицензией и доступен через GitHub. Адаптировать приложение к другому городу очень просто и описано на странице GitHub.

Больше карт и приложений

Программирование

Рендеринг

Пока только в случае обозначения opening_hours=24/7 рендерер может отобразить число 24 на иконке объекта.

Pharmacy dispencing 24.png

Ранее использующиеся теги, теперь устарели

Следующие (недокументированные) ключи устарели и их следует заменить на opening_hours=*. Их значение должно интерпретироваться для установки значения нового ключа, как описано выше:

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

Смотрите также Conditional restrictions.

Остальные значения не имеют очевидной визуализации и могут быть показаны навигационными программами или через контекстное меню или каким-либо ещё подобным способом.

Программы

  • PHP-код для вычисления статуса объекта (открыт/закрыт) по времени и указанному диапазону
  • javascript библиотека для вычисления как статуса объекта в любое время, так и времени его следующего изменения
  • Онлайн визуальное отображение времени

Примечания и распространённые ошибки

Примеры сложных случаев и ошибок смотрите в примерах выше.

Не используйте ключевое слово call us (предназначенное для обозначения того, что время работы можно узнать, позвонив им) для обозначения того, что требуется предварительное резервирование мест, запись на прием и другие действия, которые прямо не связаны с временем работы. Используйте для этого reservation=*.

Теги, используемые в сочетании

  • check_date:opening_hours=* — дата последней проверки часов работы
  • source:opening_hours=* — источник информации (часы работы)
  • opening_hours:url=* — URL‑адрес, по которому текущие часы работы объекта можно посмотреть в интернете
  • website:*=* — пространство имён для различных интернет‑сайтов

Похожие теги

  • opening_hours:*=* — пространство имён для различных временных периодов:
    • opening_hours:atm — время, когда банкомат внутри места размещения можно использовать
    • opening_hours:covid19 — часы работы во время пандемии коронавируса
    • opening_hours:drive_through — часы работы обслуживания в машине в ресторане быстрого питания, банке или другом заведении открыт
    • opening_hours:kitchen — время, когда кухня открыта и питание можно заказать (например, в ресторане или пабе)
    • opening_hours:lifeguard — время, когда спасатель обеспечивает безопасность места у воды (если часы работы отличаются от основных)
    • opening_hours:office — часы работы офиса, если отличается от основного времени работы
    • opening_hours:pharmacy — часы работы аптеки, если отличается от основного времени работы
    • opening_hours:reception — часы работы ресепшна (стойки регистрации)
    • opening_hours:store — часы работы магазина, если отличается от основного времени работы
    • opening_hours:workshop — часы работы мастерской при магазине
    • opening_hours:signed=no — часы работы не указаны на табличке, видимой снаружи
  • access — ограничения по времени
  • lit — искусственное освещение
  • smoking_hours — время, когда курение разрешается в помещении
  • lunch — время, когда массовый приготовленный регулярный ежедневный обед предлагается со скидкой
  • Если место закрыто навсегда, то удаляйте такой объект, если он полностью закрыт без риска повторного обозначения на карте. Если что‑то осталось, вы можете использовать тег с префиксом жизненного цикла, например disused:*=* или abandoned:*=*.

Смотрите также

Ссылки

  1. 1.0 1.1 Праздники по умолчанию можно добавить в opening_hours.js. Существует альтернативная система для значений по умолчанию, которая в настоящее время не анализируется opening_hours.js: Default это предложение для системы значений по умолчанию. Это предложение может устанавливать значения по умолчанию, такие как максимальная скорость для территорий (стран, областей и так далее), А также периоды праздников. Страна, зона может получить значения по умолчанию, такие как определения праздников.