<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:stn_1="http://detailContrat.commun.serviWeb.soltim.com/publics"
	targetNamespace="http://detailContrat.commun.serviWeb.soltim.com/publics" elementFormDefault="qualified" attributeFormDefault="unqualified">
	
	<xs:element type="stn_1:parametresDetailContrat" name="parametresDetailContrat" />
	<xs:complexType name="parametresDetailContrat">
		<xs:sequence>
			<xs:element type="xs:string" name="CodeSocieteUtilisatrice" nillable="true" />
			<xs:element type="xs:string" name="Adhesion" nillable="true" />
			<xs:element type="xs:string" name="IdGestionnaire" nillable="true" />
			<xs:element type="stn_1:personne" name="Personne" nillable="true" />
			<xs:element type="xs:string" name="CircuitTP" nillable="true" />
			<!-- début : FAM 21/12/2012 -->
				<xs:element type="xs:string" name="NumeroTiers" minOccurs="0" maxOccurs="1" nillable="true"/>
			<!-- fin : FAM 21/12/2012 -->
			<!-- debut : NICO 01/07/2014 -->
			<xs:element type="xs:date" name="DateReference" minOccurs="0" maxOccurs="1" nillable="true" />
			<!-- fin : NICO 01/07/2014 -->
		</xs:sequence>
	</xs:complexType>

	<xs:element type="stn_1:personne" name="Personne" />
	<xs:complexType name="personne">
		<xs:sequence>
				<xs:element type="xs:string" name="Nom" minOccurs="0" maxOccurs="1" nillable="true"/>
				<xs:element type="xs:boolean" name="RecDebutNom" minOccurs="0" maxOccurs="1" nillable="true"/>
				<xs:element type="xs:string" name="Prenom" minOccurs="0" maxOccurs="1" nillable="true"/>
				<xs:element type="xs:boolean" name="RecDebutPrenom" minOccurs="0" maxOccurs="1" nillable="true"/>
				<xs:element type="xs:string" name="NumeroInsee" minOccurs="0" maxOccurs="1" nillable="true"/>
				<xs:element type="xs:int" name="Rang" minOccurs="0" maxOccurs="1" nillable="true"/>
				<!-- FAM 03/10/2016 : ajustement pour gérer proprement les dates lunaires dans un format de type date -->
				<!-- FAM 03/10/2016 : 1963-07-20+00:00 ou  1963-07-20 acceptés -->
				<xs:element name="DateNaissance" minOccurs="0" maxOccurs="1" nillable="true">
					<xs:simpleType>
						<xs:restriction base="xs:string">
    						<xs:pattern value="[0-9]{4}-[0-9]{2}-[0-9]{2}.*"/>     
  						</xs:restriction>
					</xs:simpleType>
				</xs:element>
				<xs:element type="xs:string" name="CodePostal" minOccurs="0" maxOccurs="1" nillable="true"/>
		</xs:sequence>
	</xs:complexType>

	<xs:element type="stn_1:retourDetailContrat" name="RetourDetailContrat" />
	<xs:complexType name="retourDetailContrat">
		<xs:sequence>
			<xs:element type="stn_1:adhesions" name="Adhesions" />
		</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: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:adhesions" name="Adhesions" />
	<xs:complexType name="adhesions">
		<xs:sequence>
			<xs:element minOccurs="0" type="stn_1:adhesion" name="Adhesion" maxOccurs="unbounded" />
			<xs:element minOccurs="0" type="stn_1:adhesionSurcomp" name="AdhesionSurcomp" maxOccurs="unbounded" />
		</xs:sequence>
	</xs:complexType>

	<xs:element type="stn_1:adhesion" name="Adhesion" />
	<xs:complexType name="adhesion">
		<xs:sequence>
			<xs:element type="xs:string" name="Numero"/>
                <xs:element type="xs:string" name="Type" nillable="true" minOccurs="0" maxOccurs="1"/>
                <xs:element type="xs:string" name="LibelleContratCollectif" nillable="true" minOccurs="0" maxOccurs="1"/>
                <xs:element type="xs:string" name="Etat" nillable="true" minOccurs="0" maxOccurs="1"/>
			<xs:element type="xs:date" name="DateEffet"/>
                <xs:element type="xs:date" name="DateSortie" nillable="true" minOccurs="0" maxOccurs="1"/>
			<xs:element type="xs:string" name="SocieteUtilisatrice"/>
			<xs:element type="xs:string" name="SocieteAperitrice"/>
			<xs:element type="xs:boolean" name="PrestationsBloquees"/>
                <xs:element minOccurs="0"  type="stn_1:periodesBlocagePrestation" 
                			name="PeriodesBlocagePrestation" maxOccurs="unbounded"/>
                <xs:element minOccurs="0"  type="stn_1:option" 
                			name="Option" maxOccurs="unbounded"/>
                <xs:element minOccurs="0"  type="stn_1:circuitTP" 
                			name="CircuitsTP" maxOccurs="unbounded"/>
                <xs:element minOccurs="0"  type="stn_1:beneficiaire" 
                			name="Beneficiaire" maxOccurs="unbounded"/>                			
                <xs:element minOccurs="0"  type="stn_1:intervenant" 
                			name="Intervenant" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>

	<xs:element type="stn_1:adhesionSurcomp" name="AdhesionSurcomp" />
	<xs:complexType name="adhesionSurcomp">
		<xs:sequence>
			<xs:element type="xs:string" name="Numero"/>
                <xs:element type="xs:string" name="Type" nillable="true" minOccurs="0" maxOccurs="1"/>
                <xs:element type="xs:string" name="LibelleContratCollectif" nillable="true" minOccurs="0" maxOccurs="1"/>
                <xs:element type="xs:string" name="Etat" nillable="true" minOccurs="0" maxOccurs="1"/>
			<xs:element type="xs:date" name="DateEffet"/>
                <xs:element type="xs:date" name="DateSortie" nillable="true" minOccurs="0" maxOccurs="1"/>
			<xs:element type="xs:string" name="SocieteUtilisatrice"/>
			<xs:element type="xs:string" name="SocieteAperitrice"/>
			<xs:element type="xs:boolean" name="PrestationsBloquees"/>
                <xs:element minOccurs="0"  type="stn_1:periodesBlocagePrestation" 
                			name="PeriodesBlocagePrestation" maxOccurs="unbounded"/>
                <xs:element minOccurs="0"  type="stn_1:option" 
                			name="Option" maxOccurs="unbounded"/>
                <xs:element minOccurs="0"  type="stn_1:circuitTP" 
                			name="CircuitsTP" maxOccurs="unbounded"/>
                <xs:element minOccurs="0"  type="stn_1:beneficiaire" 
                			name="Beneficiaire" maxOccurs="unbounded"/>                			
                <xs:element minOccurs="0"  type="stn_1:intervenant" 
                			name="Intervenant" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>


	<xs:element type="stn_1:periodesBlocagePrestation" name="PeriodesBlocagePrestation" />
	<xs:complexType name="periodesBlocagePrestation">
		<xs:sequence>
			<xs:element type="xs:date" name="DateDebut" />
			<xs:element type="xs:date" name="DateFin" />
		</xs:sequence>
	</xs:complexType>

	<xs:element type="stn_1:option" name="Option" />
	<xs:complexType name="option">
		<xs:sequence>
			<xs:element type="xs:string" name="Produit" />
			<xs:element type="xs:string" name="GroupeGarantie" />
			<xs:element type="xs:string" name="OptionSouscription" />
		</xs:sequence>
	</xs:complexType>

	<xs:element type="stn_1:circuitTP" name="CircuitTP" />
	<xs:complexType name="circuitTP">
		<xs:sequence>
			<xs:element type="xs:string" name="Code" />
			<xs:element type="xs:string" name="Libelle" />
			<xs:element minOccurs="0" type="stn_1:posteTP" name="posteTP" maxOccurs="unbounded" />
		</xs:sequence>
	</xs:complexType>

	<xs:element type="stn_1:posteTP" name="PosteTP" />
	<xs:complexType name="posteTP">
		<xs:sequence>
			<xs:element type="xs:string" name="Code" />
			<xs:element type="xs:long" name="Taux" />
		</xs:sequence>
	</xs:complexType>

	<xs:element type="stn_1:beneficiaire" name="Beneficiaire" />
	<xs:complexType name="beneficiaire">
		<xs:sequence>
			<xs:element type="xs:long" name="NumeroInterne"/>
			<xs:element type="xs:string" name="NomUsage"/>
			<xs:element type="xs:string" name="Prenom"/>
                     <xs:element type="xs:string" name="Code" nillable="true" minOccurs="0" maxOccurs="1"/>
                     <xs:element type="xs:string" name="LienFamille" nillable="true" minOccurs="0" maxOccurs="1"/>
			<xs:element type="xs:date" name="DateNaissance"/>
                     <xs:element type="xs:date" name="DateDeces" nillable="true" minOccurs="0" maxOccurs="1"/>
			<xs:element type="xs:string" name="DateNaissanceSS"/>
			<xs:element type="xs:int" name="RangNaissanceSS"/>
			<xs:element type="xs:string" name="NumeroSS"/>
			<xs:element type="xs:string" name="CleSS"/>
                     <xs:element type="xs:date" name="DateEffet" nillable="true" minOccurs="0" maxOccurs="1"/>
                     <xs:element type="xs:date" name="DateSortie" nillable="true" minOccurs="0" maxOccurs="1"/>
                     <xs:element type="xs:string" name="EmetteurNoemie" nillable="true" minOccurs="0" maxOccurs="1"/>
                     <xs:element type="xs:string" name="OrganismeAffiliation" nillable="true" minOccurs="0" maxOccurs="1"/>
                     <xs:element type="xs:string" name="GrandRegime" nillable="true" minOccurs="0" maxOccurs="1"/>
                     <xs:element type="xs:string" name="RegimeAM" nillable="true" minOccurs="0" maxOccurs="1"/>
                     <xs:element type="xs:date" name="DateDebutTP" nillable="true"  minOccurs="0" maxOccurs="1"/>
                     <xs:element type="xs:date" name="DateFinTP" nillable="true"  minOccurs="0" maxOccurs="1"/>

			<!-- début : FAM 21/12/2012 -->
					<xs:element type="xs:string" name="Contrat" nillable="true"  minOccurs="0" maxOccurs="1"/>
			<!-- fin : FAM 21/12/2012 -->

			<!-- début : VMO 11/08/2015 -->
					<xs:element type="xs:string" name="OffreBeneficiaire" nillable="true"  minOccurs="0" maxOccurs="1"/>
			<!-- fin : VMO 11/08/2015 -->

			<xs:element minOccurs="0" type="stn_1:idExterne" name="IdExterne" maxOccurs="unbounded" />
			<xs:element minOccurs="0" type="stn_1:rattachementSS" name="RattachementSS" maxOccurs="unbounded" />
			<xs:element minOccurs="0" type="stn_1:adressePrestation" name="AdressePrestation" maxOccurs="unbounded" />
			<xs:element minOccurs="0" type="stn_1:garantie" name="Garantie" maxOccurs="unbounded" />


		</xs:sequence>
	</xs:complexType>

	<xs:element type="stn_1:idExterne" name="IdExterne" />
	<xs:complexType name="idExterne">
		<xs:sequence>
			<xs:element type="xs:string" name="Identifiant" />
		</xs:sequence>
	</xs:complexType>

	<xs:element type="stn_1:rattachementSS" name="RattachementSS" />
	<xs:complexType name="rattachementSS">
		<xs:sequence>
			<xs:element type="xs:long" name="NumeroInterne" />
			<xs:element minOccurs="0" type="stn_1:idExterne" name="IdExterne" maxOccurs="unbounded" />
		</xs:sequence>
	</xs:complexType>

	<xs:element type="stn_1:adressePrestation" name="AdressePrestation" />
	<xs:complexType name="adressePrestation">
		<xs:sequence>
                    <xs:element type="xs:string" name="Designation1" nillable="true"  minOccurs="0" maxOccurs="1"/>
                    <xs:element type="xs:string" name="Designation2" nillable="true"  minOccurs="0" maxOccurs="1"/>
                    <xs:element type="xs:string" name="Localisation1" nillable="true"  minOccurs="0" maxOccurs="1"/>
                    <xs:element type="xs:string" name="Localisation2" nillable="true"  minOccurs="0" maxOccurs="1"/>
                    <xs:element type="xs:string" name="Localisation3" nillable="true"  minOccurs="0" maxOccurs="1"/>
                    <xs:element type="xs:string" name="CodePostal" nillable="true"  minOccurs="0" maxOccurs="1"/>
                    <xs:element type="xs:string" name="Ville" nillable="true"  minOccurs="0" maxOccurs="1"/>
                    <xs:element type="xs:string" name="Pays" nillable="true"  minOccurs="0" maxOccurs="1"/>
                    <xs:element type="xs:string" name="Telephone" nillable="true"  minOccurs="0" maxOccurs="1"/>
                    <xs:element type="xs:string" name="AdresseMail" nillable="true"  minOccurs="0" maxOccurs="1"/>
		</xs:sequence>
	</xs:complexType>

	<xs:element type="stn_1:garantie" name="Garantie" />
	<xs:complexType name="garantie">
		<xs:sequence>
			<xs:element type="xs:string" name="CodeGarantie" />
			<xs:element type="xs:string" name="TypeGarantie" />
			<xs:element type="xs:string" name="Innovante" />
			<xs:element type="xs:long" name="ValeurDelaiCarence" />
			<xs:element type="xs:string" name="UniteDelaiCarence" />
			<xs:element minOccurs="0" type="stn_1:acte" name="Acte" maxOccurs="unbounded" />
			<xs:element minOccurs="0" type="stn_1:compteur" name="Compteur" maxOccurs="unbounded" />
		</xs:sequence>
	</xs:complexType>

	<xs:element type="stn_1:acte" name="Acte" />
	<xs:complexType name="acte">
		<xs:sequence>
			<xs:element type="xs:string" name="LibelleActe" />
			<xs:element type="xs:string" name="LibelleRegleCalcul" />
			<xs:element type="xs:long" name="ValeurDelaiCarence" />
			<xs:element type="xs:string" name="UniteDelaiCarence" />
		</xs:sequence>
	</xs:complexType>

	<xs:element type="stn_1:compteur" name="Compteur" />
	<xs:complexType name="compteur">
		<xs:sequence>
			<xs:element type="xs:long" name="Numero" />
			<xs:element type="xs:date" name="DateDebutPeriode" />
			<xs:element type="xs:string" name="TypeCompteur" />
			<xs:element type="xs:string" name="ClasseCompteur" />
			<xs:element type="xs:string" name="TypeCumul" />
			<xs:element type="xs:double" name="Consomme" />
			<xs:element type="xs:double" name="Plafond" />
			<xs:element type="xs:double" name="ResteAConsommer" />
		</xs:sequence>
	</xs:complexType>

	<xs:element type="stn_1:intervenant" name="Intervenant" />
	<xs:complexType name="intervenant">
		<xs:sequence>
			<xs:element type="xs:long" name="NumeroInterne" />
			<xs:element type="xs:string" name="NomUsage" />
			<xs:element type="xs:string" name="Prenom" />
			<xs:element type="xs:string" name="Code" />
			<xs:element type="xs:string" name="LienFamille" />
			<xs:element type="xs:date" name="DateNaissance" />
			<xs:element type="xs:date" name="DateDeces" />
			<xs:element type="xs:string" name="DateNaissanceSS" />
			<xs:element type="xs:int" name="RangNaissanceSS" />
			<xs:element type="xs:string" name="NumeroSS" />
			<xs:element type="xs:string" name="CleSS" />
			<xs:element type="xs:string" name="OrganismeAffiliation" />
			<xs:element type="xs:string" name="GrandRegime" />
			<xs:element type="xs:string" name="RegimeAM" />
			<xs:element minOccurs="0" type="stn_1:idExterne" name="IdExterne" maxOccurs="unbounded" />
			<xs:element minOccurs="0" type="stn_1:adressePrestation" name="AdressePrestation" maxOccurs="unbounded" />
		</xs:sequence>
	</xs:complexType>

</xs:schema>