<?xml version="1.0" encoding="UTF-8"?>
<xs:schema attributeFormDefault="unqualified"
	elementFormDefault="qualified"
	targetNamespace="http://calcul.commun.serviWeb.soltim.com/publics"
	xmlns:xs="http://www.w3.org/2001/XMLSchema"
	xmlns:stn_1="http://calcul.commun.serviWeb.soltim.com/publics">

	<xs:element name="parametresCalcul" type="stn_1:parametresCalcul"/>
	<xs:complexType name="parametresCalcul">
		<xs:sequence>
			<xs:element type="xs:int" name="Type"/>
			<xs:element type="xs:string" name="Adhesion"/>
			<xs:element type="xs:string" name="CodeSocieteUtilisatrice"/>
			<xs:element type="xs:date" name="DateReception" nillable="true"/>
			<xs:element type="xs:string" name="IdGestionnaire" nillable="true"/>
			<xs:element name="Beneficiaire" type="stn_1:Beneficiaire" nillable="true"/>
			<xs:element name="Tiers" type="stn_1:Tiers" nillable="true"/>
			<xs:element type="xs:date" name="DatePecExterne"  nillable="true"/>
			<xs:element type="xs:date" name="DateFinValidite" nillable="true"/>
			<xs:element type="xs:string" name="NumeroPecExterne" nillable="true"/>
			<xs:element type="xs:string" name="CircuitTP" nillable="true"/>
			<xs:element type="xs:string" name="Domaine" nillable="true"/>
			
	    	<!-- début : FAM 21/12/2012 -->
			<xs:element type="xs:string" name="NumeroPecPFGR" nillable="true"/>
			<!-- fin : FAM 21/12/2012 -->

	    	<!-- début : VMO 12/08/2015 -->
			<xs:element type="xs:string" name="NumeroDossierTPO" nillable="true"/>
			<!-- fin :  VMO 12/08/2015 -->
			
			<!-- début : FAM 23/05/2016 -->
			<xs:element type="xs:string" name="IndicateurChangementVue" nillable="true"/>
			<!-- fin : FAM 23/05/2016  -->
			
			<!-- début : VMO 02/05/2018 -->
			<xs:element type="xs:string" name="NumPrescripteur" minOccurs="0" maxOccurs="1" nillable="true"/>			
			<xs:element type="xs:date" name="DatePrescription" minOccurs="0" maxOccurs="1" nillable="true"/>			
			<!-- fin : VMO 02/05/2018 -->
						
			<xs:element type="xs:date" name="DateEntree" nillable="true"/>
			<xs:element type="xs:date" name="DateAccident" nillable="true"/>
			<xs:element minOccurs="1" type="stn_1:Acte" name="Acte" maxOccurs="unbounded"/>

			<!-- début : VTO 10/07/2019 -->
			<xs:element type="xs:string" name="PanierEquipementIntention" minOccurs="0" maxOccurs="1" nillable="true"/>
			<xs:element type="xs:string" name="PanierEquipementDemande" minOccurs="0" maxOccurs="1" nillable="true"/>
			<xs:element type="xs:string" name="CodeMotifDerogation" minOccurs="0" maxOccurs="1" nillable="true"/>
			<!-- fin : VTO 10/07/2019  -->
		</xs:sequence>
	</xs:complexType>

	<xs:element name="Beneficiaire" type="stn_1:Beneficiaire"/>
	<xs:complexType name="Beneficiaire">
		<xs:sequence>
			<xs:element type="xs:long" name="NumperBeneficiaire" nillable="true"/>
			<xs:element type="xs:string" name="IdExterneBeneficiaire" nillable="true"/>
			<xs:element type="xs:string" name="Nom" nillable="true"/>
			<xs:element type="xs:string" name="Prenom" nillable="true"/>
			<xs:element type="xs:string" name="NumeroInsee" nillable="true"/>
			<xs:element type="xs:int" name="Rang" nillable="true"/>
			<xs:element type="xs:string" name="DateNaissance" nillable="true"/>
		</xs:sequence>
	</xs:complexType>

	<xs:element name="Tiers" type="stn_1:Tiers"/>
	<xs:complexType name="Tiers" >
		<xs:sequence>
			<xs:element type="xs:string" name="Numero" nillable="true"/>
			<xs:element type="xs:string" name="RaisonSociale" nillable="true"/>
			<xs:element type="xs:string" name="Nom" nillable="true"/>
			<xs:element type="xs:string" name="Prenom" nillable="true"/>
			<xs:element type="xs:string" name="Reseau" nillable="true"/>
            <xs:element name="Adresse" nillable="true">
            	<xs:complexType>
                	<xs:sequence>
                   		<xs:element type="xs:string" name="Adresse1" nillable="true"/>
	                   <xs:element type="xs:string" name="Adresse2" nillable="true"/>
	                   <xs:element type="xs:string" name="Adresse3" nillable="true"/>
	                   <xs:element type="xs:string" name="CodePostal" nillable="true"/>
	                   <xs:element type="xs:string" name="Ville" nillable="true"/>
	                </xs:sequence>
	            </xs:complexType>
	        </xs:element>
	        <xs:element name="Rib" nillable="true">
	         	<xs:complexType>
	            	<xs:sequence>
	                   <xs:element type="xs:string" name="Intitule" nillable="true"/>
	                   <xs:element type="xs:string" name="NumeroBanque" nillable="true"/>
	                   <xs:element type="xs:string" name="NumeroGuichet" nillable="true"/>
	                   <xs:element type="xs:string" name="NumeroCompte" nillable="true"/>
	                   <xs:element type="xs:string" name="Cle" nillable="true"/>
	                </xs:sequence>
	            </xs:complexType>
	        </xs:element>
		</xs:sequence>
	</xs:complexType>

	<xs:element name="Acte" type="stn_1:Acte"/>
	<xs:complexType name="Acte">
		<xs:sequence>
			<xs:element type="xs:int" name="NumeroOrdre"/>
			<xs:element type="xs:date" name="DateDebutSoin"/>
			<xs:element type="xs:date" name="DateFinSoin" nillable="true"/>
			<xs:element type="xs:string" name="CodeActe"/>
			<xs:element type="xs:string" name="OrigineActe" nillable="true"/>
			<xs:element type="xs:string" name="CodeActeBo" nillable="true"/>
			<xs:element type="xs:string" name="CodeConvention" nillable="true"/>
			<xs:element type="xs:int" name="NbActes"/>
			<xs:element type="xs:double" name="CoeffActe"/>
			<xs:element type="xs:double" name="BaseRo"/>
			<xs:element type="xs:int" name="TauxRo"/>
			<xs:element type="xs:double" name="MntAutreMutuelle" nillable="true"/>
			<xs:element type="xs:double" name="RembRo" nillable="true"/>
			<xs:element type="xs:double" name="RembRcPrecalcule" nillable="true"/>
			<xs:element type="xs:double" name="FraisReels"/>
			<!-- 07/12/2013 -->
			<xs:element type="xs:double" name="PrixOpposabilite" nillable="true"/>
			<xs:element type="xs:double" name="FraisReelsSystemExterne" nillable="true"/>
			<xs:element type="xs:double" name="RembRc" nillable="true"/>
			<xs:element type="xs:double" name="RembRcFinal" nillable="true"/>
			<xs:element type="xs:string" name="MotifForcage" nillable="true"/>
            <xs:element type="xs:string" name="Libelle" nillable="true"/>
            <xs:element type="xs:int" name="Warning" nillable="true"/>
            <xs:element type="xs:int" name="IndLigneReserve" nillable="true"/>
            <xs:element type="xs:int" name="LigneLiee" nillable="true"/>
			<xs:element type="xs:boolean" name="IndicCodeLPP" nillable="true"/>
			<xs:element minOccurs="0" type="stn_1:DonneesMedicalisees" nillable="true"	name="DonnesMedicalisees" maxOccurs="unbounded"/>
			
			<!-- début : VMO 06/02/2013 -->
			<xs:element minOccurs="0" type="stn_1:DonneesMonture" nillable="true"	name="DonneesMonture" maxOccurs="1"/>
			<xs:element minOccurs="0" type="stn_1:DonneesVerre" nillable="true"	name="Donneesverre" maxOccurs="1"/>
			<xs:element minOccurs="0" type="stn_1:DonneesLentille" nillable="true"	name="DonneesLentille" maxOccurs="1"/>
			<!-- fin : VMO 06/02/2013 -->
			
			<!-- début : VMO 11/08/2015 -->
			<xs:element minOccurs="0" type="stn_1:DonneesDentaire" nillable="true"	name="DonneesDentaire" maxOccurs="1"/>
			<!-- fin : VMO 11/08/2015 -->			
			
			<!-- début : FAM 15/10/2013 -->
			<xs:element type="xs:string" name="CodeOffreCommerciale" nillable="true"/>
			<!-- fin : FAM 15/10/2013 -->
			
			<!-- début : FAM 23/05/2016 -->
			<xs:element type="xs:string" name="CodeEquipement" nillable="true"/>
			<xs:element type="xs:string" name="LibelleActe" nillable="true"/>
			<!-- fin : FAM 23/05/2016  -->
			
		
			<!-- début : VTO 10/07/2019 -->
			<xs:element type="xs:string" name="CodeClasseActe" minOccurs="0" maxOccurs="1" nillable="true"/>
			<!-- fin : VTO 10/07/2019  -->
		
		</xs:sequence>
	</xs:complexType>

	<xs:element name="DonneesMedicalisees" type="stn_1:DonneesMedicalisees"/>
	<xs:complexType name="DonneesMedicalisees">
		<xs:sequence>
			<xs:element type="xs:string" name="NatureAssurance" nillable="true"/>
			<xs:element type="xs:string" name="DentNumero" nillable="true" maxOccurs="unbounded"/>
			<xs:element type="xs:string" name="DentMateriau" nillable="true"/>
			<xs:element type="xs:string" name="TypePrestaProth" nillable="true"/>	
			<xs:element type="xs:string" name="CodePrestation" nillable="true"/>	
			<xs:element type="xs:double" name="OptSphere" nillable="true"/>
			<xs:element type="xs:double" name="OptCylindre" nillable="true"/>
			<xs:element type="xs:double" name="OptDioptrie" nillable="true"/>
			<xs:element type="xs:string" name="OptTypeRenouvLentille" nillable="true"/>
            <xs:element type="xs:string" name="OptTypeLentille" nillable="true"/>
			<xs:element type="xs:string" name="HospiDMT" nillable="true"/>
			<xs:element type="xs:string" name="HospiCodeMCO" nillable="true"/>
			<xs:element type="xs:string" name="HospiModeTraitement" nillable="true"/>
		</xs:sequence>
	</xs:complexType>
	
	<!-- début : VMO 06/02/2013 -->
	<xs:element name="DonneesMonture" type="stn_1:DonneesMonture"/>
	<xs:complexType name="DonneesMonture">
		<xs:sequence>
			<xs:element type="xs:string" name="MarqueMonture" nillable="true"/>
			<xs:element type="xs:string" name="ModeleMonture" nillable="true"/>
			<xs:element type="xs:string" name="MontageMonture" nillable="true"/>
			<xs:element type="xs:string" name="MatiereMonture" nillable="true"/>
		</xs:sequence>
	</xs:complexType>	
	
	<xs:element name="DonneesVerre" type="stn_1:DonneesVerre"/>
	<xs:complexType name="DonneesVerre">
		<xs:sequence>
			<xs:element type="xs:string" name="CodeVerre" nillable="true"/>			
			<xs:element type="xs:double" name="AdditionVerre" nillable="true"/>
			<xs:element type="xs:double" name="DiametreVerre" nillable="true"/>
			<xs:element type="xs:double" name="PrismeVerre" nillable="true"/>
			<xs:element type="xs:string" name="TeinteSSVerre" nillable="true"/>
			<xs:element type="xs:string" name="FabriquantVerre" nillable="true"/>			
			<xs:element type="xs:string" name="MarqueVerre" nillable="true"/>
			<xs:element type="xs:string" name="ModeleVerre" nillable="true"/>
			<xs:element type="xs:string" name="TypeRenouvellement" nillable="true"/>
			<xs:element type="xs:string" name="MotifRenouvellement" nillable="true"/>	
			<xs:element type="xs:string" name="TypeVerre" nillable="true"/>
			<xs:element type="xs:string" name="IndiceVerre" nillable="true"/>
			<xs:element type="xs:string" name="PlageIndiceVerre" nillable="true"/>			
			<xs:element type="xs:string" name="SurfaceVerre" nillable="true"/>	
			<xs:element type="xs:string" name="MateriauVerre" nillable="true"/>			
			<xs:element minOccurs="1" type="stn_1:TraitementsVerre" name="TraitementsVerre"
				maxOccurs="unbounded"/>
				
			<!-- début : FAM 23/05/2016 -->
			<xs:element type="xs:string" name="AxeVerre" nillable="true"/>
			<xs:element type="xs:string" name="TypeVision" nillable="true"/>
			<!-- début : VTO 10/07/2019 -->
			<xs:element type="xs:string" name="CodeCategorieVerre" minOccurs="0" maxOccurs="1" nillable="true"/>
			<!-- fin : VTO 10/07/2019  -->
		</xs:sequence>
	</xs:complexType>	
	
	<xs:element name="TraitementsVerre" type="stn_1:TraitementsVerre"/>
	<xs:complexType name="TraitementsVerre">
		<xs:sequence>
			<xs:element type="xs:string" name="TraitementVerre" nillable="true"/>
		</xs:sequence>
	</xs:complexType>	

	<xs:element name="DonneesLentille" type="stn_1:DonneesLentille"/>
	<xs:complexType name="DonneesLentille">
		<xs:sequence>
			<xs:element type="xs:string" name="CodeLentille" nillable="true"/>			
			<xs:element type="xs:double" name="AdditionLentille" nillable="true"/>
			<xs:element type="xs:double" name="DiametreLentille" nillable="true"/>
			<xs:element type="xs:double" name="PrismeLentille" nillable="true"/>
			<xs:element type="xs:double" name="RayonLentille" nillable="true"/>			
			<xs:element type="xs:string" name="OptLentilleSS" nillable="true"/>		
			<xs:element type="xs:string" name="MarqueLentille" nillable="true"/>
			<xs:element type="xs:string" name="ModeleLentille" nillable="true"/>
			<xs:element type="xs:string" name="LentilleJetable" nillable="true"/>
			<xs:element type="xs:string" name="NbrBoiteLentille" nillable="true"/>
			<xs:element type="xs:string" name="NbrLentilleBoite" nillable="true"/>			
		</xs:sequence>
	</xs:complexType>	
	
	<!-- fin : VMO 06/02/2013 -->
	
	<!-- début : VMO 11/08/2015 -->
	<xs:element name="DonneesDentaire" type="stn_1:DonneesDentaire"/>
	<xs:complexType name="DonneesDentaire">
		<xs:sequence>
			<xs:element type="xs:double" name="DentNombre" nillable="true"/>
			<xs:element type="xs:double" name="DentaireType" nillable="true"/>
			<xs:element type="xs:double" name="ActeOpposable" nillable="true"/>
		</xs:sequence>
	</xs:complexType>		
	<!-- fin : VMO 11/08/2015 -->
	
	<xs:element name="retourCalcul" type="stn_1:retourCalcul"/>
	<xs:complexType name="retourCalcul">
		<xs:sequence>
			<xs:element name="Dossier" type="stn_1:Dossier" minOccurs="1"/>
			<xs:element name="DossierSurco" type="stn_1:DossierSurco" nillable="true"/>
		</xs:sequence>
	</xs:complexType>

	<xs:element name="Dossier" type="stn_1:Dossier"/>
	<xs:complexType name="Dossier">
		<xs:sequence>
			<xs:element type="xs:string" name="NumeroDossierUtil"/>
			<xs:element type="xs:long" name="NumeroDossierInterne"/>
			<xs:element type="xs:string" name="NumeroPecExterne"/>
			<xs:element type="xs:string" name="Adhesion"/>
			<xs:element type="xs:date" name="DateCreation" nillable="true"/>
			<xs:element type="xs:date" name="DateFinValidite" nillable="true"/>
			<xs:element type="xs:double" name="MntTotalRc" nillable="true"/>
			<xs:element type="xs:double" name="MntTotalRcFinal"/>
			<xs:element type="xs:int" name="Etat"/>
			<xs:element type="xs:int" name="EtatPecDevis"/>
			<xs:element type="xs:string" name="MotifRefus"/>
			
			<!-- début : FAM 21/12/2012 -->
			<xs:element type="xs:string" name="NumeroPecPFGR" nillable="true"/>
			<!-- fin : FAM 21/12/2012 -->
			
			<xs:element type="xs:date" name="DateEntree" nillable="true"/>
			<xs:element type="xs:date" name="DateAccident" nillable="true"/>
			<xs:element minOccurs="1" type="stn_1:Acte" name="Acte"
				maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>

	<xs:element name="DossierSurco" type="stn_1:DossierSurco"/>
	<xs:complexType name="DossierSurco">
		<xs:sequence>
			<xs:element type="xs:string" name="NumeroDossierUtil"/>
			<xs:element type="xs:long" name="NumeroDossierInterne"/>
			<xs:element type="xs:string" name="NumeroPecExterne"/>
			<xs:element type="xs:string" name="Adhesion"/>
			<xs:element type="xs:date" name="DateCreation" nillable="true"/>
			<xs:element type="xs:date" name="DateFinValidite" nillable="true"/>
			<xs:element type="xs:double" name="MntTotalRc" nillable="true"/>
			<xs:element type="xs:double" name="MntTotalRcFinal"/>
			<xs:element type="xs:int" name="Etat"/>
			<xs:element type="xs:int" name="EtatPecDevis"/>
			<xs:element type="xs:string" name="MotifRefus"/>
			<xs:element type="xs:date" name="DateEntree" nillable="true"/>
			<xs:element type="xs:date" name="DateAccident" nillable="true"/>			
			<xs:element minOccurs="1" type="stn_1:Acte" name="Acte"
				maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
  
      <xs:element type="stn_1:erreurs" name="Erreurs"/>
      <xs:complexType name="erreurs">
        <xs:sequence>
         <xs:element minOccurs="0" type="stn_1:erreur"
              name="Erreur" maxOccurs="unbounded"/>
        </xs:sequence>
      </xs:complexType>

	<xs:element type="stn_1:erreur" name="Erreur"/>
		<xs:complexType name="erreur">
			<xs:sequence>
				<xs:element type="xs:int" name="Numero"/>
				<xs:element type="xs:string" name="Classe"/>
				<xs:element type="xs:string" name="Exception"/>
				<xs:element type="xs:string" name="Message"/>
				<xs:element type="xs:string" name="Niveau"/>
			</xs:sequence>
		</xs:complexType>

</xs:schema>