<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:cm="http://www.minefi.gouv.fr/cp/helios/pes_v2/commun" xmlns:xs="http://www.w3.org/2001/XMLSchema">
	<xs:import namespace="http://www.minefi.gouv.fr/cp/helios/pes_v2/commun" schemaLocation="Class_SchemasCommuns.xsd"/>
	<xs:include schemaLocation="Class_FacturePESIndiv.xsd"/>
	<xs:include schemaLocation="Class_Tiers.xsd"/>
	<xs:include schemaLocation="Class_Nomenclature.xsd"/>
	<xs:complexType name="TNomenclatureFacture">
		<xs:sequence>
			<xs:element name="NomenclatureProduit" type="TNomenclature" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Nomenclature des rubriques de Facturation (nécessaire en cas d'état de facturation collectif)</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="NomenclatureNature" type="TNomenclature" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Nomenclature des Code Natures (catégorisation préalable à l'imputation budgétaire)</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="NomenclatureBudget" type="TNomenclature" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Nomenclature des Budgets</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="TLigneRepartition">
		<xs:sequence>
			<xs:element name="Libelle" type="cm:Base_Texte100"/>
			<xs:element name="Code" type="cm:Base_Texte24">
				<xs:annotation>
					<xs:documentation>code Nature</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="CodeFonction" type="cm:Base_Texte24" minOccurs="0">
				<xs:annotation>
					<xs:documentation>dans le cas d'une imputation par fonction</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="CodeBudget" type="cm:Base_Texte24" minOccurs="0">
				<xs:annotation>
					<xs:documentation>dans le cas d'une imputation multi-budget</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="Mt" type="cm:Base_Montant"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="TRepartitionParNature">
		<xs:sequence>
			<xs:element name="Repartition" type="TLigneRepartition" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="TPESFacture">
		<xs:sequence>
			<xs:element name="IdVer" type="cm:Base_Dec2">
				<xs:annotation>
					<xs:documentation>Numéro de version (exemple 1.0)</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="Annee" type="cm:Base_Annee"/>
			<xs:element name="NumSequence" type="cm:Base_Num4" minOccurs="0">
				<xs:annotation>
					<xs:documentation>En cas d'émission périodique, indique le numéro de la séquence</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="TypeFact" type="TTypeFacture" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Type de Facturation</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="Date" type="cm:Base_Date">
				<xs:annotation>
					<xs:documentation>Date d'émission de la facture ou de l'état de facturation</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="Emetteur" type="TTiers">
				<xs:annotation>
					<xs:documentation>Informations sur l'emetteur. C'est un tiers de type 20</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="Tiers" type="TTiers" minOccurs="0" maxOccurs="11">	<!-- il n'y a que 13 types de tiers -->
				<xs:annotation><xs:documentation>Les autres tiers de l'etat de facturation qui sont communs a toutes les factures</xs:documentation></xs:annotation>
			</xs:element>
			<xs:element name="FactureIndiv" type="TFacturePESIndiv" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Données individuelles de facturation (par défaut une seule facture individuelle) - (état de facturation collectif : plusieurs factures individuelles)</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="Nomenclatures" type="TNomenclatureFacture">
				<xs:annotation>
					<xs:documentation>Nomenclatures utilisees (Paramétrage du progiciel)
- en cas d'évolution des nomenclatures, les anciens codes doivent être précisés (de façon incrémentale)</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="RepartitionParNature" type="TRepartitionParNature" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Repartition des dépenses par Nature (et budget le cas échéant)</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
</xs:schema>
