﻿<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="https://www.w3.org/2001/XMLSchema">
	<xs:include schemaLocation="TiposDadosS3CP.XSD"/>
	<xs:include schemaLocation="TiposDadosRubricas.XSD"/>
	<!--
Proprietário: UNILEO
Projeto: S3CP
Versão: 1.4
Data da versão:2018/12/01
Observações:  
--> 
	<xs:element name="DODES">
		<xs:complexType>
			<xs:sequence>
				<xs:element name="Cabecalho">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="Entidade" type="StringNIF" />
							<!--Neste campo deverá constar o NIF da Entidade. -->
							<xs:element name="Data" type="DataHora" />
							<!--A data tem o seguinte formato AAAA-MM-DDThh:mm:ss-->
							<xs:element name="Ano" type="Ano" />
							<!--valor inteiro maior que 2010-->
							<xs:element name="Periodicidade" type="PeriodicidadeDODES" />
							<!-- Consultar tabela de Periodicidade "Periodicidade.xml" -->
							<xs:element name="Periodo" type="StringNum3" />
							<!-- Consultar tabela de Periodos "Periodo.xml" -->
							<xs:element name="PlanoContasLocal" type="ValoresParaPlanoContasLocal" />
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="Resumo">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="ResumoPorTipoDespesaReceita" maxOccurs="unbounded">
								<xs:complexType>
									<xs:sequence>
										<xs:element name="ID_ResumoPorTipoDespesaReceita" type="InteiroMaiorQueZero" />
										<xs:element name="TipoReceitaDespesa" type="xs:integer" />
										<!-- Consultar tabela de Tipos de Receita ou Despesa "TipoReceitaDespesa.xml" -->
										<xs:element name="TotalDespesasPorPagarPeriodosAnteriores" type="DecimalS3CP" />
										<xs:element name="TotalDotacoesCorrigidas" type="DecimalS3CP" />
										<xs:element name="TotalCativos" type="DecimalS3CP" />
										<xs:element name="TotalDescativos" type="DecimalS3CP" />
										<xs:element name="TotalDotacoesDisponiveis" type="DecimalS3CP" />
										<xs:element name="TotalCabimentos" type="DecimalS3CP" />
										<xs:element name="TotalCompromissos" type="DecimalS3CP" />
										<xs:element name="TotalObrigacoes" type="DecimalS3CP" />
										<xs:element name="TotalDespesasPagasBrutas" type="DecimalS3CP" />
										<xs:element name="TotalReposicoesAbatidasAosPagamentosEmitidas" type="DecimalS3CP" />
										<xs:element name="TotalReposicoesAbatidasAosPagamentosRecebidas" type="DecimalS3CP" />
										<xs:element name="TotalDespesasPagasLiquidasDePeriodosAnteriores" type="DecimalS3CP" />
										<xs:element name="TotalDespesasPagasLiquidasDoPeriodoCorrente" type="DecimalS3CP" />
										<xs:element name="TotalGeralDespesasPagasLiquidas" type="DecimalS3CP" />
										<xs:element name="TotalCompromissosATransitar" type="DecimalS3CP" />
										<xs:element name="TotalObrigacoesPorPagar" type="DecimalS3CP" />
										<xs:element name="TotalCompromissosAssumidosParaPeriodosFuturosAnoNmais1" type="DecimalS3CP" />
										<xs:element name="TotalCompromissosAssumidosParaPeriodosFuturosAnoNmais2" type="DecimalS3CP" />
										<xs:element name="TotalCompromissosAssumidosParaPeriodosFuturosAnoNmais3" type="DecimalS3CP" />
										<xs:element name="TotalCompromissosAssumidosParaPeriodosFuturosAnoNmais4" type="DecimalS3CP" />
										<xs:element name="TotalCompromissosAssumidosParaPeriodosFuturosAnosSeguintes" type="DecimalS3CP" />
										<xs:element name="TotalObrigacoesParaPeriodosFuturosAnoNmais1" type="DecimalS3CP" />
										<xs:element name="TotalObrigacoesParaPeriodosFuturosAnoNmais2" type="DecimalS3CP" />
										<xs:element name="TotalObrigacoesParaPeriodosFuturosAnoNmais3" type="DecimalS3CP" />
										<xs:element name="TotalObrigacoesParaPeriodosFuturosAnoNmais4" type="DecimalS3CP" />
										<xs:element name="TotalObrigacoesParaPeriodosFuturosAnosSeguintes" type="DecimalS3CP" />
									</xs:sequence>
								</xs:complexType>
							</xs:element>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="Registos">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="Registo" maxOccurs="unbounded">
								<xs:complexType>
									<xs:sequence>
										<xs:element name="ID_Registo" type="InteiroMaiorQueZero" />
										<xs:element name="TipoOrcamento" type="ValoresParaTipoOrcamento" />
										<xs:element name="Funcional" type="StringNum3" />
										<xs:element name="Programa" type="StringAlfaNum3" />
										<xs:element name="Medida"  type="StringNum3" />
										<xs:element name="FonteFinanciamento" type="StringNum3" />
										<xs:element name="Economica"  type="StringAlfaNum10" />
										<xs:element name="Atividade"  type="StringNum3" />
										<!--preencher com 000 caso não se aplique-->
										<xs:element name="Projeto"  type="StringAlfaNum5" />
										<!--preencher com 00000 caso não se aplique-->
										<xs:element name="TipoReceitaDespesa" type="xs:integer" />
										<!-- Consultar tabela de Tipos de Receita ou Despesa "TipoReceitaDespesa.xml" -->
										<xs:element name="DespesasPorPagarPeriodosAnteriores" type="DecimalS3CP" />
										<xs:element name="DotacoesCorrigidas" type="DecimalS3CP" />
										<xs:element name="Cativos" type="DecimalS3CP" />
										<xs:element name="Descativos" type="DecimalS3CP" />
										<xs:element name="DotacoesDisponiveis" type="DecimalS3CP" />
										<xs:element name="Cabimentos" type="DecimalS3CP" />
										<xs:element name="Compromissos" type="DecimalS3CP" />
										<xs:element name="Obrigacoes" type="DecimalS3CP" />
										<xs:element name="DespesasPagasBrutas" type="DecimalS3CP" />
										<xs:element name="ReposicoesAbatidasAosPagamentosEmitidas" type="DecimalS3CP" />
										<xs:element name="ReposicoesAbatidasAosPagamentosRecebidas" type="DecimalS3CP" />
										<xs:element name="DespesasPagasLiquidasDePeriodosAnteriores" type="DecimalS3CP" />
										<xs:element name="DespesasPagasLiquidasDoPeriodoCorrente" type="DecimalS3CP" />
										<xs:element name="DespesasPagasLiquidasTotal" type="DecimalS3CP" />
										<xs:element name="CompromissosATransitar" type="DecimalS3CP" />
										<xs:element name="ObrigacoesPorPagar" type="DecimalS3CP" />
										<xs:element name="CompromissosAssumidosParaPeriodosFuturosAnoNmais1" type="DecimalS3CP" />
										<xs:element name="CompromissosAssumidosParaPeriodosFuturosAnoNmais2" type="DecimalS3CP" />
										<xs:element name="CompromissosAssumidosParaPeriodosFuturosAnoNmais3" type="DecimalS3CP" />
										<xs:element name="CompromissosAssumidosParaPeriodosFuturosAnoNmais4" type="DecimalS3CP" />
										<xs:element name="CompromissosAssumidosParaPeriodosFuturosAnosSeguintes" type="DecimalS3CP" />
										<xs:element name="ObrigacoesParaPeriodosFuturosAnoNmais1" type="DecimalS3CP" />
										<xs:element name="ObrigacoesParaPeriodosFuturosAnoNmais2" type="DecimalS3CP" />
										<xs:element name="ObrigacoesParaPeriodosFuturosAnoNmais3" type="DecimalS3CP" />
										<xs:element name="ObrigacoesParaPeriodosFuturosAnoNmais4" type="DecimalS3CP" />
										<xs:element name="ObrigacoesParaPeriodosFuturosAnosSeguintes" type="DecimalS3CP" />
									</xs:sequence>
								</xs:complexType>
							</xs:element>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
</xs:schema>