ГОСТ РИСО 21090—2016
7.7.2.3.2 value: String : фактическое строковое значение части. Если причина пустоты nullFlavor
отсутствует, то в этом атрибуте должно присутствовать некоторое содержание.
7.7.2.3.3 code: String : код. присвоенный части в некоторой системе кодированияпри ее наличии.
7.7.2.3.4 codeSystem : String: система кодирования, из которой взято значение атрибута code.
Выбор системы кодирования зависит от типа части, определенного в конкретной специализации.
Если атрибут code имеет значение, то должен иметь значение и атрибут codeSystem.
7.7.2.3.5 codeSystemVersion : String: версия системы кодирования, если таковая должна быть указана.
Если атрибутcodeSystemVersion имеет значение, тодолжен иметь значение и атрибут codeSystem.
7.7.2.3.6
language
. Code: человеческий язык содержания. Допустимые коды берутся из документа
RFC 3066 организации IETF. Если этот атрибут пуст, то язык может быть идентифицирован откуда-то
еще. например, из содержания или из тега языка в кодировке
Unicode.
Хотя для частей может быть указан язык, значение части не зависит от языка, и приложения не
должны требовать указывать лингвистическое происхождение любой части фамилии, имени, отчества
или адреса.
7.7.2.4 Равенство
Для значений типа ХР понятие равенства не определено.
77.2.5 Инварианты:
- если атрибут code имеет значение, то атрибут codeSystem должен иметь значение;
- атрибут codeSystemVersion может иметь значение только в случае, если атрибут codeSystem
имеет значение.
Определение инвариантов на языке OCL:
def: let isNull : Boolean - nullFlavor.oclls^efined
def: let isNotNull :Boolean - not isNull
inv "при наличии атрибута code требуется атрибут codeSystem":
code.ocllsDefined implies
codeSystem. ocllsDefined
inv "атрибут codeSystemVersion разрешен только при наличии атрибута
codeSystem": codeSystemVersion.ocl.sDefir.ed implies
codeSystem. ocllsDefined
7.7.3 ADXP (компонент адреса)
7.7.3.1 Описание
Специализация типа данных ХР
Компонент может иметь тег типа, обозначающий его роль в адресе. Типичными компонентами
почти любого адреса являются название улицы, номер дома или почтового ящика, почтовый индекс,
город, страна, но на региональном, национальном или даже на ведомственном уровне (например, для
адресов воинских частей) могут быть определены дополнительные роли.
Адреса обычно разбиваются на строки. Признаком перехода на следующую строку могут служить
специальные ограничивающие символы (например. DEL).
7.7.3.2 Синтаксис ИСО/МЭК 11404
type ADXP - class (
nullFlavor : NullFlavor,
value : characterstring,
code :characterstring,
codeSystem :characterstring,
codeSystemVersion : characterstring,
language : characterstring,
type :AddressPartType,
>
7.7.3.3 Атрибуты
7.7.3.3.1type : AddressPartType. указывает, означает ли компонент адреса улицу город, страну,
почтовый индекс, почтовый ящик и т. д. Если это свойство имеет пустое значение, то компонент
адреса является не классифицированным и должен представлять собой неструктурированный адрес.
70