ГОСТ Р HCO/HL7 27931-2015
запроса возлагается на клиента, но строго это может не соблюдаться. Как долго запрос
может оставаться незаконченным, зависит от реализации.
Хотя для клиента эффект отмены состоит в том, как если бы он не передавал со
общение запроса (или не получал очередных данных ответа), для сервера получение
требования отмены означает удаление всех еще не переданных данных ответа, которые
могли быть поставлены в очередь.
MSH| А*А& | | | | | | |QCNAJnnAQCN_J0 1 1. . .
QIDIQ001|Q99AScmeQueryA0003 I . . .
5.5.3 Интерактивное продолжение ответных сообщений
Протокол интерактивного продолжения определяет методологию преднамеренной
передачи ответов, содержащих большой обьем данных, с помощью нескольких сообще
ний HL7. Без использования этого протокола ответ возвращался бы как одно большое ло
гическое сообщение.
Протокол называется интерактивным, поскольку подразумевает диалог между сер
вером и клиентом. Этот диалог начинается с передачи запроса на потенциально большой
обьем данных, в котором клиент указал в поле RCP-2 «Ограничение длины ответа», что в
каждом продолжении ответа должен возвращаться ограниченный обьем данных. В ответ
на этот запрос сервер должен возвратить одно сообщение ответа, содержащее данные,
обьем которых не превышает заданное ограничение. Клиент может передать требование
продолжения передачи данных или отменить запрос.
Термин «продолжение», применяемый к ответам на запросы, не надо путать с его
использованием при передаче прямого сообщения в виде последовательности фрагмен
тов. При продолжении ответа на запрос ответственность за продолжение возлагается на
запрашивающее приложение, которое имеет возможность отказаться от продолжения.
При продолжении прямого сообщения ответственность за передачу очередного фрагмен
та возлагается на его отправителя и понятие отмены передачи отсутствует.
Фрагментация сегментов и сообщений описана в разделе 2.
5.5.3.1 Алгоритм и правила интерактивного продолжения
Ниже описаны правила интерактивного продолжения (ответа на запрос):
Если сервер передает часть запрошенных данных, то сообщение завершается сег
ментом DSC, в котором поле DSC-1 «Указатель продолжения» полагается равным подхо
дящему значению, а полю DSC-2 «Тип продолжения» присваивается значение «Ь>.
Если клиенту требуется получить следующую порцию данных, то он снова посыла
ет тот же запрос, но после сепиента RCP передает сегмент DSC, в котором поле DSC-1
«Указатель продолжения» содержит значение, полученное от сервера.
1021