<?xml version="1.0" encoding="windows-1251"?>
<!-- edited with XMLSpy v2013 (http://www.altova.com) by  () -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:sch="http://purl.oclc.org/dsdl/schematron" xmlns:usch="http://www.unisoftware.ru/schematron-extensions" xmlns:sql="urn:schemas-microsoft-com:mapping-schema" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<xs:element name="Файл">
		<xs:annotation>
			<!---*******************************************************************************************************************************************************-->
			<xs:appinfo>
				<sch:pattern name="Проверка имени файла на соответствие значению атрибута @ИдФайл">
					<sch:rule context="Файл">
						<!--  Проверка имени файла на соответствие ИдФайл  -->
						<sch:assert test="usch:getFileName() = @ИдФайл">
							<usch:error code="0400400007" path="@ИдФайл" value-of-select="@ИдФайл" doc-id-path="usch:getFileName()" doc-id-caption="Файл">Имя файла обмена "<usch:value-of select="usch:getFileName()"/>" не совпадает со значением элемента ИдФайл "<usch:value-of select="@ИдФайл"/>"</usch:error>
						</sch:assert>
					</sch:rule>
				</sch:pattern>
			</xs:appinfo>
			<!---*******************************************************************************************************************************************************-->
			<xs:documentation>Файл обмена</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element name="Документ">
					<xs:annotation>
						<xs:documentation>Состав и структура документа</xs:documentation>
					</xs:annotation>
					<xs:complexType>
						<xs:sequence>
							<xs:element name="СвНП">
								<xs:annotation>
									<xs:documentation>Сведения об образовательной организации (обособленном подразделении образовательной организации, отделении иностранной организаций) (далее – организация) / индивидуальном предпринимателе, осуществляющем образовательную деятельность (далее – индивидуальный предприниматель)</xs:documentation>
								</xs:annotation>
								<xs:complexType>
									<xs:choice>
										<xs:element name="НПЮЛ">
											<xs:annotation>
												<xs:documentation>Образовательная организация </xs:documentation>
											</xs:annotation>
											<xs:complexType>
												<xs:attribute name="НаимОрг" use="required">
													<xs:annotation>
														<xs:documentation>Наименование организации</xs:documentation>
													</xs:annotation>
													<xs:simpleType>
														<xs:restriction base="xs:string">
															<xs:minLength value="1"/>
															<xs:maxLength value="1000"/>
														</xs:restriction>
													</xs:simpleType>
												</xs:attribute>
												<xs:attribute name="ИННЮЛ" type="ИННЮЛТип" use="required">
													<xs:annotation>
														<xs:documentation>ИНН организации</xs:documentation>
													</xs:annotation>
												</xs:attribute>
												<xs:attribute name="КПП" type="КППТип" use="required">
													<xs:annotation>
														<xs:documentation>КПП</xs:documentation>
													</xs:annotation>
												</xs:attribute>
											</xs:complexType>
										</xs:element>
										<xs:element name="НПИП">
											<xs:annotation>
												<xs:documentation>Индивидуальный предприниматель</xs:documentation>
											</xs:annotation>
											<xs:complexType>
												<xs:sequence>
													<xs:element name="ФИО" type="ФИОТип">
														<xs:annotation>
															<xs:documentation>Фамилия, имя, отчество индивидуального предпринимателя</xs:documentation>
														</xs:annotation>
													</xs:element>
												</xs:sequence>
												<xs:attribute name="ИННФЛ" type="ИННФЛТип" use="required">
													<xs:annotation>
														<xs:documentation>ИНН индивидуального предпринимателя</xs:documentation>
													</xs:annotation>
												</xs:attribute>
											</xs:complexType>
										</xs:element>
									</xs:choice>
								</xs:complexType>
							</xs:element>
							<xs:element name="Подписант">
								<xs:annotation>
									<!---*******************************************************************************************************************************************************-->
									<xs:appinfo>
										<sch:pattern name="Присутствие сведений о представителе в  зависимости  от  значения  ПрПодп">
											<sch:rule context="Подписант">
												<!-- Контроль обязательности присутствия Сведений о представителе налогоплательщика в зависимости от значения ПрПодп -->
												<sch:assert test="usch:iif(@ПрПодп=2, count(СвПред)!=0, (count(СвПред)!=0 or count(СвПред)=0))">
													<usch:error code="0400300003" path="@ПрПодп" value-of-select="@ПрПодп">Не выполнено условие присутствия (отсутствия) элемента Файл/Документ/Подписант/СвПред при значении элемента ПрПодп, равном "<usch:value-of select="@ПрПодп"/>".</usch:error>
												</sch:assert>
											</sch:rule>
										</sch:pattern>
									</xs:appinfo>
									<!---*******************************************************************************************************************************************************-->
									<!---*******************************************************************************************************************************************************-->
									<xs:appinfo>
										<sch:pattern name="Присутствие ФИО в  зависимости  от  значения  ПрПодп">
											<sch:rule context="Подписант">
												<!-- Контроль обязательности присутствия ФИО в зависимости от значения ПрПодп -->
												<sch:assert test="usch:iif((@ПрПодп=2 or (@ПрПодп=1 and ../СвНП/НПЮЛ)), count(ФИО)!=0, (count(ФИО)!=0 or count(ФИО)=0))">
													<usch:error code="0400300003" path="ФИО" value-of-select="count(ФИО)">Не выполнено условие присутствия элемента Файл/Документ/Подписант/ФИО при значении элемента ПрПодп, равном "<usch:value-of select="@ПрПодп"/>".</usch:error>
												</sch:assert>
											</sch:rule>
										</sch:pattern>
									</xs:appinfo>
									<!---*******************************************************************************************************************************************************-->
									<xs:documentation>Сведения о лице, подписавшем документ</xs:documentation>
								</xs:annotation>
								<xs:complexType>
									<xs:sequence>
										<xs:element name="ФИО" type="ФИОТип" minOccurs="0">
											<xs:annotation>
												<xs:documentation>Фамилия, имя, отчество (при наличии)</xs:documentation>
											</xs:annotation>
										</xs:element>
										<xs:element name="СвПред" minOccurs="0">
											<xs:annotation>
												<xs:documentation>Сведения о представителе организации (индивидуального предпринимателя)</xs:documentation>
											</xs:annotation>
											<xs:complexType>
												<xs:attribute name="НаимДок" use="required">
													<xs:annotation>
														<xs:documentation>Наименование документа, подтверждающего полномочия представителя</xs:documentation>
													</xs:annotation>
													<xs:simpleType>
														<xs:restriction base="xs:string">
															<xs:minLength value="1"/>
															<xs:maxLength value="120"/>
														</xs:restriction>
													</xs:simpleType>
												</xs:attribute>
											</xs:complexType>
										</xs:element>
									</xs:sequence>
									<xs:attribute name="ПрПодп" use="required">
										<xs:annotation>
											<xs:documentation>Признак лица, подписавшего документ</xs:documentation>
										</xs:annotation>
										<xs:simpleType>
											<xs:restriction base="xs:string">
												<xs:length value="1"/>
												<xs:enumeration value="1"/>
												<xs:enumeration value="2"/>
											</xs:restriction>
										</xs:simpleType>
									</xs:attribute>
								</xs:complexType>
							</xs:element>
							<xs:element name="СведОплОбрУсл" maxOccurs="unbounded">
								<xs:annotation>
									<!---***********************************************************************************************************************************************************************-->
									<xs:appinfo>
										<sch:pattern name="Проверка значения ПрОбуч  в зависимости от значения ПрФормОбуч">
											<sch:rule context="СведОплОбрУсл">
												<!--               Обязательность присутствия элемента Обучаемый при ПрОбуч=0         -->
												<sch:assert test="(@ПрОбуч=0 and @ПрФормОбуч=1) or (@ПрОбуч=1) ">
													<usch:error code="0400300003" path="@ПрОбуч" value-of-select="@ПрОбуч">
                                                        Элемент Файл/Документ/СведОплОбрУсл/ПрОбуч принимает значение "0"  при значении элемента Файл/Документ/СведОплОбрУсл/ПрФормОбуч, равном "0".
                                                    </usch:error>
												</sch:assert>
											</sch:rule>
										</sch:pattern>
									</xs:appinfo>
									<!---***********************************************************************************************************************************************************************-->
									<!---***********************************************************************************************************************************************************************-->
									<xs:appinfo>
										<sch:pattern name="Проверка наличия Обучаемый  в зависимости от значения ПрОбуч">
											<sch:rule context="СведОплОбрУсл">
												<!--               Обязательность присутствия элемента Обучаемый при ПрОбуч=0         -->
												<sch:assert test="(@ПрОбуч=0 and Обучаемый) or (@ПрОбуч=1 and not(Обучаемый)) ">
													<usch:error code="0400300003" path="@ПрОбуч" value-of-select="@ПрОбуч">
                                                        Отсутствует (присутствует) элемент Файл/Документ/СведОплОбрУсл/Обучаемый  при значении элемента ПрОбуч, равном "<usch:value-of select="@ПрОбуч"/>".
                                                    </usch:error>
												</sch:assert>
											</sch:rule>
										</sch:pattern>
									</xs:appinfo>
									<!---***********************************************************************************************************************************************************************-->
									<xs:documentation>Сведения о фактических расходах налогоплательщика на оказанные услуги, необходимых для предоставления социального налогового вычета по налогу на доходы физических лиц </xs:documentation>
								</xs:annotation>
								<xs:complexType>
									<xs:sequence>
										<xs:element name="НППлатОбрУсл" type="ДанФИОТип">
											<xs:annotation>
												<!---***********************************************************************************************************************************************************************-->
												<xs:appinfo>
													<sch:pattern name="Проверка наличия СведДок  в зависимости от наличия ИНН">
														<sch:rule context="НППлатОбрУсл">
															<!--               Обязательность присутствия СведДок  при отсутствии ИНН         -->
															<sch:assert test="(not(@ИНН) and СведДок) or (@ИНН) ">
																<usch:error code="0400300003" path="" value-of-select="">
                                                        Отсутствует элемент Файл/Документ/СведОплОбрУсл/НППлатОбрУсл/СведДок  при отсутствии элемента Файл/Документ/СведОплОбрУсл/НППлатОбрУсл/ИНН.
                                                    </usch:error>
															</sch:assert>
														</sch:rule>
													</sch:pattern>
												</xs:appinfo>
												<!---***********************************************************************************************************************************************************************-->
												<xs:documentation>Данные физического лица (его супруга/супруги), оплатившего образовательные услуги (далее – налогоплательщик)</xs:documentation>
											</xs:annotation>
										</xs:element>
										<xs:element name="Обучаемый" type="ДанФИОТип" minOccurs="0">
											<xs:annotation>
												<!---***********************************************************************************************************************************************************************-->
												<xs:appinfo>
													<sch:pattern name="Проверка наличия СведДок  в зависимости от наличия ИНН">
														<sch:rule context="Обучаемый">
															<!--               Обязательность присутствия СведДок  при отсутствии ИНН         -->
															<sch:assert test="(not(@ИНН) and СведДок) or (@ИНН) ">
																<usch:error code="0400300003" path="" value-of-select="">
                                                        Отсутствует элемент Файл/Документ/СведОплОбрУсл/Обучаемый/СведДок  при отсутствии элемента Файл/Документ/СведОплОбрУсл/Обучаемый/ИНН.
                                                    </usch:error>
															</sch:assert>
														</sch:rule>
													</sch:pattern>
												</xs:appinfo>
												<!---***********************************************************************************************************************************************************************-->
												<xs:documentation>Данные физического лица, которому оказаны образовательные услуги</xs:documentation>
											</xs:annotation>
										</xs:element>
									</xs:sequence>
									<xs:attribute name="НомерСвед" use="required">
										<xs:annotation>
											<xs:documentation>Номер сведений</xs:documentation>
										</xs:annotation>
										<xs:simpleType>
											<xs:restriction base="xs:string">
												<xs:minLength value="1"/>
												<xs:maxLength value="12"/>
											</xs:restriction>
										</xs:simpleType>
									</xs:attribute>
									<xs:attribute name="НомКорр" use="required">
										<xs:annotation>
											<xs:documentation>Номер корректировки</xs:documentation>
											<xs:documentation>Принимает значение:
0 – первичный документ, 
1 – 999 – номер корректировки для корректирующего документа</xs:documentation>
										</xs:annotation>
										<xs:simpleType>
											<xs:restriction base="xs:integer">
												<xs:totalDigits value="3"/>
											</xs:restriction>
										</xs:simpleType>
									</xs:attribute>
									<xs:attribute name="ПрФормОбуч" use="required">
										<xs:annotation>
											<xs:documentation>Обучение проводилось на очной форме обучения</xs:documentation>
										</xs:annotation>
										<xs:simpleType>
											<xs:restriction base="xs:string">
												<xs:length value="1"/>
												<xs:enumeration value="0"/>
												<xs:enumeration value="1"/>
											</xs:restriction>
										</xs:simpleType>
									</xs:attribute>
									<xs:attribute name="ПрОбуч" use="required">
										<xs:annotation>
											<xs:documentation>Налогоплательщик и обучаемый являются одним лицом</xs:documentation>
										</xs:annotation>
										<xs:simpleType>
											<xs:restriction base="xs:string">
												<xs:length value="1"/>
												<xs:enumeration value="0"/>
												<xs:enumeration value="1"/>
											</xs:restriction>
										</xs:simpleType>
									</xs:attribute>
									<xs:attribute name="СуммаРасх" use="required">
										<xs:annotation>
											<xs:documentation>Сумма расходов на оказанные образовательные услуги</xs:documentation>
										</xs:annotation>
										<xs:simpleType>
											<xs:restriction base="xs:decimal">
												<xs:totalDigits value="15"/>
												<xs:fractionDigits value="2"/>
											</xs:restriction>
										</xs:simpleType>
									</xs:attribute>
								</xs:complexType>
							</xs:element>
						</xs:sequence>
						<xs:attribute name="КНД" use="required">
							<xs:annotation>
								<xs:documentation>Код формы отчетности по КНД</xs:documentation>
							</xs:annotation>
							<xs:simpleType>
								<xs:restriction base="КНДТип">
									<xs:enumeration value="1184045"/>
								</xs:restriction>
							</xs:simpleType>
						</xs:attribute>
						<xs:attribute name="ДатаДок" type="ДатаТип" use="required">
							<xs:annotation>
								<xs:documentation>Дата формирования документа</xs:documentation>
							</xs:annotation>
						</xs:attribute>
						<xs:attribute name="КодНО" type="СОНОТип" use="required">
							<xs:annotation>
								<xs:documentation>Код налогового органа</xs:documentation>
							</xs:annotation>
						</xs:attribute>
						<xs:attribute name="ОтчГод" use="required">
							<xs:annotation>
								<xs:documentation>Отчетный год</xs:documentation>
							</xs:annotation>
							<xs:simpleType>
								<xs:restriction base="xs:gYear"/>
							</xs:simpleType>
						</xs:attribute>
					</xs:complexType>
				</xs:element>
			</xs:sequence>
			<xs:attribute name="ИдФайл" use="required">
				<xs:annotation>
					<xs:documentation>Идентификатор файла</xs:documentation>
					<xs:documentation>Содержит (повторяет) имя сформированного файла (без расширения)</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:minLength value="1"/>
						<xs:maxLength value="255"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="ВерсПрог" use="required">
				<xs:annotation>
					<xs:documentation>Версия программы, с помощью которой сформирован файл</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:minLength value="1"/>
						<xs:maxLength value="40"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="ВерсФорм" use="required">
				<xs:annotation>
					<xs:documentation>Версия формата</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:minLength value="1"/>
						<xs:maxLength value="5"/>
						<xs:enumeration value="5.01"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
		</xs:complexType>
	</xs:element>
	<xs:complexType name="ДанФИОТип">
		<xs:annotation>
			<xs:documentation>Данные физического лица</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="ФИО" type="ФИОТип">
				<xs:annotation>
					<xs:documentation>Фамилия, имя, отчество (при наличии)</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="СведДок" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Сведения о документе, удостоверяющем личность</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:attribute name="КодВидДок" use="required">
						<xs:annotation>
							<xs:documentation>Код вида документа</xs:documentation>
						</xs:annotation>
						<xs:simpleType>
							<xs:restriction base="xs:string">
								<xs:length value="2"/>
								<xs:enumeration value="03"/>
								<xs:enumeration value="07"/>
								<xs:enumeration value="08"/>
								<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="19"/>
								<xs:enumeration value="21"/>
								<xs:enumeration value="23"/>
								<xs:enumeration value="24"/>
								<xs:enumeration value="27"/>
								<xs:enumeration value="91"/>
							</xs:restriction>
						</xs:simpleType>
					</xs:attribute>
					<xs:attribute name="СерНомДок" use="required">
						<xs:annotation>
							<xs:documentation>Серия и номер</xs:documentation>
						</xs:annotation>
						<xs:simpleType>
							<xs:restriction base="xs:string">
								<xs:minLength value="1"/>
								<xs:maxLength value="25"/>
							</xs:restriction>
						</xs:simpleType>
					</xs:attribute>
					<xs:attribute name="ДатаДок" type="ДатаТип" use="required">
						<xs:annotation>
							<xs:documentation>Дата выдачи</xs:documentation>
						</xs:annotation>
					</xs:attribute>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
		<xs:attribute name="ИНН" use="optional">
			<xs:annotation>
				<xs:documentation>ИНН</xs:documentation>
			</xs:annotation>
			<xs:simpleType>
				<xs:restriction base="ИННФЛТип"/>
			</xs:simpleType>
		</xs:attribute>
		<xs:attribute name="ДатаРожд" type="ДатаТип" use="required">
			<xs:annotation>
				<xs:documentation>Дата рождения</xs:documentation>
			</xs:annotation>
		</xs:attribute>
	</xs:complexType>
	<xs:complexType name="ФИОТип">
		<xs:annotation>
			<xs:documentation>Фамилия, имя, отчество</xs:documentation>
		</xs:annotation>
		<xs:attribute name="Фамилия" use="required">
			<xs:annotation>
				<xs:documentation>Фамилия</xs:documentation>
			</xs:annotation>
			<xs:simpleType>
				<xs:restriction base="xs:string">
					<xs:minLength value="1"/>
					<xs:maxLength value="60"/>
				</xs:restriction>
			</xs:simpleType>
		</xs:attribute>
		<xs:attribute name="Имя" use="required">
			<xs:annotation>
				<xs:documentation>Имя</xs:documentation>
			</xs:annotation>
			<xs:simpleType>
				<xs:restriction base="xs:string">
					<xs:minLength value="1"/>
					<xs:maxLength value="60"/>
				</xs:restriction>
			</xs:simpleType>
		</xs:attribute>
		<xs:attribute name="Отчество" use="optional">
			<xs:annotation>
				<xs:documentation>Отчество</xs:documentation>
			</xs:annotation>
			<xs:simpleType>
				<xs:restriction base="xs:string">
					<xs:minLength value="1"/>
					<xs:maxLength value="60"/>
				</xs:restriction>
			</xs:simpleType>
		</xs:attribute>
	</xs:complexType>
	<xs:simpleType name="КППТип">
		<xs:annotation>
			<xs:documentation>Код причины постановки на учет (КПП) - 5 и 6 знаки от 0-9 и A-Z</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:length value="9"/>
			<xs:pattern value="([0-9]{1}[1-9]{1}|[1-9]{1}[0-9]{1})([0-9]{2})([0-9A-Z]{2})([0-9]{3})"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="ИННЮЛТип">
		<xs:annotation>
			<xs:documentation>Идентификационный номер налогоплательщика - организации</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:length value="10"/>
			<xs:pattern value="([0-9]{1}[1-9]{1}|[1-9]{1}[0-9]{1})[0-9]{8}"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="КНДТип">
		<xs:annotation>
			<xs:documentation>Код из Классификатора налоговой документации</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:length value="7"/>
			<xs:pattern value="[0-9]{7}"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="ДатаТип">
		<xs:annotation>
			<xs:documentation>Дата в формате ДД.ММ.ГГГГ (01.01.1900 - 31.12.2099)</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:length value="10"/>
			<xs:pattern value="((((0[1-9]{1}|1[0-9]{1}|2[0-8]{1})\.(0[1-9]{1}|1[0-2]{1}))|((29|30)\.(01|0[3-9]{1}|1[0-2]{1}))|(31\.(01|03|05|07|08|10|12)))\.((19|20)[0-9]{2}))|(29\.02\.((19|20)(((0|2|4|6|8)(0|4|8))|((1|3|5|7|9)(2|6)))))"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="СОНОТип">
		<xs:annotation>
			<xs:documentation>Коды из Классификатора системы обозначений налоговых органов</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:length value="4"/>
			<xs:pattern value="[0-9]{4}"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="ИННФЛТип">
		<xs:annotation>
			<xs:documentation>Идентификационный номер налогоплательщика - физического лица</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:length value="12"/>
			<xs:pattern value="([0-9]{1}[1-9]{1}|[1-9]{1}[0-9]{1})[0-9]{10}"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="СПДУЛТип">
		<xs:annotation>
			<xs:documentation>Коды Справочника видов документов, удостоверяющих личность налогоплательщика</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:length value="2"/>
			<xs:pattern value="[0-9]{2}"/>
		</xs:restriction>
	</xs:simpleType>
</xs:schema>
