ГОСТ Р HCO/HL7 27951— 2016
специфика и широта. Спецификой типа данных являются свойства, присущие каждому значению этого типа. Широ
та типа данных оценивается множеством значений, имеющих этот тип («набором значений» этого типа).
Семантическими свойствами типов данных является то, что стандарт 11404 называет «свойствами этих зна
чений и операциями над этими значениями». Семантическому свойству типа данных присваивается некоторое
имя. Семантическое свойство имеет определенное значение для каждого экземпляра этого типа данных. Значение
свойства экземпляра данных само должно иметь определенный тип данных — не существует никаких экземпляров
данных, для которых нельзя было бы определить тип данных.
Поэтому типы данных являются основными строительными блоками, используемыми для конструирования
сущностей болев высокого порядка — сообщений, компьютеризованных медицинских документов, объектов де
ловой сферы и транзакций с этими объектами. В чем же тогда состоит различие между типом данных и сообще
нием. документом или деловым объектом? Значения типа данных существуют сами по себе, рассматривается
только значение, для него не определяются ни идентичность, ни состояние, ни изменение состояния. Напротив,
для деловых объектов можно отслеживать идентичность и состояние, свойства идентифицированного объекта
могут изменяться с течением времени. Этого нет у значений данных: значение и его свойства постоянны. На
пример. число 5 всегда является числом 5. между этим числом 5 и тем числом 5 нет никакой разницы (они не
обладают идентичностью), число 5 никогда не станет числом 6 (состояние не изменяется). Значения данных
можно рассматривать как неизменные объекты, идентичность которых не играет никакой роли (идентичность и
равенство суть одно и то же)1).
В.1.2 Представление значений данных
Значения данных могут быть представлены с помощью разных символов, но смысл значения не связан ни с
каким конкретным представлением.
Например, порядковые номера (неотрицательные целые числа) намеренно определены как тип данных, в ко
тором для каждого значения есть следующее значение, а нуль не следует ни за каким порядковым значением. На
основе этого определения можно определить операции сложения, умножения идругие математические операции.
Какое бы представление ни отражало правила, описанные в намеренном определении порядкового типа данных,
оно будет действительным представлением порядковых номеров. Примерами действительных представлений по
рядковых номеров могут служить строки десятичных цифр, пакеты стеклянных шариков или царапины на стене.
Число «пять» может быть представлено словом «пять», арабской цифрой «5» или римской цифрой «V». Представ
ление не играет роли, пока оно соответствует семантическому определению типа данных.
Другим примером может служить булевский тип данных, который определяется совокупностью двух разных
значений, соответствующих истине (true) и лжи (false), и правилами отрицания значения и сочетания этих значений в
операциях конъюнкции и дизъюнкции. Булевские значения могут быть представлены словами «true» и «false», «да*
и «нет», числами 0 и 1 или любыми двумя знаками, отличающимися друг от друга. Представление значений типа
данных не играет роли, пока оно соответствует семантическому определению типа данных.
Настоящий стандарт определяет семантику, смысл типов данных, используемых в стандартах HL7. Она
касается только семантики и не зависит от особенностей представления или обработки либо от специфи
ческой технологии реализации. Для различных технологических подходов представления значений определен
ных в ней типов данных разработаны дополнительные стандарты. Они называются «Спецификацией реализуемой
технологии» (ImplementaWe Technology Specification — ITS). Эти стандарты указывают, какдолжны представляться
значения, соответствующие семантическим определениям, приведенным в настоящей спецификации, они могут
задавать синтаксис символьного или двоичного представления, а также описывать компьютерные процедуры вы
полнения действий над этими представлениями значений данных. Смысл этих представлений, используемых при
передаче данных, при создании данных и их обработке компьютерными программами определяется на основе на
стоящего стандарта, являющегося семантической спецификацией типов данных.
В.1.3 Свойства значений данных
Значения данных имеют свойства, определяемые их типом данных. Наиболее общим примером таких
свойств являются «поля комплексных типов данных». Однако в более общем смысле под свойством значения дан
ных надо подразумевать логические предикаты или математические функции; в более простых, но тем не менее
корректных терминах свойства являются вопросами, которые надо задать о значении данных, чтобы получить в
ответ другое значение данных.
Свойство обозначается именем. Например, тип данных integer (целое число) может иметь свойство с именем
«sign* (знак). Свойство имеет домен, образованный множеством возможных «ответов». Это множество определя
ется типом данных свойства, но домен свойства может быть подмножеством набора значений этого типа данных.
Свойство может иметь аргументы, то есть дополнительную информацию, которую надо представить в вопро
се для получения ответа. Например, важным свойством целого числа является то. что результат сложения одного
11 В методологии HL7 Message Development Framework определены «режимы изменения» полей сообщения.
Поскольку значения данных не обладают ни идентичностью, ни состоянием, ни изменением состояния, то эти ре
жимы не применяются к свойствам значений данных. Значения данных и их свойства никогда не изменяются. Поле
объекта (например, сообщения) может быть изменено, и в этом случае значение этого поля заменяется другим
значением. Но само значение никогда не изменяется.
281