SodiumSeleniteQualityChecker

Sodium Selenite

assay heavy metals impurities microbiology minerals premix specification vitamins
Открыть подборку

Sodium Selenite Quality Checker — Селенит натрия (натрия селенит) (Ph. Eur. 2.4.x)

ℹ️ Утилита проверяет чистоту, содержание селена, примесь селената (критично!), примеси металлов, микробиологию, рН раствора.
ℹ️ Не использует машинное обучение — только правила.
⚠️ Критично для БАДов, парентерального питания, ветеринарных препаратов, антиоксидантных комплексов.

Использование:
SodiumSeleniteQualityChecker.exe → демо-режим (вывод в консоль)
SodiumSeleniteQualityChecker.exe input.csv output.json → оценка ваших данных

Формат input.csv:
BatchNumber,AssayPercent,SeleniumContent,LossOnDrying,HeavyMetals,Arsenic,Lead,Mercury,Cadmium,Selenate,Iron,Potassium,Calcium,Magnesium,Sulfates,Fluorides,TAMC,TYMC,pH,ClarityNTU,ColorAPHA,EthanolPPM,AcetonePPM

Пример:
NASE-2026-001,99.5,45.0,0.3,5,1.5,2,0.5,0.3,0.05,0.0005,0.2,0.03,0.005,0.005,30,500,50,6.5,2,30,800,500

— ЗАЧЕМ ЭТО НУЖНО?
Селенит натрия — неорганическое соединение селена, критически важное для:
• БАДов как источник селена (антиоксидант, поддержка щитовидной железы)
• Парентерального питания (микроэлемент для ТПП)
• Ветеринарных препаратов (профилактика селенодефицита у животных)
• Антиоксидантных комплексов (в составе с витамином Е)
⚠️ КРАЙНЕ ТОКСИЧЕН в высоких дозах! Узкое терапевтическое окно. Контроль примеси селената (SeO₄²⁻) критичен — селенат токсичнее селенита и имеет другую фармакокинетику!
Критические параметры:
• Чистота 98.0–102.0% (на сухой вес)
• Содержание селена 44.0–46.0% (ключевой параметр для дозирования!)
• Селенат ≤0.1% (критическая примесь — продукт окисления, более токсичен!)
• Потеря при высушивании ≤0.5%
• Тяжёлые металлы ≤10 ppm (как свинец)
• Мышьяк ≤3 ppm, свинец ≤5 ppm, ртуть ≤1 ppm, кадмий ≤1 ppm
• Железо ≤0.001%, калий ≤0.5%, кальций ≤0.05%, магний ≤0.01%
• Сульфаты ≤0.01%, фториды ≤50 ppm
• Микробиология: TAMC ≤1000 CFU/g, TYMC ≤100 CFU/g
• рН 5% раствора: 5.0–8.0
• Прозрачность ≤5 NTU, окраска ≤50 APHA
⚠️ Селенит натрия окисляется до селената на воздухе! Требует хранения в герметичной упаковке в инертной атмосфере (азот). Анализ проводить быстро, избегая контакта с воздухом. Строгий контроль критичен для безопасности!

input.csv

BatchNumber,AssayPercent,SeleniumContent,LossOnDrying,HeavyMetals,Arsenic,Lead,Mercury,Cadmium,Selenate,Iron,Potassium,Calcium,Magnesium,Sulfates,Fluorides,TAMC,TYMC,pH,ClarityNTU,ColorAPHA,EthanolPPM,AcetonePPM
NASE-2026-001,99.5,45.0,0.3,5,1.5,2,0.5,0.3,0.05,0.0005,0.2,0.03,0.005,0.005,30,500,50,6.5,2,30,800,500

URS & FS — пользовательские требования и функциональная спецификация

Этот документ описывает требования пользователя и функциональную спецификацию для утилиты контроля качества. Он предназначен для обсуждения внедрения, подготовки IQ/OQ и интеграции в контур ОКК/QC.

Утилита: SodiumSeleniteQualityCheckerAPI / объект: Sodium SeleniteКатегория: Vitamins and minerals

1. Область применения

Утилита Sodium Selenite Quality Checker применяется для объекта Sodium Selenite. Источником истины для структуры входных данных является фактический input.csv; критерии контроля задаются исполняемым модулем и предметным описанием.

Утилита не использует машинное обучение; решение формируется детерминированными правилами.

Категории: Vitamins and minerals

Теги: assay, heavy metals, impurities, microbiology, minerals, premix, specification, vitamins

2. Режимы запуска

SodiumSeleniteQualityChecker.exe                            → демо-режим (вывод в консоль)
SodiumSeleniteQualityChecker.exe input.csv output.json      → оценка ваших данных

3. Ключевые контролируемые области

  • количественное содержание / assay
  • остаточные растворители
  • микробиология и патогены
  • тяжёлые металлы / элементные примеси
  • pH и физико-химические параметры

4. Предметные ограничения и критические параметры

  • ⚠️ Критично для БАДов, парентерального питания, ветеринарных препаратов, антиоксидантных комплексов.
  • Селенит натрия — неорганическое соединение селена, критически важное для:
  • БАДов как источник селена (антиоксидант, поддержка щитовидной железы)
  • Парентерального питания (микроэлемент для ТПП)
  • Ветеринарных препаратов (профилактика селенодефицита у животных)
  • Антиоксидантных комплексов (в составе с витамином Е)
  • ⚠️ КРАЙНЕ ТОКСИЧЕН в высоких дозах! Узкое терапевтическое окно. Контроль примеси селената (SeO₄²⁻) критичен — селенат токсичнее селенита и имеет другую фармакокинетику!
  • Критические параметры:
  • Чистота 98.0–102.0% (на сухой вес)
  • Содержание селена 44.0–46.0% (ключевой параметр для дозирования!)
  • Селенат ≤0.1% (критическая примесь — продукт окисления, более токсичен!)
  • Потеря при высушивании ≤0.5%
  • Тяжёлые металлы ≤10 ppm (как свинец)
  • Мышьяк ≤3 ppm, свинец ≤5 ppm, ртуть ≤1 ppm, кадмий ≤1 ppm
  • Железо ≤0.001%, калий ≤0.5%, кальций ≤0.05%, магний ≤0.01%
  • Сульфаты ≤0.01%, фториды ≤50 ppm
  • Микробиология: TAMC ≤1000 CFU/g, TYMC ≤100 CFU/g
  • рН 5% раствора: 5.0–8.0
  • Прозрачность ≤5 NTU, окраска ≤50 APHA
  • ⚠️ Селенит натрия окисляется до селената на воздухе! Требует хранения в герметичной упаковке в инертной атмосфере (азот). Анализ проводить быстро, избегая контакта с воздухом. Строгий контроль критичен для безопасности!
Пределы, указанные в описании, должны быть сверены с актуальной утверждённой спецификацией, фармакопейной монографией и регистрационным досье перед продуктивным применением.

5. URS — пользовательские требования

IDТребованиеКритичностьКритерий приемки
URS-001Система должна принимать файл input.csv для Sodium Selenite с точным набором колонок, перечисленным в разделе «Контракт входных данных».HighФайл с корректным заголовком читается без ручного редактирования; отсутствие обязательной колонки приводит к FAIL/ошибке импорта.
URS-002Система должна обрабатывать запуск без аргументов в демонстрационном режиме и запуск с аргументами input.csv output.json для пользовательских данных.MediumОба сценария запуска дают предсказуемый результат или понятное сообщение об ошибке.
URS-003Система должна выполнять rule-based контроль по областям: количественное содержание / assay, остаточные растворители, микробиология и патогены, тяжёлые металлы / элементные примеси, pH и физико-химические параметры.HighКаждый контролируемый параметр получает статус и сообщение; результат не зависит от скрытых Excel-формул или ML.
URS-004Система должна сохранять трассируемость между серией/партией, исходными значениями, применёнными правилами и итоговым вердиктом.HighВ выходе присутствуют идентификатор серии, исходные значения, статусы параметров и критические находки.
URS-005Система должна формировать машинно-читаемый output.json для LIMS/ELN/MES, batch record и QA/QC review.HighJSON содержит общий статус, массив проверок, предупреждения, отказы и ссылку на исходный файл.
URS-006Система должна поддерживать применение в валидационном пакете клиента: URS/FS, IQ/OQ-подготовка, проверка установки и операционных сценариев.HighДокумент, тестовые сценарии и воспроизводимый CSV/JSON-поток пригодны для аудита и внутреннего согласования.
URS-007Система должна явно отделять технические ошибки данных от предметных несоответствий спецификации.MediumОшибки схемы/типов не смешиваются с фармакопейными отклонениями и отображаются отдельно.

6. Контракт входных данных input.csv

Источник истины для схемы входа — фактический заголовок input.csv. Имена колонок технические и не переводятся.

#КолонкаТипЕд.ОписаниеПримерПравило контроля
1BatchNumberидентификаторas specifiedBatch NumberNASE-2026-001обязательное поле; используется для трассируемости серии/партии
2AssayPercentдесятичное число%Assay %99.5число; сравнивается с пределом содержания/чистоты из спецификации или метода
3SeleniumContentдесятичное числоas specifiedSelenium Content45.0число; сравнивается с пределом содержания/чистоты из спецификации или метода
4LossOnDryingдесятичное числоas specifiedLoss On Drying0.3обязательное числовое значение; сравнение с правилом выполняет утилита
5HeavyMetalsдесятичное числоas specifiedHeavy Metals5число; проверяется как элементная/металлическая примесь
6Arsenicдесятичное числоas specifiedArsenic1.5число; проверяется как элементная/металлическая примесь
7Leadдесятичное числоas specifiedLead2число; проверяется как элементная/металлическая примесь
8Mercuryдесятичное числоas specifiedMercury0.5число; проверяется как элементная/металлическая примесь
9Cadmiumдесятичное числоas specifiedCadmium0.3число; проверяется как элементная/металлическая примесь
10Selenateдесятичное числоas specifiedSelenate0.05обязательное числовое значение; сравнение с правилом выполняет утилита
11Ironдесятичное числоas specifiedIron0.0005обязательное числовое значение; сравнение с правилом выполняет утилита
12Potassiumдесятичное числоas specifiedPotassium0.2обязательное числовое значение; сравнение с правилом выполняет утилита
13Calciumдесятичное числоas specifiedCalcium0.03обязательное числовое значение; сравнение с правилом выполняет утилита
14Magnesiumдесятичное числоas specifiedMagnesium0.005обязательное числовое значение; сравнение с правилом выполняет утилита
15Sulfatesдесятичное числоas specifiedSulfates0.005обязательное числовое значение; сравнение с правилом выполняет утилита
16Fluoridesдесятичное числоas specifiedFluorides30обязательное числовое значение; сравнение с правилом выполняет утилита
17TAMCдесятичное числоas specifiedTAMC500число; сравнивается с микробиологическими пределами
18TYMCдесятичное числоas specifiedTYMC50число; сравнивается с микробиологическими пределами
19pHдесятичное числоpHp H6.5обязательное числовое значение; сравнение с правилом выполняет утилита
20ClarityNTUдесятичное числоas specifiedClarity NTU2обязательное числовое значение; сравнение с правилом выполняет утилита
21ColorAPHAдесятичное числоas specifiedColor APHA30обязательное числовое значение; сравнение с правилом выполняет утилита
22EthanolPPMдесятичное числоppmEthanol PPM800число; проверяется как остаточный растворитель по установленному пределу
23AcetonePPMдесятичное числоppmAcetone PPM500число; проверяется как остаточный растворитель по установленному пределу

Пример CSV

BatchNumber,AssayPercent,SeleniumContent,LossOnDrying,HeavyMetals,Arsenic,Lead,Mercury,Cadmium,Selenate,Iron,Potassium,Calcium,Magnesium,Sulfates,Fluorides,TAMC,TYMC,pH,ClarityNTU,ColorAPHA,EthanolPPM,AcetonePPM
NASE-2026-001,99.5,45.0,0.3,5,1.5,2,0.5,0.3,0.05,0.0005,0.2,0.03,0.005,0.005,30,500,50,6.5,2,30,800,500

7. FS — функциональная спецификация

IDФункцияОписание реализации
FS-001CLI entry pointИсполняемый файл SodiumSeleniteQualityChecker.exe принимает режим демонстрации и режим обработки input.csv output.json.
FS-002CSV parserМодуль импорта читает CSV, проверяет заголовок, порядок/наличие колонок, количество значений и кодировку. Для десятичных значений ожидается точка.
FS-003Field conversionДля каждой колонки выполняется преобразование к ожидаемому типу: идентификатор, текст, десятичное число, дата/время или логический флаг.
FS-004Domain rule engineДля объекта Sodium Selenite применяются явные правила: диапазон, минимум, максимум, отсутствие запрещённого признака, полнота данных или расчётная проверка.
FS-005Criticality handlingКритичные нарушения формируют FAIL; некритичные отклонения и неполные данные формируют WARNING; соответствие всем правилам формирует PASS.
FS-006JSON writeroutput.json сохраняет общий статус, результаты по каждому параметру, исходные значения, предупреждения, отказы и диагностические сообщения.
FS-007Integration contractФормат CSV → JSON стабилен для вызова из LIMS/ELN/MES, планировщика задач или wrapper-сервиса.
FS-008Error handlingПри ошибке схемы, отсутствующем файле, нечисловом значении или невозможности записи JSON возвращается диагностируемая ошибка без тихого PASS.

8. Выходной контракт output.json

Выходной файл должен быть пригоден для автоматической обработки, аудита и сопоставления с исходной строкой input.csv.

{
  "utility": "SodiumSeleniteQualityChecker",
  "api": "Sodium Selenite",
  "batchNumber": "NASE-2026-001",
  "overallStatus": "PASS|WARNING|FAIL",
  "checkedAtUtc": "2026-05-18T00:00:00Z",
  "checks": [
    {
      "parameter": "BatchNumber",
      "value": "NASE-2026-001",
      "unit": "as specified",
      "status": "PASS|WARNING|FAIL",
      "message": "Результат проверки по правилу"
    },
    {
      "parameter": "AssayPercent",
      "value": "99.5",
      "unit": "%",
      "status": "PASS|WARNING|FAIL",
      "message": "Результат проверки по правилу"
    },
    {
      "parameter": "SeleniumContent",
      "value": "45.0",
      "unit": "as specified",
      "status": "PASS|WARNING|FAIL",
      "message": "Результат проверки по правилу"
    },
    {
      "parameter": "LossOnDrying",
      "value": "0.3",
      "unit": "as specified",
      "status": "PASS|WARNING|FAIL",
      "message": "Результат проверки по правилу"
    },
    {
      "parameter": "HeavyMetals",
      "value": "5",
      "unit": "as specified",
      "status": "PASS|WARNING|FAIL",
      "message": "Результат проверки по правилу"
    },
    {
      "parameter": "Arsenic",
      "value": "1.5",
      "unit": "as specified",
      "status": "PASS|WARNING|FAIL",
      "message": "Результат проверки по правилу"
    },
    {
      "parameter": "Lead",
      "value": "2",
      "unit": "as specified",
      "status": "PASS|WARNING|FAIL",
      "message": "Результат проверки по правилу"
    },
    {
      "parameter": "Mercury",
      "value": "0.5",
      "unit": "as specified",
      "status": "PASS|WARNING|FAIL",
      "message": "Результат проверки по правилу"
    }
  ],
  "criticalFindings": [],
  "sourceFile": "input.csv"
}

9. Тестовые сценарии OQ/PQ

IDСценарийОжидаемый результат
TC-001Валидный CSV с заголовком и строкой из примераВсе строки обработаны; результат содержит PASS/WARNING/FAIL и детализацию по параметрам.
TC-002Отсутствует обязательная колонка из input.csvИмпорт отклоняется или строка получает FAIL со ссылкой на схему.
TC-003Числовое поле содержит текст или пустое значениеФиксируется ошибка преобразования типа; результат не маскируется как PASS.
TC-004Параметр выходит за предел спецификации / критического лимитаДля критического параметра формируется FAIL; для некритического — WARNING согласно правилу.
TC-005Положительный патогенный/микробиологический флаг или превышение микробиологического лимитаФормируется критический FAIL с указанием параметра.
TC-007Остаточный растворитель выше установленного пределаФормируется FAIL с указанием растворителя и измеренного значения.

10. QA/QC, CSV и управление изменениями

  • Перед применением на производстве клиент фиксирует версию исполняемого файла, контрольную сумму, версию спецификации/монографии, тестовый CSV, ожидаемый JSON и результаты IQ/OQ.
  • Нельзя менять имена колонок без обновления валидатора и тестовых сценариев.
  • Исходный CSV, output.json и версия утилиты должны храниться вместе как пакет доказательств.
  • Любое изменение правил контроля должно проходить change control и повторную проверку OQ-сценариев.

Входит в пакеты

Эндокринология

Пакет для эндокринологии: щитовидная железа, гипофизарные/пептидные гормоны, кортикостероиды, половые гормоны и часть метаболических препаратов.

Открыть

Витамины и минералы

Пакет для контроля качества витаминов, минералов, премиксов и нутриентных веществ.

Открыть