<?xml version="1.0" encoding="ISO-8859-1"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
	<xs:element name="ContratoTrabalhoTemporario">
		<xs:annotation>
			<xs:documentation>
				Raiz do xml de definição para o leiaute de recebimento
				para inclusão de contratos para estudo de mercado.
			</xs:documentation>
		</xs:annotation>
		
		<xs:complexType>
			<xs:sequence>
				<xs:element name="DadosEmpresa" nillable="false">
					<xs:complexType>
						<xs:sequence>
							
							<xs:element name="NRCNPJ" type="cnpjTipo" minOccurs="1" maxOccurs="1" nillable="false">
								<xs:annotation>
									<xs:documentation>
										Número de identificação do empregador no Cadastro Nacional da Pessoa Jurídica.
										Informar de acordo com o formato:
										CNPJ: 99999999999999
									</xs:documentation>
								</xs:annotation>
							</xs:element>
							
							<xs:element name="DadosTomadora" minOccurs ="1" maxOccurs="unbounded" nillable="false">
								<xs:annotation>
									<xs:documentation>
										Dados de Identificação da tomadora
									</xs:documentation>
								</xs:annotation>

								<xs:complexType>
									<xs:sequence>

										<xs:element name="SGDominio" type="ufTipo" minOccurs="1" maxOccurs="1" nillable="false">
											<xs:annotation>
												<xs:documentation>
													UF do local de prestação do serviço
												</xs:documentation>
											</xs:annotation>
										</xs:element>

										<xs:element name="TPInscricao" type="enumBoolTipo" minOccurs="1" maxOccurs="1" nillable="false">
											<xs:annotation>
												<xs:documentation>
													Tipo de inscrição
													· Informar de acordo com os seguintes domínios:
													1 - CNPJ
													2 - CEI
												</xs:documentation>
											</xs:annotation>
										</xs:element>

										<xs:element name="NRCNPJCEIContratante" type="cnpjTipo" minOccurs="1" maxOccurs="1" nillable="false">
											<xs:annotation>
												<xs:documentation>
													Número de identificação do empregador no Cadastro Nacional da Pessoa Jurídica ou no Cadastro Específico do INSS.
													Informar de acordo com os formatos:
													CNPJ: 99999999999999
													CEI:  00999999999999 (preencher com dois zeros a esquerda)
												</xs:documentation>
											</xs:annotation>
										</xs:element>

										<xs:element name="NORazaoSocial" type="nomeTipo" minOccurs="1" maxOccurs="1" nillable="false">
											<xs:annotation>
												<xs:documentation>
													Razão social ou nome do	empregador
												</xs:documentation>
											</xs:annotation>
										</xs:element>

										<xs:element name="enderecoTomadora" type ="enderecoTipo" minOccurs ="1" maxOccurs="1" nillable="false" />

										<xs:element name="DadosEmpregado" minOccurs="1" maxOccurs="unbounded" nillable="false">
											<xs:complexType>
												<xs:sequence>
													<xs:element name="NRPisPasep" type="pisTipo" minOccurs ="1" maxOccurs ="1" nillable ="false">
														<xs:annotation>
															<xs:documentation>
																Número do PIS/PASEP do empregado.
																Informar de acordo com os seguintes formato: 99999999999
																Preencher este campo com o número de incrição no PIS (Programa
																de Integração Social) ou no PASEP (Programa de Formação do Patrimônio
																do Servidor) ou, ainda, com o Número de Indentificação do Trabalhador.
															</xs:documentation>
														</xs:annotation>
													</xs:element>

													<xs:element name="NOEmpregado" type="nomeTipo" minOccurs="1" nillable="false">
														<xs:annotation>
															<xs:documentation>
																Nome do empregado
															</xs:documentation>
														</xs:annotation>
													</xs:element>

													<xs:element name="DTNascimento" type="dataTipo" minOccurs="0" maxOccurs="1" nillable="true">
														<xs:annotation>
															<xs:documentation>
																Data de nascimento do empregado
																Informar de acordo com o seguinte formato: aaaammdd
															</xs:documentation>
														</xs:annotation>
													</xs:element>

													<xs:element name="CDSexo" type="enumSexoTipo" minOccurs="0" maxOccurs="1" nillable="true">
														<xs:annotation>
															<xs:documentation>
																Define o sexo do empregado.
																· Informar de acordo com os seguintes domínios:
																1 - Masculino
																2 - Feminino
															</xs:documentation>
														</xs:annotation>
													</xs:element>

													<xs:element name="TPGrauInstrucao" type="enumGrauInstrucaoTipo" minOccurs="0" maxOccurs="1" nillable="true">
														<xs:annotation>
															<xs:documentation>
																Define o grau de instrução do empregado.
																· Informar de acordo com os seguintes domínios:
																 1 - Analfabeto
																 2 - Até o 5º ano incompleto do ensino fundamental
																 3 - 5º ano completo do Ensino Fundamental
																 4 - Do 6º ao 9º ano de Ensino Fundamental
																 5 - Ensino Fundamental completo
																 6 - Ensino Médio incompleto
																 7 - Ensino Médio completo
																 8 - Educação Superior incompleta. 
																 9 - Educação Superior completa. 
																 10 - Mestrado
																 11 - Doutorado
															</xs:documentation>
														</xs:annotation>
													</xs:element>													

													<xs:element name="Contratos">
														<xs:annotation>
															<xs:documentation>
																Dados de Identificação do contrato
															</xs:documentation>
														</xs:annotation>

														<xs:complexType>
															<xs:sequence>
																<xs:element name="Contrato" minOccurs="1" maxOccurs="unbounded" nillable="false">
																	<xs:complexType>
																		<xs:sequence>

																			<xs:element name="TPInclusaoContrato" type="enumTripleTipo">
																				<xs:annotation>
																					<xs:documentation>
																						Tipo de inclusão de contrato
																						· Informar de acordo com os seguintes domínios:
																						1 - Locais sem filiais.
																						2 - Estudo de mercado.
																						3 - Contratação superior a 3 meses.
																						4 - Prorrogacao de contrato.
																					</xs:documentation>
																				</xs:annotation>
																			</xs:element>

																			<xs:element name="DSJustificativaContratacao" type="justificativaTipo" minOccurs="0" maxOccurs="1" nillable="true">
																				<xs:annotation>
																					<xs:documentation>
																						Justificativa para contratação superior a 3 meses do empregado.
																					</xs:documentation>
																				</xs:annotation>
																			</xs:element>

																			<xs:element name="NRCBO" type="cboTipo" minOccurs="1" maxOccurs ="1" nillable ="false">
																				<xs:annotation>
																					<xs:documentation>
																						Código da Classificação Brasileira de Ocupações (CBO)
																					</xs:documentation>
																				</xs:annotation>
																			</xs:element>

																			<xs:element name="DTInicioContrato" type="dataTipo" minOccurs="1" maxOccurs="1" nillable="false">
																				<xs:annotation>
																					<xs:documentation>
																						Data de início da vigência do contrato.
																						Informar de acordo com o seguinte formato: aaaammdd
																					</xs:documentation>
																				</xs:annotation>
																			</xs:element>

																			<xs:element name="DTFimContrato" type="dataTipo" minOccurs="1" maxOccurs="1" nillable="false">
																				<xs:annotation>
																					<xs:documentation>
																						Data de fim da vigência do contrato.
																						Informar de acordo com o seguinte formato: aaaammdd
																					</xs:documentation>
																				</xs:annotation>
																			</xs:element>

																			<xs:element name="TPMotivoContratacao" type="enumMotivoTipo" minOccurs="1" maxOccurs="1" nillable="false">
																				<xs:annotation>
																					<xs:documentation>
																						Tipo do motivo para contratação
																						· Informar de acordo com os seguintes domínios:
																						1 - Acréscimo extraordinário dos serviços.
																						2 - Substituição de pessoal regular ou permanente.
																					</xs:documentation>
																				</xs:annotation>

																			</xs:element>

																			<xs:element name="VLSalarioMensal" type="monetarioTipo" minOccurs="0" maxOccurs="1" nillable="true">
																				<xs:annotation>
																					<xs:documentation>
																						O valor do salário mensal do empregado.
																						Informar com duas casas decimais. Ex: 10896.30
																					</xs:documentation>
																				</xs:annotation>
																			</xs:element>

																			<xs:element name="NRTrabalhoSemanal" type="trabalhoSemanalTipo" minOccurs="1" maxOccurs="1" nillable="false">
																				<xs:annotation>
																					<xs:documentation>
																						Informar a jornada de trabalho semanal em horas
																					</xs:documentation>
																				</xs:annotation>
																			</xs:element>

																			<xs:element name="Prorrogacoes" minOccurs="0" maxOccurs="1" nillable="true">
																				<xs:complexType>
																					<xs:sequence>
																						<xs:element name="Prorrogacao" minOccurs="0" maxOccurs="2" nillable="true">
																							<xs:complexType>
																								<xs:sequence>

																									<xs:element name="DTInicioProrrogacao" type="dataTipo" minOccurs="1" maxOccurs="1" nillable="false">
																										<xs:annotation>
																											<xs:documentation>
																												Data de início da vigência da prorrogação.
																												Informar de acordo com o seguinte formato: aaaammdd
																											</xs:documentation>
																										</xs:annotation>
																									</xs:element>

																									<xs:element name="DTFimProrrogacao" type="dataTipo" minOccurs="1" maxOccurs="1" nillable="false">
																										<xs:annotation>
																											<xs:documentation>
																												Data de fim da vigência da prorrogação.
																												Informar de acordo com o seguinte formato: aaaammdd
																											</xs:documentation>
																										</xs:annotation>
																									</xs:element>

																									<xs:element name="DSJustificativaProrrogacao" type="justificativaTipo" minOccurs="1" maxOccurs="1" nillable="false">
																										<xs:annotation>
																											<xs:documentation>
																												Justificativa para prorrogação do contrato.
																											</xs:documentation>
																										</xs:annotation>
																									</xs:element>

																								</xs:sequence>
																							</xs:complexType>
																						</xs:element>

																					</xs:sequence>
																				</xs:complexType>
																			</xs:element>

																		</xs:sequence>
																	</xs:complexType>
																</xs:element>
															</xs:sequence>
														</xs:complexType>
													</xs:element>
												</xs:sequence>
											</xs:complexType>
										</xs:element>


									</xs:sequence>
								</xs:complexType>								
							</xs:element>
							
						</xs:sequence>
					</xs:complexType>
				</xs:element>			

			</xs:sequence>
		</xs:complexType>
	</xs:element>

	<!-- 
		Tipos Definidos pelo Ministério do Trabalho e Emprego. 
		Todos os tipos do arquivo foram inseridos nessa parte
		com o objetio de facilitar a visibilidade.
	-->

	<xs:simpleType name="dezenaTipo">
		<xs:restriction base="xs:integer">
			<xs:totalDigits value="2" />			
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="trabalhoSemanalTipo">
		<xs:restriction base="dezenaTipo">
			<xs:maxInclusive value="44" />
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="nomeTipo">
		<xs:restriction base="xs:string">
			<xs:minLength value="2" />
			<xs:maxLength value="150" />
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="justificativaTipo">
		<xs:restriction base="xs:string">
			<xs:minLength value="2" />
			<xs:maxLength value="6000" />
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="enumBoolTipo">
		<xs:restriction base="xs:positiveInteger">
			<xs:enumeration value="1" />
			<xs:enumeration value="2" />
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="enumMotivoTipo">
		<xs:restriction base="xs:positiveInteger">
			<xs:enumeration value="1" />
			<xs:enumeration value="2" />
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="enumSexoTipo">
		<xs:restriction base="xs:positiveInteger">
			<xs:enumeration value="1" />
			<xs:enumeration value="2" />
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="enumGrauInstrucaoTipo">
		<xs:restriction base="xs:positiveInteger">
			<xs:enumeration value="1" />
			<xs:enumeration value="2" />
			<xs:enumeration value="3" />
			<xs:enumeration value="4" />
			<xs:enumeration value="5" />
			<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:restriction>
	</xs:simpleType>

	<xs:simpleType name="enumTripleTipo">
		<xs:restriction base="xs:positiveInteger">
			<xs:enumeration value="1" />
			<xs:enumeration value="2" />
			<xs:enumeration value="3" />
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="dataTipo">
		<xs:restriction base="xs:integer">
			<xs:pattern value="(19|20|21)\d{2}(0[1-9]|1[012])(0[1-9]|[12][0-9]|3[01])" />
		</xs:restriction>
	</xs:simpleType>
	
	<xs:simpleType name="duracaoAvisoPrevioTipo">
		<xs:restriction base="xs:positiveInteger">
			<xs:totalDigits value="2"></xs:totalDigits>
		</xs:restriction>
	</xs:simpleType>
	
	<xs:simpleType name="convDecTerSalUltMesQtdTipo">
		<xs:restriction base="xs:positiveInteger">
			<xs:totalDigits value="2"></xs:totalDigits>
		</xs:restriction>
	</xs:simpleType>
	
	<xs:simpleType name="convDecTerSalUltMesMaioresTipo">
		<xs:restriction base="xs:positiveInteger">
			<xs:totalDigits value="2"></xs:totalDigits>
		</xs:restriction>
	</xs:simpleType>
	
	<xs:simpleType name="convFeriasUltMesQtdTipo">
		<xs:restriction base="xs:positiveInteger">
			<xs:totalDigits value="2"></xs:totalDigits>
		</xs:restriction>
	</xs:simpleType>
	
	<xs:simpleType name="convFeriasUltMesMaioresTipo">
		<xs:restriction base="xs:positiveInteger">
			<xs:totalDigits value="2"></xs:totalDigits>
		</xs:restriction>
	</xs:simpleType>
	
	<xs:simpleType name="convAvisoPrevioUltMesMaioresTipo">
		<xs:restriction base="xs:positiveInteger">
			<xs:totalDigits value="2"></xs:totalDigits>
		</xs:restriction>
	</xs:simpleType>
	
	<xs:simpleType name="convAvisoPrevioUltMesQtdTipo">
		<xs:restriction base="xs:positiveInteger">
			<xs:totalDigits value="2"></xs:totalDigits>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="cnpjTipo">
		<xs:restriction base="xs:nonNegativeInteger">
			<xs:pattern value="(\d{14})" />
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="pisTipo">
		<xs:restriction base="xs:string">
			<xs:pattern value="(\d{11})" />
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="cepTipo">
		<xs:restriction base="xs:string">
			<xs:pattern value="(\d{8})" />
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="cboTipo">
		<xs:restriction base="xs:string">
			<xs:pattern value="(\d{6})" />
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="monetarioTipo">
		<xs:restriction base="xs:decimal">
			<xs:totalDigits value="14" />
			<xs:fractionDigits value="2" />
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="ufTipo">
		<xs:restriction base="xs:string">
			<xs:length value="2"/>
			<xs:pattern value="AC||AL||AM||AP||BA||CE||DF||ES||GO||MA||MG||MS||MT||PA||PB||PE||PI||PR||RJ||RN||RO||RR||RS||SC||SE||SP||TO"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:complexType name="enderecoTipo">
		<xs:sequence>
			<xs:element name="NRCEP" type="cepTipo" minOccurs="1" maxOccurs="1" nillable="false">
				<xs:annotation>
					<xs:documentation>
						código postal do endereço
					</xs:documentation>
				</xs:annotation>
			</xs:element>

			<xs:element name="NOLogradouro" minOccurs="1" maxOccurs="1" nillable="false">
				<xs:annotation>
					<xs:documentation>
						Endereço - Logradouro
					</xs:documentation>
				</xs:annotation>

				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:minLength value="2" />
						<xs:maxLength value="200" />
					</xs:restriction>
				</xs:simpleType>
			</xs:element>

			<xs:element name="NRLogradouro" minOccurs="0" maxOccurs ="1" nillable ="true">
				<xs:annotation>
					<xs:documentation>
						Endereço - Logradouro Número
					</xs:documentation>
				</xs:annotation>

				<xs:simpleType>
					<xs:restriction base="xs:positiveInteger">
						<xs:totalDigits value="15" />
					</xs:restriction>
				</xs:simpleType>
			</xs:element>

			<xs:element name="DSComplemento" minOccurs="0" maxOccurs ="1" nillable ="true ">
				<xs:annotation>
					<xs:documentation>
						Complemento de endereço - Logradouro Complemento
					</xs:documentation>
				</xs:annotation>

				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:minLength value="2" />
						<xs:maxLength value="30" />
					</xs:restriction>
				</xs:simpleType>
			</xs:element>

			<xs:element name="NOBairro" minOccurs="0" maxOccurs ="1" nillable ="true">
				<xs:annotation>
					<xs:documentation>Bairro</xs:documentation>
				</xs:annotation>

				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:minLength value="2" />
						<xs:maxLength value="144" />
					</xs:restriction>
				</xs:simpleType>
			</xs:element>

			<xs:element name="NOLocalidade" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Cidade</xs:documentation>
				</xs:annotation>

				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:minLength value="2" />
						<xs:maxLength value="144" />
					</xs:restriction>
				</xs:simpleType>

			</xs:element>

			<xs:element name="SGUF" type="ufTipo" minOccurs="0">
				<xs:annotation>
					<xs:documentation>
						Unidade Federativa
					</xs:documentation>
				</xs:annotation>
			</xs:element>

			<xs:element name="NRDDD1" minOccurs="1" maxOccurs ="1" nillable ="false">
				<xs:annotation>
					<xs:documentation>
						Número do DDD do município no qual encontra-se a tomadora
					</xs:documentation>
				</xs:annotation>

				<xs:simpleType>
					<xs:restriction base="xs:positiveInteger">
						<xs:totalDigits value="2" />
					</xs:restriction>
				</xs:simpleType>
			</xs:element>

			<xs:element name="NRTelefone1" minOccurs="1" maxOccurs ="1" nillable ="false">
				<xs:annotation>
					<xs:documentation>
						Número do telefone da tomadora
					</xs:documentation>
				</xs:annotation>

				<xs:simpleType>
					<xs:restriction base="xs:positiveInteger">
						<xs:totalDigits value="8" />
					</xs:restriction>
				</xs:simpleType>
			</xs:element>

			<xs:element name="NRRamal1" minOccurs="0" maxOccurs ="1" nillable ="true">
				<xs:annotation>
					<xs:documentation>
						Número do ramal
					</xs:documentation>
				</xs:annotation>

				<xs:simpleType>
					<xs:restriction base="xs:positiveInteger">
						<xs:totalDigits value="6" />
					</xs:restriction>
				</xs:simpleType>
			</xs:element>

			<xs:element name="NRDDD2" minOccurs="0" maxOccurs ="1" nillable ="true">
				<xs:annotation>
					<xs:documentation>
						Número do DDD do município no qual encontra-se a tomadora
					</xs:documentation>
				</xs:annotation>

				<xs:simpleType>
					<xs:restriction base="xs:positiveInteger">
						<xs:totalDigits value="2" />
					</xs:restriction>
				</xs:simpleType>
			</xs:element>

			<xs:element name="NRTelefone2" minOccurs="0" maxOccurs ="1" nillable ="true">
				<xs:annotation>
					<xs:documentation>
						Número do telefone da tomadora
					</xs:documentation>
				</xs:annotation>

				<xs:simpleType>
					<xs:restriction base="xs:positiveInteger">
						<xs:totalDigits value="8" />
					</xs:restriction>
				</xs:simpleType>
			</xs:element>

			<xs:element name="NRRamal2" minOccurs="0" maxOccurs ="1" nillable ="true">
				<xs:annotation>
					<xs:documentation>
						Número do ramal
					</xs:documentation>
				</xs:annotation>

				<xs:simpleType>
					<xs:restriction base="xs:positiveInteger">
						<xs:totalDigits value="6" />
					</xs:restriction>
				</xs:simpleType>
			</xs:element>

		</xs:sequence>
	</xs:complexType>

</xs:schema>
