2. Структура блока заголовков

2. Структура блока заголовков

28. Блок заголовков содержит заголовки в соответствии со спецификацией WS-Addressing 1.0 - Core, а также специализированные заголовки интегрированной системы.

29. Блок заголовков включает в себя следующие заголовки:

а) wsa:To - заголовок, содержащий сведения о получателе;

б) набор заголовков, идентифицирующих отправителя:

wsa:ReplyTo - заголовок, содержащий логический адрес отправителя, на который должно быть направлено сообщение-ответ;

wsa:From - заголовок, содержащий логический адрес отправителя, на который не может быть направлено сообщение-ответ;

wsa:FaultTo - заголовок, содержащий логический адрес отправителя, на который должны быть направлены технологические сообщения об ошибках;

в) wsa:MessageID - заголовок, содержащий идентификатор сообщения;

г) wsa:RelatesTo - заголовок, содержащий ссылочный идентификатор сообщения;

д) wsa:Action - заголовок, идентифицирующий содержимое сообщения;

е) int:ProcedureID - заголовок, идентифицирующий экземпляр процедуры общего процесса;

ж) int:ConversationID - заголовок, идентифицирующий экземпляр транзакции общего процесса;

з) int:Integration - служебный заголовок интеграционной платформы интегрированной системы.

30. Заголовок wsa:To используется при выполнении процедуры маршрутизации сообщения.

Заголовок wsa:To обязателен для заполнения и должен содержать логический адрес получателя, сформированный в соответствии с правилами, приведенными в подразделе 3 настоящего раздела.

31. В заголовках, идентифицирующих отправителя, логические адреса указываются в соответствии с правилами формирования таких адресов, приведенными в подразделе 3 настоящего раздела.

32. Заголовок wsa:ReplyTo предназначен для обеспечения возможности формирования получателем сообщения-ответа для отправителя. Логический адрес отправителя указывается в элементе wsa:Address заголовка wsa:ReplyTo.

33. Заголовок wsa:From предназначен для передачи сведений об отправителе исходного сообщения. Логический адрес, идентифицирующий отправителя, указывается в элементе wsa:Address заголовка wsa:From.

34. Если заголовок wsa:From не заполнен, отправитель идентифицируется по заголовку wsa:ReplyTo.

35. Заголовок wsa:FaultTo предназначен для обеспечения возможности передачи технологических сообщений об ошибках на логический адрес, отличный от того, который указывается в поле wsa:ReplyTo. Логический адрес, используемый отправителем для приема технологических сообщений об ошибках, указывается в элементе wsa:Address заголовка wsa:FaultTo.

Если заголовок wsa:FaultTo не заполнен, технологические сообщения об ошибках направляются участнику электронного обмена данными, в адрес которого должно быть направлено сообщение-ответ (wsa:ReplyTo/wsa: Address).

36. Заголовок wsa:MessageID предназначен для уникальной идентификации отдельных экземпляров сообщений. Заголовок wsa:MessageID обязателен для заполнения.

Значения идентификаторов сообщений должны быть глобально уникальными и представлять собой UUID согласно спецификации RFC 4122.

37. Заголовок wsa:RelatesTo предназначен для организации цепочек сообщений.

Заголовок wsa:RelatesTo должен содержать значение заголовка wsa:MessageID исходного сообщения. При этом заголовок wsa:MessageID должен заполняться новым значением.

38. Заголовок wsa:Action предназначен для информирования участников электронного обмена данными о семантике данных, передаваемых в теле сообщения. Заголовок wsa:Action обязателен для заполнения.

39. Заголовок int:ProcedureID предназначен для уникальной идентификации экземпляра процедуры общего процесса, в рамках выполнения которой отправлено сообщение. Заголовок используется для целей мониторинга электронного обмена данными при реализации общих процессов.

Заголовок int:ProcedureID формируется в соответствии со структурой, приведенной в таблице 3, и схемой данных согласно приложению N 2.

Таблица 3

Структура заголовка int:ProcedureID

Элемент
Тип данных
Описание
int:ProcedureID
xs:string
идентификатор экземпляра процедуры общего процесса

Значение заголовка представляет собой строку, состоящую из компонентов, разделенных символом "/". Каждый компонент представляет собой UUID согласно спецификации RFC 4122.

Строка заголовка int:ProcedureID формируется в соответствии со следующими правилами:

начальное значение заголовка (первый компонент строки) присваивается участником общего процесса, инициирующим процедуру;

если участник общего процесса инициирует вложенную процедуру, к значению заголовка int:ProcedureID добавляется символ "/" и новый компонент UUID, идентифицирующий вложенную процедуру;

при электронном обмене сообщениями между участниками общего процесса в рамках одной процедуры (вложенной процедуры) значение заголовка int:ProcedureID такими участниками не меняется.

40. Заголовок int:ConversationID предназначен для уникальной идентификации экземпляра транзакции общего процесса, в рамках реализации которой отправлено сообщение.

Заголовок int:ConversationID формируется в соответствии со структурой, приведенной в таблице 4, и схемой данных заголовка в соответствии с приложением N 2 к настоящим Правилам.

Таблица 4

Структура заголовка int:ConversationID

Элемент
Тип данных
Описание
int:ConversationID
xs:anyURI
идентификатор экземпляра транзакции общего процесса

Значение идентификатора экземпляра транзакции общего процесса должно быть уникальным и представлять собой UUID согласно спецификации RFC 4122.

41. Служебный заголовок интеграционной платформы интегрированной системы int:Integration обеспечивает идентификацию сообщения в пределах интеграционной платформы интегрированной системы и формируется (заполняется) компонентами уровня интеграционной платформы интегрированной системы.

42. Служебный заголовок интегрированной системы int:Integration формируется в соответствии со структурой, приведенной в таблице 5, и схемой данных заголовка int:Integration в соответствии с приложением N 2 к настоящим Правилам.

Таблица 5

Структура заголовка int:Integration

Элемент
Тип данных
Описание
Кратность
int:Integration
int:IntegrationType
оборачивающий элемент заголовка
int:TrackID
xs:anyURI
технологический идентификатор сообщения
1
int:AcceptTime
xs:dateTime
дата и время приема сообщения интеграционной платформой интегрированной системы
1

43. Для идентификации сообщения внутри интеграционной платформы интегрированной системы используется технологический идентификатор сообщения int:TrackID.

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

Значение технологического идентификатора является уникальным и представляет собой UUID согласно RFC 4122.

44. Элемент int:AcceptTime содержит дату и время приема сообщения интеграционной платформой интегрированной системы. Значение элемента формируется при приеме сообщения и в дальнейшем не меняется при передаче сообщения. Время должно быть указано в формате всемирного координированного времени (UTC) с указанием часового пояса.