Обновлено: 27.11.2025

XSD-схема и XML-файл для ЕИСОТ Минтруда: структура, теги и требования

Что такое XSD-схема и XML-разметка? Обозначение тегов XSD-схемы Минтруда России Номера (идентификаторы) программ обучения Что дальше?

Сведения об обучении по охране труда в реестр обученных по охране труда лиц можно передать следующими способами:

  • путём ручного заполнения на сайте Минтруда России на странице «Записи, ожидающие добавления в реестр» (пользовательский интерфейс);
  • массово внести с помощью XML-файла;
  • отправить по API (программный интерфейс).

Если в первом случае сведения об обучении по охране труда вводятся непосредственно в личном кабинете вручную, то для массового внесения сведений в реестр и отправки их по API потребуется XML-файл.

Формирование XML-файла для массовой загрузки в ЕИСОТ должно осуществляться на основании XSD-схемы, размещённой на странице Минтруда России со справочной информацией в разделе «Обучение по ОТ».

Что такое XSD-схема и XML-разметка?

XSD-схема - это файл в формате XML, который описывает структуру и правила для другого xml-документа, определяя, какие элементы и атрибуты он должен содержать.

Пример XSD-схемы с сайта Минтруда России (версия 1.0.9):

<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema" version="1.0.9">
    <xs:attribute name="outerId">
        <xs:simpleType>
            <xs:restriction base="xs:string">
                <xs:pattern value="[A-Za-z0-9-]+"/>
            </xs:restriction>
        </xs:simpleType>
    </xs:attribute>
Нажмите, чтобы полностью раскрыть пример XSD-схемы:
    <xs:simpleType name="bit">
        <xs:restriction base="xs:string">
            <xs:enumeration value="0"/>
            <xs:enumeration value="1"/>
            <xs:enumeration value="False"/>
            <xs:enumeration value="True"/>
            <xs:enumeration value="false"/>
            <xs:enumeration value="true"/>
            <xs:enumeration value="FALSE"/>
            <xs:enumeration value="TRUE"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="learnProgram">
        <xs:restriction base="xs:unsignedLong">
            <xs:enumeration value="1"/>
            <xs:enumeration value="2"/>
            <xs:enumeration value="3"/>
            <xs:enumeration value="4"/>
            <xs:enumeration value="6"/>
            <xs:enumeration value="7"/>
            <xs:enumeration value="8"/>
            <xs:enumeration value="9"/>
            <xs:enumeration value="10"/>
            <xs:enumeration value="11"/>
            <xs:enumeration value="12"/>
            <xs:enumeration value="13"/>
            <xs:enumeration value="14"/>
            <xs:enumeration value="15"/>
            <xs:enumeration value="16"/>
            <xs:enumeration value="17"/>
            <xs:enumeration value="18"/>
            <xs:enumeration value="19"/>
            <xs:enumeration value="20"/>
            <xs:enumeration value="21"/>
            <xs:enumeration value="22"/>
            <xs:enumeration value="23"/>
            <xs:enumeration value="24"/>
            <xs:enumeration value="25"/>
            <xs:enumeration value="26"/>
            <xs:enumeration value="27"/>
            <xs:enumeration value="28"/>
            <xs:enumeration value="29"/>
        </xs:restriction>
    </xs:simpleType>
    <xs:element name="RegistrySet">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="RegistryRecord" minOccurs="1" maxOccurs="5000">
                    <xs:complexType>
                        <xs:all>
                            <xs:element name="Worker" minOccurs="1" maxOccurs="1">
                                <xs:complexType>
                                    <xs:all>
                                        <xs:element name="LastName" type="xs:string" minOccurs="1" maxOccurs="1" />
                                        <xs:element name="FirstName" type="xs:string" minOccurs="1" maxOccurs="1" />
                                        <xs:element name="MiddleName" type="xs:string" minOccurs="1" maxOccurs="1" />
                                        <xs:element name="Snils" type="xs:string" minOccurs="0" maxOccurs="1" />
                                        <xs:element name="IsForeignSnils" type="bit" minOccurs="0" maxOccurs="1"/>
                                        <xs:element name="ForeignSnils" type="xs:string" minOccurs="0" maxOccurs="1" />
                                        <xs:element name="Citizenship" type="xs:string" minOccurs="0" maxOccurs="1" />
                                        <xs:element name="Position" type="xs:string" minOccurs="1" maxOccurs="1" />
                                        <xs:element name="EmployerInn" type="xs:string" minOccurs="1" maxOccurs="1" />
                                        <xs:element name="EmployerTitle" type="xs:string" minOccurs="1" maxOccurs="1" />
                                        <xs:element name="OrganizationUnitId" type="xs:int" minOccurs="0" maxOccurs="1" />
                                    </xs:all>
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="Organization" minOccurs="1" maxOccurs="1">
                                <xs:complexType>
                                    <xs:all>
                                        <xs:element name="Inn" type="xs:string" minOccurs="1" maxOccurs="1" />
                                        <xs:element name="Title" type="xs:string" minOccurs="1" maxOccurs="1" />
                                    </xs:all>
                                </xs:complexType>
                            </xs:element>
                            <xs:element name="Test" minOccurs="1" maxOccurs="1">
                                <xs:complexType>
                                    <xs:all>
                                        <xs:element name="Date" type="xs:date" minOccurs="1" maxOccurs="1" />
                                        <xs:element name="ProtocolNumber" type="xs:string" minOccurs="1" maxOccurs="1" />
                                        <xs:element name="LearnProgramTitle" type="xs:string" minOccurs="1" maxOccurs="1" />
                                    </xs:all>
                                    <xs:attribute name="isPassed" type="bit" use="required"/>
                                    <xs:attribute name="learnProgramId" type="learnProgram" use="required"/>
                                </xs:complexType>
                            </xs:element>
                        </xs:all>
                        <xs:attribute ref="outerId" use="optional"/>
                    </xs:complexType>
                </xs:element>
            </xs:sequence>
        </xs:complexType>
    </xs:element>

</xs:schema>

Скачать XSD-схему версии 1.0.9


XML-разметка - это расширяемый язык разметки, предназначенный для хранения и передачи данных в структурированном виде. Данные находятся внутри тегов, которые помогают организовывать данные в логической иерархии, понятной человеку и компьютеру.

Пример XML-разметки для реестра обученных по охране труда лиц:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RegistrySet>
    <RegistryRecord>
        <Worker>
            <LastName>Иванов</LastName>
            <FirstName>Иван</FirstName>
            <MiddleName>Иванович</MiddleName>
            <Snils>101-345-323 21</Snils>
            <Position>Начальник отдела</Position>
            <EmployerInn>1234567890</EmployerInn>
            <EmployerTitle>ООО "Центр досуга "Ромашка"</EmployerTitle>
        </Worker>
        <Organization>
            <Inn>1234567890</Inn>
            <Title>ООО "Центр досуга "Ромашка"</Title>
        </Organization>
        <Test isPassed="true" learnProgramId="1">
            <Date>2025-10-15</Date>
            <ProtocolNumber>21</ProtocolNumber>
            <LearnProgramTitle>Оказание первой помощи пострадавшим</LearnProgramTitle>
        </Test>
    </RegistryRecord>
</RegistrySet>

Скачать образец xml-файла

Обозначение тегов XSD-схемы Минтруда России

LastName
Фамилия работника
FirstName
Имя работника
MiddleName
Отчество работника
Snils
СНИЛС работника
Position
Профессия (должность) работника
EmployerInn
ИНН организации работника
EmployerTitle
Наименование организации работника
Inn
ИНН организации, проводившей обучение
Title
Наименование организации, проводившей обучение
isPassed
Оценка результата проверки знаний
learnProgramId
Номер программы обучения
Date
Дата проверки знаний
ProtocolNumber
Номер протокола
LearnProgramTitle
Наименование программы обучения
Важно! Следует учесть некоторые особенности составления xml-файла, иначе при загрузке в реестр вернётся ошибка, указывающая на несоответствие XSD-схеме:
  1. Дата проверки знаний должна быть указана не через знак «.» (дд.мм.гггг), а через знак дефиса «-» в обратном порядке (гггг-мм-дд).
  2. Результат проверки знаний указывается словом true, если оценка «удовлетворительно» и false, если оценка «неудовлетворительно».
  3. Номер программы обучения указывается цифрами от 1 до 29, который соответствует одной из программ обучения, передаваемых в реестр.

Номера (идентификаторы) программ обучения

1 – Оказание первой помощи пострадавшим
2 – Использование (применение) средств индивидуальной защиты
3 – Общие вопросы охраны труда и функционирования системы управления охраной труда
4 – Безопасные методы и приемы выполнения работ при воздействии вредных и (или) опасных производственных факторов, источников опасности, идентифицированных в рамках специальной оценки условий труда и оценки профессиональных рисков
6 – Безопасные методы и приемы выполнения работ повышенной опасности, к которым предъявляются дополнительные требования в соответствии с нормативными правовыми актами, содержащими государственные нормативные требования охраны труда
6 – Безопасные методы и приемы выполнения земляных работ
7 – Безопасные методы и приемы выполнения ремонтных, монтажных и демонтажных работ зданий и сооружений
8 – Безопасные методы и приемы выполнения работ при размещении, монтаже, техническом обслуживании и ремонте технологического оборудования (включая технологическое оборудование)
9 – Безопасные методы и приемы выполнения работ на высоте
10 – Безопасные методы и приемы выполнения пожароопасных работ
11 – Безопасные методы и приемы выполнения работ в ограниченных и замкнутых пространствах (ОЗП)
12 – Безопасные методы и приемы выполнения строительных работ, в том числе: - окрасочные работы - электросварочные и газосварочные работы
13 – Безопасные методы и приемы выполнения работ, связанных с опасностью воздействия сильнодействующих и ядовитых веществ
14 – Безопасные методы и приемы выполнения газоопасных работ
15 – Безопасные методы и приемы выполнения огневых работ
16 – Безопасные методы и приемы выполнения работ, связанные с эксплуатацией подъемных сооружений
17 – Безопасные методы и приемы выполнения работ, связанные с эксплуатацией тепловых энергоустановок
18 – Безопасные методы и приемы выполнения работ в электроустановках
19 – Безопасные методы и приемы выполнения работ, связанные с эксплуатацией сосудов, работающих под избыточным давлением
20 – Безопасные методы и приемы обращения с животными
21 – Безопасные методы и приемы при выполнении водолазных работ
22 – Безопасные методы и приемы работ по поиску, идентификации, обезвреживанию и уничтожению взрывоопасных предметов
23 – Безопасные методы и приемы работ в непосредственной близости от полотна или проезжей части эксплуатируемых автомобильных и железных дорог
24 – Безопасные методы и приемы работ, на участках с патогенным заражением почвы
25 – Безопасные методы и приемы работ по валке леса в особо опасных условиях
26 – Безопасные методы и приемы работ по перемещению тяжеловесных и крупногабаритных грузов при отсутствии машин соответствующей грузоподъемности и разборке покосившихся и опасных (неправильно уложенных) штабелей круглых лесоматериалов
27 – Безопасные методы и приемы работ с радиоактивными веществами и источниками ионизирующих излучений
28 – Безопасные методы и приемы работ с ручным инструментом, в том числе с пиротехническим
29 – Безопасные методы и приемы работ в театрах

Что дальше?

В следующей статье мы расматриваем такие способы создания XML из Excel, как:

  • сопоставление с XSD-схемой;
  • автоматизация с помощью макросов VBA;
  • написание Python скрипта.

Бесплатно сформировать все сведения об обучении по охране труда из нескольких Excel таблиц в один xml-файл также можно в АС Реестр-протокол. О том, как это сделать читай в инструкции.

Формирование xml-файла в АС Реестр-протокол (бесплатная функция)

Готовы начать работу?

Выберите удобный вариант и опробуйте все функции бесплатно

Быстрый доступ по ИНН
Бесплатное формирование XML
Полный доступ на 14 дней

Получить доступ к программе

Ключ доступа будет сгенерирован автоматически, можно активировать сразу после получения