XML файл для импорта событий

Материал из Map.BY
Перейти к: навигация, поиск

Для импорта событий на карту map.by Вы можете воспользоваться функцией XML импорта данных. Для этого Вам необходимо подготовить и разместить у себя на хостинге файл XML в соответствии со спецификацией с описанием данных о событии, и внести его в нашу систему "XML Актуализатор".

Спецификация XML файла

Узел Описание Аттрибуты
events Родительский узел для описания списка событий
  • version - указывает версию используемого протокола. На данный момент актуальная версия 1.0
event информация о событии
  • type - информация о типе события. Возможны следующие варианты:
    • onetime - Событие, не повторяющееся в будущем.
    • recurent - Повторяющееся по определенным правилам событие
    • multidate - Повторяющееся по определенным датам событие
  • id- уникальный идентификатор компании в Вашем каталоге. Служит для однозначной идентификации компании. Рекомендуем использовать целые числа, Например 100
onetime Блок описания события, не повторяющегося в будущем
start_date Дата начала события. Дата должна быть указана в формате ISO 8601
end_date Дата окончания события. Дата должна быть указана в формате ISO 8601
recurent Блок описания события, повторяющегося в будущем
recurency Узел, описывающий правило формирования повторов события
period Переодичность повтора

Возможны следующие варианты:

  • daily - Событие, повторяющееся ежедневно
  • weekly - Событие, повторяющееся еженедельно
  • monthly - Событие, повторяющееся ежемесячно
  • yearly - Событие, повторяющееся ежегодно
hm Повторяющееся время в формате ЧЧ:MM (24-часовой формат). Если событие повторяется в несколько часов, минут то можно задавать время через запятую, например: 12:00, 18:00
dow Повторяющееся дни недели в формате:
  • 1 - Понедельник

...

  • 7 - Воскресенье
day Повторяющееся дни месяца (число) в формате: 15
month Повторяющееся месяца в формате:
  • 1 - Январь

...

  • 12 - Декабрь
multidate Блок описания события, повторяющегося в будущем без определенных правил.
date Начало блока описания даты события. Если событий несколько то необходимо указывать несколько блоков date
start_date Дата начала события. Дата должна быть указана в формате ISO 8601
end_date Дата окончания события. Дата должна быть указана в формате ISO 8601
name Название событие. Например Распродажа весенней коллекции
image Ссылка на картинку, которая будет отображена в описании события
url Ссылка на страницу в интернете, по которой может быть предоставлено больше информации о событии
description Полное описание события. Возможна HTML разметка. Рекомендуется оформлять данные в блоки CDATA. Например: <![CDATA[Внимание!!!. Событие произойдет при любой погоде]]>
address Блок адресов проведения события
city Город. Должен быть указан в соответствии с данным о городах сайта map.by. Список всех городов можно получить посредством Определение географических координат населенных пунктов
street Название улицы. Должно быть указано в соответствии с данными о улицах городов сайта map.by. Список всех улиц можно получить посредством Определение географических координат улиц
building Номер строения. Если номер строения имеет корпус, то его необходимо так же указать в этом узле, например 168к3 означает строение номер 168 корпус 3
room Номер комнаты (офиса). Если таковой отсутствует, или их нескольно - рекомендуется оставлять данный узел пустым
coordinates Блок географических координат
lat Географическая широта. Должна быть представлена в виде дробного числа с разделителем целой части - знаком точка (.) например 55.123144
lon Географическая долгота. Должна быть представлена в виде дробного числа с разделителем целой части - знаком точка (.) например 25.324224

Валидация XML файла

Для Валидации подготовленных Вами данных вы можите использовать готовую схему валидации данных, расположенную по адресу: http://www.map.by/repo/sample.xsd. Обращаем ваше внимание что Валидация не является гарантом логической правильности введенных данных. Валидация означает что данные составлены в соответствии со XML спецификацией и не содержит синтаксических ошибок.


Пример файла

<?xml version="1.0"?>
<events version="1.0">
	<event id="{INT}" type="onetime">
		<onetime>
			<start_date>2012-07-16T19:00+01:00</start_date> <!-- ISO 8601 -->
			<end_date>2012-07-17T19:00+01:00</end_date>
		</onetime>
 
		<name>{NAME}</name>
		<image>http://www.imageaddress.com/image.jpg</image>
		<url>http://www.mysite.com/event-123</url>
		<description>
		<![CDATA[
		Здесь может быть любое описание, а так же HTML разметка.
		 ]]>
		</description>
 
		<address>
				<city>{CITY}</city>
				<street>{STREET}</street>
				<building>{BUILDING}</building>
				<room>{ROOM}</room>
				<coordinates>
					<lat>53.1122</lat>
					<lon>27.11111</lon>
				</coordinates>
		</address>
	</event>
 
	<event id="{INT}" type="recurent">
		<recurent>
			<recurency>
				<preiod>daily|weekly|monthly|yearly</period>
				<hm>12:00, 18:00</hm>
				<dow>1,2,3</dow>
				<day>12,21</day>
				<month>2,6</month>
			</recurency>
		</recurent>
		<name>{NAME}</name>
		<image>http://www.imageaddress.com/image.jpg</image>
		<url>http://www.mysite.com/event-123</url>
		<description>
		<![CDATA[
			Здесь может быть любое описание, а так же HTML разметка.
		 ]]>
		</description>
 
		<address>
				<city>{CITY}</city>
				<street>{STREET}</street>
				<building>{BUILDING}</building>
				<room>{ROOM}</room>
				<coordinates>
					<lat>53.1122</lat>
					<lon>27.11111</lon>
				</coordinates>
		</address>
	</event>
 
	<event id="{INT}" type="multidate">
		<multidate>
			<date>
				<start_date>2012-07-16T19:00+01:00</start_date>
				<end_date>2012-07-17T19:00+01:00</end_date>
			</date>
			<date>
				<start_date>2012-07-26T19:00+01:00</start_date>
				<end_date>2012-07-27T19:00+01:00</end_date>
			</date>			
		</multidate>
 
		<name>{NAME}</name>
		<image>http://www.imageaddress.com/image.jpg</image>
		<url>http://www.mysite.com/event-123</url>
		<description>
		<![CDATA[
			Здесь может быть любое описание, а так же HTML разметка.
		 ]]>
		</description>
 
		<address>
				<city>{CITY}</city>
				<street>{STREET}</street>
				<building>{BUILDING}</building>
				<room>{ROOM}</room>
				<coordinates>
					<lat>53.1122</lat>
					<lon>27.11111</lon>
				</coordinates>
		</address>
	</event>
 
</events>
Личные инструменты
Пространства имён

Варианты
Действия
Навигация
Инструменты