Номер NHI - NHI Number
В Число Национального индекса здоровья (NHI) уникальный идентификатор человека, используемый в Система здравоохранения Новой Зеландии. Технически это не число, а буквенно-цифровой идентификатор, состоящий из 7 символов, трех букв и четырех цифр. Его часто называют NHI, хотя следует проявлять осторожность при использовании этого сокращенного термина, потому что NHI может также относиться к общенациональному сбору демографических данных о пользователях здравоохранения (из которых номер NHI является уникальный идентификатор ).
Номер NHI как часть NHI был учрежден в 1993 году.[1]
использование
В первую очередь NHI используется для уникальной идентификации людей в пределах Новая Зеландия система здоровья,[1][2] особенно в электронных системах. Примером этого является его использование для оповещения поставщиков медицинских услуг с помощью системы медицинских предупреждений (MWS) о рисках, связанных с принятием медицинских решений для конкретных пациентов.
Формат
Номер NHI имеет особый формат. Он состоит из 7 символов и содержит контрольная цифра. Этот формат состоит из 3 буквенных символов, находящихся в диапазоне от A до Z, исключая 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 с числовой контрольной цифрой, а в новом формате - с буквенным контрольным символом.
Для нового формата, каждому буквенному символу присваивается числовое значение, равное его порядковому номеру в версии алфавита, в которой пропущены буквы 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 */функция validateNHINumber_old(нить $ nhi_number) : bool{ // Первоначальная проверка формата если (!preg_match('/ ^ ([a-zA-Z]) {3} ([0-9]) {4}? $ /', $ nhi_number)) { возвращаться ложный; } // Разделить строку в массив $ символы = preg_split('//', strtolower($ nhi_number), -1, PREG_SPLIT_NO_EMPTY); $ сумма = 0; // Перебираем первые шесть символов, игнорируем 7-й, поскольку это контрольная цифра за ($ i = 0; $ i < 6; $ i++) { $ char = $ символы[$ i]; // Первые три буквенных символа получают эквивалент числового представления // в свою порядковую позицию в алфавите, начиная с A до Z. // буквы I и O опускаются, в результате получается порядковый номер от 1 до 24. если ($ i < 3) { $ ascii = ord($ символы[$ i]); если ($ ascii > 105) { если ($ ascii > 111) { $ ascii -= 2; } еще { $ ascii -= 1; } } $ char = $ ascii - 96; } // Числовое представление каждого буквенного символа умножается на // инверсия своего порядкового номера в NHI Number. Первый // значение умножается на 7, второе на 6 и так далее. $ сумма += ((int)$ char * (7 - $ i)); } // Применяем модуль 11 для создания контрольной суммы. контрольная сумма $ = (плавать)fmod($ сумма, 11); $ checkdigit = 11 - контрольная сумма $; // Если контрольная сумма равна нулю, значит, номер NHI неверен если (контрольная сумма $ == 0) { возвращаться ложный; } // Если контрольная цифра равна 10, конвертируем в ноль если ((int)$ checkdigit == 10) { $ checkdigit = 0; } // Четвертое число должно быть равно контрольной цифре действительного номера NHI возвращаться ((int)$ символы[6] == $ checkdigit);}эхо (int)validateNHINumber_old('DAB8233'); // 0 (неверно)эхо (int)validateNHINumber_old('CGC2720'); // 1 (действительно)эхо (int)validateNHINumber_old('EPT6335'); // 1 (действительно)
Рекомендации
- ^ а б Служба медицинской информации Новой Зеландии. Национальный индекс здоровья (NHI). Проверено 13 июня 2007 года.
- ^ Служба медицинской информации Новой ЗеландииНомер NHI. Проверено 13 июня 2007 года.
- ^ Министерство здравоохранения. «HISO 10046: Стандарт идентификации здоровья потребителей 2019 г.». Министерство здравоохранения. Получено 15 августа 2020.