Номер Национального индекса здоровья (NHI) - это уникальный идентификатор человека, используемый в системе здравоохранения Новой Зеландии . Технически это не число, а буквенно-цифровой идентификатор, состоящий из 7 символов, трех букв и четырех цифр. Его часто называют NHI, хотя следует соблюдать осторожность при использовании этого сокращенного термина, потому что NHI может также относиться к общенациональной коллекции демографических данных о пользователях здравоохранения ( уникальным идентификатором которого является номер NHI ).
Номер NHI как часть NHI был учрежден в 1993 году. [1]
Применение
В первую очередь NHI используется для уникальной идентификации людей в системе здравоохранения Новой Зеландии [1] [2], особенно в электронных системах. Примером этого является его использование для предупреждения поставщиков медицинских услуг с помощью системы медицинских предупреждений (MWS) о рисках, связанных с принятием медицинских решений для конкретных пациентов.
Формат
Номер NHI имеет особый формат. Он состоит из 7 символов и содержит контрольную цифру . Этот формат состоит из 3 буквенных символов, находящихся в диапазоне от AZ, исключая I и O, и 4 цифровых символов, находящихся в диапазоне 0-9. Четвертый цифровой символ - это контрольная цифра. Назначение первых 6 символов является произвольным и не имеет никакого отношения к лицу, которому оно назначено.
Номер NHI чаще всего обозначается заглавными буквами.
Номера NHI часто называют действительными или недействительными. Любой номер NHI, который не соответствует правильному формату или имеет неправильную контрольную цифру, считается недействительным. Обычно ссылка на действительный или недействительный номер NHI не означает, что он правильно связан с нужным человеком. Поскольку идентификатор является произвольным, это невозможно сделать, основываясь только на самом идентификаторе.
К 2025 году система NHI исчерпает все доступные номера NHI. В 2019 году в пересмотренном стандарте был введен новый формат, состоящий из 3 буквенных символов в диапазоне от AZ, исключая I и O, 2 цифровых символа в диапазоне от 0 до 9, один буквенный символ в диапазоне от AZ, исключая I и O, за которым следует символом проверки в диапазоне от AZ, за исключением I и O.
Новый формат будет доступен для распределения в июле 2022 года. Эти два формата будут сосуществовать бесконечно долго, и все административные и клинические системы должны будут поддерживать их оба.
Все номера NHI, начинающиеся с Z, зарезервированы для тестовых целей. [3]
Дубликаты
Когда установлено, что человеку было присвоено более одного номера NHI, один считается основным идентификатором. Обычно это делается путем ранжирования всех присвоенных номеров в буквенно-цифровом порядке и выбора первого в качестве основного.
Все остальные номера NHI для отдельных лиц в NHI привязываются к основному номеру.
Контрольная цифра
Существует два варианта алгоритма контрольной цифры, позволяющие использовать старый формат чисел NHI с числовой контрольной цифрой, а в новом формате - с буквенным контрольным символом. Переход на использование буквенной контрольной цифры устраняет ранее выявленную слабость, когда простые односимвольные ошибки транскрипции не всегда обнаруживаются старой схемой контрольных цифр. [4]
В новом формате каждому буквенному символу присваивается числовое значение, равное его порядковому номеру в версии алфавита, в которой пропущены буквы I и O. Порядковый диапазон составляет 1–24. Это дает, например, A = 1 и Z = 24. В расчетах каждый числовой символ используется со своим номиналом 0–9.
Затем эквивалентное числовое значение каждого символа умножается на его обратную порядковую позицию в номере NHI. Первое значение умножается на 7, второе на 6, третье на 5, четвертое на 4, пятое на 3 и шестое на 2. Подсчитывается сумма шести произведений. Вычисленная сумма по модулю 24 вычитается из 24, чтобы получить порядковый номер. Если номер индекса равен нулю, то номер NHI недействителен и не может быть использован.
В старом формате номер NHI содержит контрольную цифру. Алгоритм генерации цифры описан ниже:
Каждому буквенному символу дается числовое представление, эквивалентное его порядковому положению в алфавите, начиная с A до Z. Буквы I и O опускаются, образуя порядковый диапазон от 1 до 24.
Числовое представление каждого буквенного символа умножается на обратную его порядковую позицию в пределах числа NHI. Первое значение умножается на 7, второе - на 6 и так далее.
Первые 3 числовых символа также умножаются на обратную их порядковую позицию.
Сумма модуля умножения 11, вычтенного из 11, принимается в качестве контрольной цифры (результат 10 переводится в 0).
Эта схема аналогична схеме контрольной цифры ISBN.
Код PHP для расчета проверки NHI для старого формата
/ ** * @param $ nhi_number Номер NHI для проверки * @return bool Истина, если действительна, ложь, если недействительна * @author scott.quinlan [at] gmail.com * / function validateNHINumber_old ( string $ nhi_number ) : bool { / / Первоначальная проверка формата if ( ! Preg_match ( '/ ^ ([a-zA-Z]) {3} ([0-9]) {4}? $ /' , $ Nhi_number )) { return false ; } // Разделить строку в массиве $ chars = preg_split ( '//' , strtolower ( $ nhi_number ), - 1 , PREG_SPLIT_NO_EMPTY ); $ сумма = 0 ; // Перебираем первые шесть символов, игнорируем 7-й символ, поскольку это контрольная цифра для ( $ i = 0 ; $ i < 6 ; $ i ++ ) { $ char = $ chars [ $ i ]; // Первые три буквенных символа получают числовое представление, эквивалентное // его порядковому положению в алфавите, начиная с A до Z. // Буквы I и O опускаются, образуя порядковый диапазон от 1 до 24. if ( $ я < 3 ) { $ ascii = ord ( $ chars [ $ i ]); если ( $ ascii > 105 ) { если ( $ ascii > 111 ) { $ ascii - = 2 ; } else { $ ascii - = 1 ; } } $ char = $ ascii - 96 ; } // Числовое представление каждого буквенного символа умножается на // инверсию его порядкового номера в NHI Number. // Первое значение умножается на 7, второе - на 6 и так далее. $ сумма + = (( int ) $ char * ( 7 - $ i )); } // Применяем модуль 11 для создания контрольной суммы. $ контрольная сумма = ( float ) fmod ( $ sum , 11 ); $ checkdigit = 11 - контрольная сумма $ ; // Если контрольная сумма равна нулю, то номер NHI неверен if ( $ checkum == 0 ) { return false ; } // Если контрольная цифра равна 10, конвертируем в ноль if (( int ) $ checkdigit == 10 ) { $ checkdigit = 0 ; } // Четвертое число должно быть равно контрольной цифре для действительного числа NHI return (( int ) $ chars [ 6 ] == $ checkdigit ); }echo ( int ) validateNHINumber_old ( 'DAB8233' ); // 0 ( неверно ) echo ( int ) validateNHINumber_old ( 'CGC2720' ); // 1 (действительный) echo ( int ) validateNHINumber_old ( 'EPT6335' ); // 1 (действительно)
Рекомендации
- ^ a b Служба медицинской информации Новой Зеландии . Национальный индекс здоровья (NHI) . Проверено 13 июня 2007 года.
- ^ Номер NHI службы медицинской информации Новой Зеландии . Проверено 13 июня 2007 года.
- ^ Министерство здравоохранения. «HISO 10046: Стандарт идентификации здоровья потребителей 2019» . Министерство здравоохранения . Проверено 15 августа 2020 .
- ^ Макрей, Джейден (ноябрь 2015 г.). «Оценка слабости контрольной цифры идентификатора Национального индекса здоровья к ошибкам транскрипции при вводе данных» (PDF) . Здоровье информатики Новой Зеландии конференции 2015 . Дата обращения 13 мая 2021 .