<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
			xmlns:xs="http://www.w3.org/2001/XMLSchema"
			xmlns="http://portal.mec.gov.br/diplomadigital/arquivos-em-xsd"
			targetNamespace="http://portal.mec.gov.br/diplomadigital/arquivos-em-xsd"
			elementFormDefault="qualified" attributeFormDefault="unqualified">

	<xs:import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="xmldsig-core-schema_v1.1.xsd" />
	<xs:include schemaLocation="leiauteDiplomaDigital_v1.03.xsd" />
	<xs:include schemaLocation="tiposBasicos_v1.03.xsd" />

	<xs:complexType name="TDocumentacaoAcademicaRegistro">
		<xs:annotation>
			<xs:documentation>Tipo Documentação Acadêmica para Emissão e Registro</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:choice>
				<xs:element minOccurs="1" maxOccurs="1" name="RegistroReq" type="TRegistroReq" />
				<xs:element minOccurs="1" maxOccurs="1" name="RegistroSegundaViaReq" type="TRegistroSegundaViaReq" />
			</xs:choice>
			<xs:sequence minOccurs="1" maxOccurs="unbounded">
				<xs:element ref="ds:Signature" />
			</xs:sequence>
		</xs:sequence>
	</xs:complexType>

	<xs:complexType name="TRegistroReq">
		<xs:annotation>
			<xs:documentation>Tipo Requisição de Registro de Diploma Digital</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:choice>
				<xs:element minOccurs="1" maxOccurs="1" name="DadosDiploma" type="TDadosDiploma" />
				<xs:element minOccurs="1" maxOccurs="1" name="DadosDiplomaNSF" type="TDadosDiplomaNSF" />
			</xs:choice>
			<xs:element minOccurs="1" maxOccurs="1" name="DadosPrivadosDiplomado" type="TDadosPrivadosDiplomado" />
			<xs:element minOccurs="0" maxOccurs="1" name="TermoResponsabilidade" type="TTermoResponsabilidade" />
			<xs:element minOccurs="0" maxOccurs="1" name="DocumentacaoComprobatoria " type="TDocumentacaoComprobatoria" />
		</xs:sequence>
		<xs:attribute name="versao" type="TVersao" use="required">
			<xs:annotation>
				<xs:documentation>Versão do leiaute (v1.03)</xs:documentation>
			</xs:annotation>
		</xs:attribute>
		<xs:attribute name="id" use="required">
			<xs:annotation>
				<xs:documentation>Id</xs:documentation>
			</xs:annotation>
			<xs:simpleType>
				<xs:restriction base="xs:ID">
					<xs:pattern value="ReqDip[0-9]{44}" />
				</xs:restriction>
			</xs:simpleType>
		</xs:attribute>
	</xs:complexType>

	<xs:complexType name="TRegistroSegundaViaReq">
		<xs:annotation>
			<xs:documentation>Tipo Requisição de Registro de Diploma Digital como segunda via de um diploma físico</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:choice>
				<xs:element minOccurs="1" maxOccurs="1" name="DadosDiploma" type="TDadosDiploma" />
				<xs:element minOccurs="1" maxOccurs="1" name="DadosDiplomaNSF" type="TDadosDiplomaNSF" />
			</xs:choice>
			<xs:element minOccurs="1" maxOccurs="1" name="DadosPrivadosDiplomado" type="TDadosPrivadosDiplomadoSegundaVia" />
			<xs:element minOccurs="0" maxOccurs="1" name="TermoResponsabilidade" type="TTermoResponsabilidade" />
			<xs:element minOccurs="0" maxOccurs="1" name="DocumentacaoComprobatoria" type="TDocumentacaoComprobatoria" />
		</xs:sequence>
		<xs:attribute name="versao" type="TVersao" use="required">
			<xs:annotation>
				<xs:documentation>Versão do leiaute (v1.03)</xs:documentation>
			</xs:annotation>
		</xs:attribute>
		<xs:attribute name="id" use="required">
			<xs:annotation>
				<xs:documentation>Id</xs:documentation>
			</xs:annotation>
			<xs:simpleType>
				<xs:restriction base="xs:ID">
					<xs:pattern value="ReqDip[0-9]{44}" />
				</xs:restriction>
			</xs:simpleType>
		</xs:attribute>
	</xs:complexType>

	<xs:complexType name="TDadosPrivadosDiplomado">
		<xs:annotation>
			<xs:documentation>Dados do Diplomado</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="Filiacao" type="TFiliacao" />
			<xs:element name="HistoricoEscolar" type="THistoricoEscolar" />
			<xs:element name="CargaHorariaCurso" type="TCargaHoraria" />
			<xs:element name="IngressoCurso">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Data" type="TData" />
						<xs:element name="FormaAcesso" type="TFormaAcessoCurso" />
						<xs:element name="DataConclusao" type="TData" />
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>

	<xs:complexType name="TDadosPrivadosDiplomadoSegundaVia">
		<xs:annotation>
			<xs:documentation>Dados do Diplomado para emissão de segunda via digital de diploma expedido em papel.</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="Filiacao" type="TFiliacao" />
			<xs:element minOccurs="0" name="HistoricoEscolar" type="THistoricoEscolarSegundaVia" />
			<xs:element name="CargaHorariaCurso" type="TCargaHoraria" />
			<xs:element name="IngressoCurso">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Data" type="TData" />
						<xs:element name="FormaAcesso" type="TFormaAcessoCurso" />
						<xs:element name="DataConclusao" type="TData" />
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>

	<xs:complexType name="THistoricoEscolar">
		<xs:annotation>
			<xs:documentation>Dados do historico</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="MatrizCurricular" type="TMatrizCurricular"/>
			<xs:element name="DataEmissaoHistorico" type="TData" />
			<xs:element name="SituacaoAluno" type="TSituacaoAlunoHistorico" />
			<xs:element name="ENADE" type="TSituacaoAlunoEnadeHistorico" />
			<xs:element minOccurs="0" name="DataProvaEnade" type="TData" />
			<xs:element name="CargaHorariaCursoIntegralizada" type="TCargaHoraria" />
		</xs:sequence>
	</xs:complexType>

	<xs:complexType name="THistoricoEscolarSegundaVia">
		<xs:annotation>
			<xs:documentation>Dados do historico para segundas vias</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element minOccurs="0" name="MatrizCurricular" type="TMatrizCurricular"/>
			<xs:element name="DataEmissaoHistorico" type="TData" />
			<xs:element name="SituacaoAluno" type="TSituacaoAlunoHistorico" />
			<xs:element minOccurs="0" name="ENADE" type="TSituacaoAlunoEnadeHistorico" />
			<xs:element minOccurs="0" name="DataProvaEnade" type="TData" />
			<xs:element name="CargaHorariaCursoIntegralizada" type="TCargaHoraria" />
		</xs:sequence>
	</xs:complexType>

	<xs:complexType name="TMatrizCurricular">
		<xs:annotation>
			<xs:documentation>Matriz curricular do histórico escolar</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element minOccurs="1" maxOccurs="unbounded" name="DisciplinaCursada">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="Disciplina" type="TString" />
						<xs:element name="Periodo" type="TString" />
						<xs:element name="CargaHoraria" type="TCargaHoraria" />
						<xs:choice minOccurs="0">
							<xs:element name="Nota" type="TNota" />
							<xs:element name="NotaAteCem" type="TNotaAteCem" />
							<xs:element name="Conceito" type="TConceito" />
							<xs:element name="ConceitoRM" type="TConceitoRM" />
							<xs:element name="ConceitoEspecificoDoCurso" type="TString" />
						</xs:choice>
						<xs:choice>
							<xs:element name="Aprovado" type="TVazio" />
							<xs:element name="Trancado" type="TVazio" />
							<xs:element name="Reprovado" type="TVazio" />
							<xs:element name="EstudoAproveitado" type="TVazio" />
						</xs:choice>
						<xs:element name="Docentes">
							<xs:complexType>
								<xs:sequence minOccurs="1" maxOccurs="unbounded">
									<xs:element name="Docente">
										<xs:complexType>
											<xs:sequence>
												<xs:element name="Nome" type="TNome" />
												<xs:element name="Titulacao" type="TTitulacao" />
												<xs:element minOccurs="0" name="Lattes" type="TLattes" />
												<xs:element minOccurs="0" name="CPF" type="TCpf" />
											</xs:sequence>
										</xs:complexType>
									</xs:element>
								</xs:sequence>
							</xs:complexType>
						</xs:element>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>

	<xs:complexType name="TTermoResponsabilidade">
		<xs:annotation>
			<xs:documentation>Tipo Termo Responsabilidade</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element minOccurs="1" maxOccurs="1" name="Nome" type="TNome" />
			<xs:element minOccurs="1" maxOccurs="1" name="CPF" type="TCpf" />
			<xs:element minOccurs="1" maxOccurs="1" name="Cargo" type="TString" />
			<xs:element minOccurs="0" maxOccurs="1" name="AtoDesignacao" type="TPdfA" />
		</xs:sequence>
	</xs:complexType>

	<xs:complexType name="TDocumentacaoComprobatoria">
		<xs:annotation>
			<xs:documentation>Tipo Documentação Comprobatória</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element minOccurs="1" maxOccurs="unbounded" name="Documento">
				<xs:complexType>
					<xs:simpleContent>
						<xs:extension base="TPdfA">
							<xs:attribute name="tipo" type="TTipoDocumentacao" use="required" />
							<xs:attribute name="observacoes" type="TString" use="optional" />
						</xs:extension>
					</xs:simpleContent>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>

	<xs:simpleType name="TTipoDocumentacao">
		<xs:annotation>
			<xs:documentation>Tipo documentação associada</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:whiteSpace value="collapse" />
			<xs:enumeration value="TermoResponsabilidade" />
			<xs:enumeration value="DocumentoIdentidadeDoAluno" />
			<xs:enumeration value="ProvaConclusaoEnsinoMedio" />
			<xs:enumeration value="HistoricoEscolar" />
			<xs:enumeration value="ProvaColacao" />
			<xs:enumeration value="ComprovacaoEstagioCurricular" />
			<xs:enumeration value="CertidaoNascimento" />
			<xs:enumeration value="CertidaoCasamento" />
			<xs:enumeration value="TituloEleitor" />
			<xs:enumeration value="AtoNaturalizacao" />
			<xs:enumeration value="Outros" />
		</xs:restriction>
	</xs:simpleType>

</xs:schema>