Термины:
- Протокол выделения нуклеиновых кислот (далее — протокол) — машиночитаемое описание автоматизированной процедуры выделения как последовательности шагов, состава компонентов и технологических параметров. Протокол не описывает механику конкретного прибора.
- Лабораторная операция — имеющая биологический смысл часть процедуры, например лизис, связывание, промывка, сушка или элюция. Операция определяет цель, но не способ её выполнения прибором.
- Шаг протокола — одно параметризованное технологическое действие из набора, поддерживаемого исполнителем. Одна лабораторная операция может состоять из нескольких шагов протокола.
- Тип шага — стабильный идентификатор действия в поле kind, который определяет состав параметров и исполнительную семантику шага.
- Исполнитель — внешняя по отношению к формату система, которая проверяет протокол и преобразует его шаги в команды конкретному прибору.
- Запись выполнения — фактические данные отдельного запуска, включая время, измерения, предупреждения, ошибки и результат. Запись выполнения не является частью протокола.
Протокол содержит идентификатор, ревизию документа, ссылку на схему, название, описание и упорядоченную последовательность шагов. Каждый расходник протокола имеет локальный идентификатор, назначение, место и ссылку на модель. Планшет содержит описание состава одной типовой лунки. Состав включает названия компонентов, роли при необходимости и объёмы. Описание предполагает одинаковое содержимое всех рабочих лунок. Оно не утверждает, что все лунки заняты.
Храните ссылку на схему в объекте schema отдельно от ревизии протокола (as in [LINK: VER-001]).
Храните даты в формате RFC 3339.
Запрещайте неизвестные обязательные типы шагов.
Разрешайте чтение неизвестных необязательных метаданных.
Определите обязательность каждого поля через JSON Schema.
-
MID: d465b9e50dbc48c88daabd5772952aa3 UID: FMT-001 STATUS: ACTIVE RELATIONS (Child): STATEMENT: Используйте UUIDv4 для глобальных сущностей.
-
Incoming links from: 2.3.2. Идентификация планшета 2.4.2. Идентификация гребёнки колпачков2
MID: 2ff7fa5c813c4feeadfcb63f8f8f4cc9 UID: FMT-004 STATUS: ACTIVE RELATIONS (Child): STATEMENT: Изменяйте ревизию после изменения смысла или рабочих данных.
Ссылайтесь на совместимую модель прибора по UUID и ревизии определения.
Указывайте требуемые возможности через required_capabilities.
Не привязывайте протокол к серийному номеру прибора.
Разрешайте ограничение минимальной версии исполнителя.
Объявляйте каждый расходник протокола один раз.
-
MID: b1d46b8d18c94534935424f411c50966 UID: FMT-002 STATUS: ACTIVE RELATIONS (Child): STATEMENT: Используйте строковые идентификаторы для локальных сущностей протокола.
RATIONALE: Шаги и другие сущности, существующие только внутри одного сценария, следует идентифицировать строковыми идентификаторами, уникальными в пределах сценария.
Назначайте каждому расходнику протокола локальный идентификатор.
-
Incoming links from: 2.3.2. Идентификация планшета 2.4.2. Идентификация гребёнки колпачков2
MID: b9024e95aebf4d0a8412fb378b5e29f5 UID: FMT-003 STATUS: ACTIVE RELATIONS (Child): STATEMENT: Сохраняйте идентификатор типа неизменным между его ревизиями.
-
Incoming links from: 2.3.2. Идентификация планшета 2.4.2. Идентификация гребёнки колпачков2
MID: 2ff7fa5c813c4feeadfcb63f8f8f4cc9 UID: FMT-004 STATUS: ACTIVE RELATIONS (Child): STATEMENT: Изменяйте ревизию после изменения смысла или рабочих данных.
Ссылайтесь на модель расходника по UUID и ревизии определения.
Назначайте расходник посадочному месту. Разрешайте назначать одному месту несколько расходников, используемых в разные моменты выполнения протокола.
Смена расходника во время выполнения относится к исполнителю. Шаг ссылается на используемый расходник, а не непосредственно на место.
-
MID: f6583c54ee5e4c289eeac55393f15f62 UID: HEAT-002 STATUS: ACTIVE STATEMENT: Определяйте нагреватель через посадочное место.
RELATIONS (Parent):
Проверяйте наличие каждого выбранного планшета в списке supported_plates модели прибора.
Проверяйте наличие каждого выбранного колпачка в списке supported_sleeves модели прибора.
Указывайте назначение расходника в протоколе.
Допустимые назначения первой версии:
- sleeve_storage;
- sample_input;
- lysis;
- wash;
- elution;
- waste;
- intermediate.
Проверяйте наличие определения каждого компонента, на который ссылается состав наполнения
Порядок полей JSON не влияет на ссылки. Определение может находиться внутри протокола.
-
Incoming link from: 2.3.7. Объёмы лунки1
MID: 163cf9d77962405f92c9591f8863f931 UID: UNIT-002 STATUS: ACTIVE RELATIONS (Child): STATEMENT: Используйте микролитры для объёма.
Указывайте объём на одну лунку.
Сравнивайте сумму объёмов компонентов одной лунки с максимальным рабочим объёмом для совместимого планшета.
Храните цвет только как редакторскую подсказку.
-
MID: 68bfe0494e634b198b76e37278e1edc3 UID: REA-005 STATUS: ACTIVE STATEMENT: Не используйте цвет для исполнительной логики.
RELATIONS (Parent):
-
MID: ea5584a5fb82426eacf9201ec5ffb061 UID: REA-004 STATUS: ACTIVE STATEMENT: Храните цвет только как редакторскую подсказку.
RELATIONS (Child):
Не используйте цвет для исполнительной логики.
Представляйте протокол упорядоченным массивом шагов.
-
MID: d465b9e50dbc48c88daabd5772952aa3 UID: FMT-001 STATUS: ACTIVE RELATIONS (Child): STATEMENT: Используйте UUIDv4 для глобальных сущностей.
Назначайте каждому шагу уникальный UUIDv4, не зависящий от названия, типа и положения шага в последовательности.
Указывайте тип шага через поле kind.
Связывайте технологический шаг с расходником через ссылку.
-
MID: 052fad4b9abd40aba0e480df2619fe73 UID: STEP-005 STATUS: ACTIVE STATEMENT: Не связывайте шаг напрямую с посадочным местом.
RELATIONS (Parent):
-
MID: 5442783bd4c54b0dbd17ce392f6c7188 UID: STEP-004 STATUS: ACTIVE STATEMENT: Связывайте технологический шаг с расходником через ссылку.
RELATIONS (Child):
Не связывайте шаг напрямую с посадочным местом.
Не храните координаты осей в технологическом шаге.
Не храните номера двигателей в технологическом шаге.
Указывайте ограниченный тайм-аут для ожидающих шагов.
-
MID: 678008a564dd43a099a8ba92c37b6471 UID: HEAT-007 STATUS: ACTIVE STATEMENT: Указывайте тайм-аут ожидания.
RELATIONS (Parent):
Указывайте допустимую политику ошибки через перечисление.
Политика первой версии должна поддерживать abort и operator_decision.
| kind | Назначение |
|---|---|
| collect_sleeves | Захват рамки защитных колпачков |
| release_sleeves | Возврат или сброс рамки защитных колпачков |
| set_temperature | Установка целевой температуры нагревателя выбранного расходника |
| wait_temperature | Ожидание достижения целевой температуры |
| mix | Перемешивание содержимого выбранного планшета |
| collect_beads | Сбор магнитных частиц на защитных колпачках |
| release_beads | Высвобождение магнитных частиц в выбранном планшете |
Указывайте число повторов целым положительным значением.
Описывайте перемешивание массивом стадий.
-
MID: 13386f15ee0447dfa6bf4d32c3955681 UID: UNIT-001 STATUS: ACTIVE RELATIONS (Child): STATEMENT: Используйте миллиметры для длины.
Указывайте амплитуду в миллиметрах.
-
MID: 1b733d3d2cf54ac0a7b220f5fd1c4e00 UID: MIX-008 STATUS: ACTIVE STATEMENT: Определите единицы и допустимый диапазон амплитуды.
COMMENT: Расчёт фактической траектории выполняет внешняя система.
RELATIONS (Parent):
-
Incoming link from: 1.1.3. Двигатель модели прибора1
MID: d9e895f1bba947b784c3795edf129ef8 UID: UNIT-005 STATUS: ACTIVE RELATIONS (Child): STATEMENT: Используйте миллиметры в минуту для линейной скорости.
Указывайте скорость в миллиметрах в минуту.
Указывайте длительность или число циклов.
-
MID: 3f235c09e393435f885d8a37d14d099e UID: MIX-006 STATUS: ACTIVE STATEMENT: Запрещайте одновременное указание двух режимов завершения.
RELATIONS (Parent):
-
MID: b678ccc8aaaf4eb98b6dbf83b2033248 UID: MIX-005 STATUS: ACTIVE STATEMENT: Указывайте длительность или число циклов.
RELATIONS (Child):
Запрещайте одновременное указание двух режимов завершения.
Описывайте исходное положение колпачка относительно дна лунки или расчётного уровня жидкости.
Уровень жидкости относится к состоянию без колпачка. Максимальный рабочий объём не определяет уровень после погружения.
Примеры положений: above_liquid, liquid_surface, liquid_middle, well_bottom_offset.
-
MID: 77629cc3beab41e6b28090c77e0888bb UID: MIX-003 STATUS: ACTIVE STATEMENT: Указывайте амплитуду в миллиметрах.
RELATIONS (Parent): RELATIONS (Child):
Определите единицы и допустимый диапазон амплитуды.
Расчёт фактической траектории выполняет внешняя система.
Определите допустимый диапазон технологической скорости по справочнику модели прибора.
Указывайте лабораторное назначение перемешивания в поле purpose одним из значений lysis, wash, drying, elution или custom.
Связывайте сбор и высвобождение магнитных частиц с целевым планшетом.
-
MID: cff5eaa638f14ed0b8a536d6e0f888f4 UID: UNIT-004 STATUS: ACTIVE RELATIONS (Child): STATEMENT: Используйте секунды для времени.
Для сбора магнитных частиц указывайте положительное целое число циклов и положительную длительность удержания в секундах.
-
MID: cff5eaa638f14ed0b8a536d6e0f888f4 UID: UNIT-004 STATUS: ACTIVE RELATIONS (Child): STATEMENT: Используйте секунды для времени.
Для высвобождения магнитных частиц указывайте исходное положение колпачка и положительную длительность в секундах.
Связывайте нагрев с целевым расходником.
-
MID: 2df75fada71c4c4ba25358103da4ba45 UID: LAB-004 STATUS: ACTIVE STATEMENT: Назначайте расходник посадочному месту. Разрешайте назначать одному месту несколько расходников, используемых в разные моменты выполнения протокола.
COMMENT: Смена расходника во время выполнения относится к исполнителю. Шаг ссылается на используемый расходник, а не непосредственно на место.
RELATIONS (Child):
Определяйте нагреватель через посадочное место.
-
1.1.5. Возможности посадочного места модели MID: 3fa85807eae4413b80361b229309674b UID: DEV-005 STATUS: ACTIVE STATEMENT: Описывайте возможности каждого места
RELATIONS (Parent): RELATIONS (Child): RELATIONS (File):
Проверяйте наличие нагревателя у места.
-
Incoming link from: 1.1.6. Нагреватель модели прибора1
MID: a119af4125c54793bee3a9d2ec3580a8 UID: UNIT-003 STATUS: ACTIVE RELATIONS (Child): STATEMENT: Используйте градусы Цельсия для температуры.
-
1.1.5. Возможности посадочного места модели MID: 3fa85807eae4413b80361b229309674b UID: DEV-005 STATUS: ACTIVE STATEMENT: Описывайте возможности каждого места
RELATIONS (Parent): RELATIONS (Child): RELATIONS (File):
Проверяйте температуру по безопасному диапазону прибора.
Разделяйте установку температуры и ожидание температуры.
-
Incoming link from: 1.1.6. Нагреватель модели прибора1
MID: a119af4125c54793bee3a9d2ec3580a8 UID: UNIT-003 STATUS: ACTIVE RELATIONS (Child): STATEMENT: Используйте градусы Цельсия для температуры.
Указывайте допустимое отклонение температуры.
-
MID: 45a390c118964c7fb6850313ef947f4c UID: STEP-008 STATUS: ACTIVE STATEMENT: Указывайте ограниченный тайм-аут для ожидающих шагов.
RELATIONS (Child): -
MID: cff5eaa638f14ed0b8a536d6e0f888f4 UID: UNIT-004 STATUS: ACTIVE RELATIONS (Child): STATEMENT: Используйте секунды для времени.
Указывайте тайм-аут ожидания.
Определяйте действие нагревателя после завершения протокола.