|
<?xml version="1.0" encoding="UTF-8"?>
|
|
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
|
|
attributeFormDefault="unqualified" targetNamespace="http://www.xml.insee.fr/ns/coltrane"
|
|
xmlns="http://www.xml.insee.fr/ns/coltrane" xmlns:co="http://www.xml.insee.fr/ns/coltrane"
|
|
xmlns:xhtml="http://www.w3.org/1999/xhtml" vc:minVersion="1.1"
|
|
xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning">
|
|
<xsd:import namespace="http://www.w3.org/1999/xhtml" schemaLocation="xhtml.xsd"/>
|
|
|
|
|
|
<xsd:annotation>
|
|
<xsd:documentation> Schéma pour la validation des fichiers de personnalisation de Coltrane.
|
|
Détails des mises à jour :
|
|
- 02/09/2019 - Guylène Tandeau - Suite à la création d'un nouveau courrier pour accompagner les questionnaires, ajout de la balise Courrier = Accompagnement en imposant :
|
|
-- si balise Courrier = Accompagnement, alors Questionnaire = Oui
|
|
-- si Questionnaire = Oui alors Courrier = Ouverture, Relance, MED, MEDAR, CNR, CNRAR ou Accompagnement
|
|
- correction de bug : le schéma refuse un courrier Entrée avec un mail Ouverture alors qu'il ne devrait pas (test écrit avec le critère Entrée au lieu de Entrée)
|
|
- 29/04/2019 - Guylène Tandeau - restriction du test [Courrier=(Ouverture ou Entrée)=>1 seule vague] à [Courrier=(Ouverture ou Entrée) et Questionnaire=Non=>1 seule vague] (suite à demande pour ESA)
|
|
- 06/03/2019 - Guylène Tandeau - ajout de la modalité "association" à la liste des possibilités pour LabelUniteEnquetee.
|
|
- 04/02/2019 - Guylène Tandeau - ajout des idPeriode B01 à B06 pour les enquêtes bimensuelles
|
|
- 30/10/2018 - Mathieu Bergonzini - ajout de l'adresse dans la balise Gestionnaires
|
|
- 01/10/2018 - Ophélie Rogel - ajout d'une minOccurs="0" sur le contenu de Groupe pour permettre les Groupe vides pour l'ESA.
|
|
- 21/08/2018 - Ophélie Rogel - Ajout des contraintes suite au nouveau type de traitement Mise à jour
|
|
(contrainte sur balise dans Traitement, dans l'UE (seul Identifiant obligatoire) et dans le Contact : IdeC non vide si modification)
|
|
- 09/08/2018 - Ophélie Rogel - Ajout de contraintes sur le
|
|
<CodeCedex/> : vide ou de longueur 5 avec caractères : 0-9 A-Z + Ajout 0-9 A-Z dans <CodePostal/>
|
|
- 06/06/2018 - Ophélie Rogel - Interdiction du " dans les libellés des RS
|
|
et dans l'adresse (évite les problèmes des " non pairs)
|
|
- 23/04/2018 - Ophélie Rogel -
|
|
Initialisation à partir du schéma complexe d'Eric Sigaud. </xsd:documentation>
|
|
</xsd:annotation>
|
|
|
|
<!--**********************************************
|
|
Eléments racine : Campagne et Traitement
|
|
**********************************************-->
|
|
|
|
<xsd:element name="Campagne">
|
|
<xsd:annotation>
|
|
<xsd:documentation> Elément de plus haut niveau pour les fichiers de personnalisation.
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:complexType>
|
|
<xsd:sequence>
|
|
<xsd:element name="Traitement" type="typeTraitementCampagne" minOccurs="1"
|
|
maxOccurs="1"/>
|
|
<xsd:element ref="Questionnaires" minOccurs="1" maxOccurs="1">
|
|
<xsd:annotation>
|
|
<xsd:documentation> Conteneur pour les "questionnaires" de
|
|
l'échantillon.</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:element>
|
|
</xsd:sequence>
|
|
|
|
<xsd:attribute name="idSource" type="xsd:string" use="required">
|
|
<xsd:annotation>
|
|
<xsd:documentation>Identifiant Coltrane de la source.</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:attribute>
|
|
|
|
<xsd:attribute name="millesime" use="required">
|
|
<xsd:annotation>
|
|
<xsd:documentation>Millésime Coltrane de la campagne ( soit l'année de collecte
|
|
ou dans le cas d'une campagne à cheval sur deux années, la première).
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:simpleType>
|
|
<xsd:restriction base="xsd:int">
|
|
<xsd:minInclusive value="2010"/>
|
|
<xsd:maxInclusive value="2100"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
</xsd:attribute>
|
|
|
|
<xsd:attribute name="idPeriode" type="typeIdCampagne" use="required">
|
|
<xsd:annotation>
|
|
<xsd:documentation>Identifiant de la période de la campagne.</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:attribute>
|
|
|
|
<xsd:attribute name="natureOperation" fixed="import">
|
|
<xsd:annotation>
|
|
<xsd:documentation>Cet attribut est "technique". Il permet de distinguer les
|
|
fichiers d'import de données (valeur="import" dans le cas d'un fichier de
|
|
personnalisation) des autres fichiers en entrée ou en sortie de
|
|
Coltrane.</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:attribute>
|
|
<xsd:assert
|
|
test="
|
|
if (co:Traitement/co:Courrier = ('Ouverture', 'Entrée') and co:Traitement/co:Questionnaire = 'Non') then
|
|
(count(distinct-values(co:Questionnaires//co:Questionnaire/@idVague)) = 1)
|
|
else
|
|
(true())">
|
|
<xsd:annotation>
|
|
<xsd:documentation>Dans le cas d'un courrier d'ouverture ou d'entrée, il faut que le fichier
|
|
ne contienne qu'une seule vague (la date d'édition est calculée suivant la
|
|
date d'ouverture de la vague dans Campagne.xml et elle doit être
|
|
unique).</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:assert>
|
|
<xsd:assert
|
|
test="
|
|
if (co:Traitement/co:Type = ('Initialisation', 'Edition')) then
|
|
(not(co:Questionnaires//co:Questionnaire[not(@idVague) or not(@idModele)]))
|
|
else
|
|
(true())">
|
|
<xsd:annotation>
|
|
<xsd:documentation>Présence obligatoire de la balise idVague et idModele dans le
|
|
cas d'une ouverture ou d'un courrier.</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:assert>
|
|
<xsd:assert
|
|
test="
|
|
if (co:Traitement/co:Type = ('Initialisation', 'Edition')) then
|
|
(not(co:Questionnaires/co:Questionnaire/co:InformationsGenerales//co:UniteEnquetee[not(co:Siren) or not(co:RaisonSociale) or not(co:Adresse) or not(co:LabelUniteEnquetee)]))
|
|
else
|
|
(true())">
|
|
<xsd:annotation>
|
|
<xsd:documentation>Présence obligatoire de toutes les balises pour l'unité enquêtée dans le cas d'une ouverture ou d'un courrier.</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:assert>
|
|
</xsd:complexType>
|
|
|
|
</xsd:element>
|
|
|
|
<xsd:complexType name="typeTraitementCampagne">
|
|
<xsd:annotation>
|
|
<xsd:documentation> Elément technique utilisé pour piloter la chaîne batch Coltrane.
|
|
Pour tous les croisements possibles, se référer à la note Coltrane : N°209/DG75-E220
|
|
du 16 avril 2018 : offre Courriers, mails et questionnaires – Annule et remplace la
|
|
note 747/DG75-E220 du 7 novembre 2017 </xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:sequence>
|
|
<xsd:element name="Type" minOccurs="1" maxOccurs="1">
|
|
<xsd:annotation>
|
|
<xsd:documentation> L'élément est déclaré localement plutôt que globalement, car
|
|
son nom est générique et peut créer des conflits ultérieurement (le nom du
|
|
type associé est lui spécifique). </xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:simpleType>
|
|
<xsd:restriction base="xsd:string">
|
|
<xsd:enumeration value="Initialisation"/>
|
|
<xsd:enumeration value="Edition"/>
|
|
<xsd:enumeration value="Mise à jour"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
</xsd:element>
|
|
<xsd:element name="Courrier" minOccurs="0" maxOccurs="1">
|
|
<xsd:annotation>
|
|
<xsd:documentation> L'élément est déclaré localement plutôt que globalement, car
|
|
son nom est générique et peut créer des conflits ultérieurement (le nom du
|
|
type associé est lui spécifique). </xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:simpleType>
|
|
<xsd:restriction base="xsd:string">
|
|
<xsd:enumeration value="Ouverture"/>
|
|
<xsd:enumeration value="CNR"/>
|
|
<xsd:enumeration value="MED"/>
|
|
<xsd:enumeration value="CNRAR"/>
|
|
<xsd:enumeration value="MEDAR"/>
|
|
<xsd:enumeration value="Remerciement"/>
|
|
<xsd:enumeration value="Entrée"/>
|
|
<xsd:enumeration value="Relance"/>
|
|
<xsd:enumeration value="Sans"/>
|
|
<xsd:enumeration value="Accompagnement"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
</xsd:element>
|
|
<xsd:element name="Mail" minOccurs="0" maxOccurs="1">
|
|
<xsd:annotation>
|
|
<xsd:documentation> L'élément est déclaré localement plutôt que globalement, car
|
|
son nom est générique et peut créer des conflits ultérieurement (le nom du
|
|
type associé est lui spécifique). </xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:simpleType>
|
|
<xsd:restriction base="xsd:string">
|
|
<xsd:enumeration value="Ouverture"/>
|
|
<xsd:enumeration value="Relance"/>
|
|
<xsd:enumeration value="Sans"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
</xsd:element>
|
|
<xsd:element name="Questionnaire" minOccurs="0" maxOccurs="1">
|
|
<xsd:annotation>
|
|
<xsd:documentation> L'élément est déclaré localement plutôt que globalement, car
|
|
son nom est générique et peut créer des conflits ultérieurement (le nom du
|
|
type associé est lui spécifique). </xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:simpleType>
|
|
<xsd:restriction base="xsd:string">
|
|
<xsd:enumeration value="Oui"/>
|
|
<xsd:enumeration value="Non"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
</xsd:element>
|
|
</xsd:sequence>
|
|
<xsd:assert
|
|
test="
|
|
if (co:Type = ('Edition')) then
|
|
(not(co:Courrier = ('Sans') and co:Mail = ('Sans')))
|
|
else
|
|
(true())">
|
|
<xsd:annotation>
|
|
<xsd:documentation> Pas d'édition de rien.</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:assert>
|
|
<xsd:assert
|
|
test="
|
|
if (co:Type = ('Initialisation','Edition')) then
|
|
((co:Courrier and co:Mail and co:Questionnaire))
|
|
else
|
|
(true())">
|
|
<xsd:annotation>
|
|
<xsd:documentation> Les quatre balises sont obligatoire dans le cas d'une édition ou d'une initialisation.</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:assert>
|
|
<xsd:assert
|
|
test="
|
|
if (co:Mail = ('Ouverture') or co:Courrier = ('Ouverture', 'Entrée')) then
|
|
(co:Courrier = ('Ouverture', 'Entrée', 'Sans') and co:Mail = ('Ouverture', 'Sans'))
|
|
else
|
|
(true())">
|
|
<xsd:annotation>
|
|
<xsd:documentation> Correspondance entre Mail et Courrier pour
|
|
l'ouverture.</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:assert>
|
|
<xsd:assert
|
|
test="
|
|
if (co:Mail = ('Relance') or co:Courrier = ('Relance')) then
|
|
(co:Courrier = ('Relance', 'Sans') and co:Mail = ('Relance', 'Sans'))
|
|
else
|
|
(true())">
|
|
<xsd:annotation>
|
|
<xsd:documentation>Correspondance entre Mail et Courrier pour la
|
|
relance.</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:assert>
|
|
<xsd:assert
|
|
test="
|
|
if (co:Type = ('Initialisation')) then
|
|
(co:Courrier = ('Ouverture', 'Entrée', 'Sans') and co:Mail = ('Sans', 'Ouverture'))
|
|
else
|
|
(true())">
|
|
<xsd:annotation>
|
|
<xsd:documentation>Une initialisation ne peut être accompagnée que de courrier et
|
|
mail concernant l'ouverture.</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:assert>
|
|
<xsd:assert
|
|
test="
|
|
if (co:Type = 'Initialisation' and co:Courrier = 'Sans') then
|
|
(co:Questionnaire = 'Non')
|
|
else
|
|
(true())">
|
|
<xsd:annotation>
|
|
<xsd:documentation>Si pas de courrier d'ouverture, pas de génération de
|
|
questionnaire pdf.</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:assert>
|
|
<xsd:assert
|
|
test="
|
|
if (co:Type = 'Edition' and co:Courrier = 'Sans' and co:Mail = 'Relance') then
|
|
(co:Questionnaire = 'Non')
|
|
else
|
|
(true())">
|
|
<xsd:annotation>
|
|
<xsd:documentation>Si pas de questionnaire si mail de relance.</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:assert>
|
|
<xsd:assert
|
|
test="
|
|
if (co:Courrier = ('MED', 'MEDAR', 'CNR', 'CNRAR')) then
|
|
(co:Mail = 'Sans')
|
|
else
|
|
(true())">
|
|
<xsd:annotation>
|
|
<xsd:documentation>Pas de mail si on est dans le cas d'une mise en demeure ou d'un
|
|
constat de non réponse.</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:assert>
|
|
<xsd:assert
|
|
test="
|
|
if (co:Courrier = ('Remerciement')) then
|
|
(co:Mail = 'Sans' and co:Questionnaire = 'Non')
|
|
else
|
|
(true())">
|
|
<xsd:annotation>
|
|
<xsd:documentation>Dans le cas d'un courrier de Remerciement, pas de génération de
|
|
questionnaire et pas de mail possible.</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:assert>
|
|
<xsd:assert
|
|
test="
|
|
if (co:Courrier = ('Accompagnement')) then (co:Questionnaire = 'Oui')
|
|
else
|
|
(true())">
|
|
<xsd:annotation>
|
|
<xsd:documentation>Dans le cas d'un courrier d'accompagnement, il y a forcément un questionnaire.</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:assert>
|
|
<xsd:assert
|
|
test="
|
|
if (co:Questionnaire = ('Oui')) then (co:Courrier = ('Ouverture', 'Relance', 'MED', 'MEDAR', 'CNR', 'CNRAR', 'Accompagnement'))
|
|
else
|
|
(true())">
|
|
<xsd:annotation>
|
|
<xsd:documentation>S'il y a un questionnaire, il y a un courrier d'ouverture, de relance, de MED, de MEDAR, de CNR, de CNRAR ou d'accompagnement.</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:assert>
|
|
</xsd:complexType>
|
|
|
|
|
|
<!--**********************************************
|
|
Eléments structurels : InformationsGenerales
|
|
**********************************************-->
|
|
|
|
<xsd:element name="Questionnaires">
|
|
<xsd:annotation>
|
|
<xsd:documentation>Conteneur pour des Questionnaires.</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:complexType>
|
|
<xsd:sequence>
|
|
<xsd:element ref="Questionnaire" minOccurs="1" maxOccurs="unbounded"/>
|
|
</xsd:sequence>
|
|
</xsd:complexType>
|
|
<xsd:unique name="IdentifiantUE">
|
|
<xsd:annotation>
|
|
<xsd:documentation>Règle d'unicité d'un identifiant UE sur l'ensemble des
|
|
<Questionnaire/> d'un même fichier</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:selector xpath="co:Questionnaire/co:InformationsGenerales/co:UniteEnquetee"/>
|
|
<xsd:field xpath="co:Identifiant"/>
|
|
</xsd:unique>
|
|
|
|
</xsd:element>
|
|
|
|
<xsd:element name="Questionnaire">
|
|
<xsd:annotation>
|
|
<xsd:documentation>Conteneur pour les informations relative à un questionnaire. Un
|
|
questionnaire correspond à un dossier.</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:complexType>
|
|
<xsd:sequence>
|
|
<xsd:element name="Traitement" minOccurs="0" maxOccurs="1">
|
|
<xsd:complexType>
|
|
<xsd:sequence>
|
|
<xsd:element name="Type">
|
|
<xsd:simpleType>
|
|
<xsd:restriction base="xsd:token">
|
|
<xsd:enumeration value="Creation"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
</xsd:element>
|
|
</xsd:sequence>
|
|
</xsd:complexType>
|
|
</xsd:element>
|
|
<xsd:element ref="InformationsGenerales" minOccurs="1" maxOccurs="1"/>
|
|
<xsd:element ref="InformationsPersonnalisees" minOccurs="0" maxOccurs="1"/>
|
|
</xsd:sequence>
|
|
<xsd:attribute name="idModele">
|
|
<xsd:simpleType>
|
|
<xsd:restriction base="xsd:string">
|
|
<xsd:pattern value="([0-9a-zA-Z]{1,})"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
</xsd:attribute>
|
|
<xsd:attribute name="idVague">
|
|
<xsd:simpleType>
|
|
<xsd:restriction base="xsd:string">
|
|
<xsd:pattern value="([0-9]{1,4})"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
</xsd:attribute>
|
|
|
|
</xsd:complexType>
|
|
</xsd:element>
|
|
|
|
<xsd:element name="InformationsGenerales">
|
|
<xsd:annotation>
|
|
<xsd:documentation> C'est le conteneur utilisé pour stocker les informations de contacts
|
|
et d'unité enquêtée. Un certain nombre d'éléments sont attendus (contact, unité
|
|
enquêtée avec adresse, etc.) </xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:complexType>
|
|
<xsd:sequence>
|
|
<xsd:element ref="UniteEnquetee" minOccurs="1" maxOccurs="1">
|
|
<xsd:annotation>
|
|
<xsd:documentation>Le type attendu pour une <UniteEnquetee/> comprend un
|
|
certain nombre d'informations (notamment l'<Adresse/>).
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:element>
|
|
<xsd:element name="Contacts" minOccurs="0" maxOccurs="1">
|
|
<xsd:annotation>
|
|
<xsd:documentation> Conteneur utilisé pour les liste de <Contact/>
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:complexType>
|
|
<xsd:sequence>
|
|
<xsd:element ref="Contact" minOccurs="1" maxOccurs="unbounded"/>
|
|
</xsd:sequence>
|
|
</xsd:complexType>
|
|
</xsd:element>
|
|
<xsd:element ref="Gestionnaires" minOccurs="0" maxOccurs="1"/>
|
|
</xsd:sequence>
|
|
<xsd:assert test="if (not(co:UniteEnquetee/co:Adresse)) then(not(co:Contacts//co:Contact[co:Traitement/co:Type='Creation' and not(co:Adresse)])) else (true())">
|
|
<xsd:annotation>
|
|
<xsd:documentation> Dans le cas d'une création de contact, il faut obligatoirement une adresse : soit celle du contact, soit celle de l'UE. <IdeC/>.
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:assert>
|
|
</xsd:complexType>
|
|
</xsd:element>
|
|
|
|
|
|
<xsd:element name="UniteEnquetee">
|
|
<xsd:annotation>
|
|
<xsd:documentation> Dans un contexte d'import de données, le type attendu pour une
|
|
<UniteEnquetee/> comprend un certain nombre d'informations (notamment l'<Adresse/>).
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:complexType>
|
|
<xsd:all>
|
|
<xsd:element name="Traitement" minOccurs="0" maxOccurs="1">
|
|
<xsd:complexType>
|
|
<xsd:sequence>
|
|
<xsd:element name="Type">
|
|
<xsd:simpleType>
|
|
<xsd:restriction base="xsd:token">
|
|
<xsd:enumeration value="Modification"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
</xsd:element>
|
|
</xsd:sequence>
|
|
</xsd:complexType>
|
|
</xsd:element>
|
|
<xsd:element name="Identifiant" maxOccurs="1" minOccurs="1">
|
|
<xsd:simpleType>
|
|
<xsd:restriction base="xsd:string">
|
|
<xsd:maxLength value="14"/>
|
|
<xsd:pattern value="([A-Z0-9]{1,})"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
</xsd:element>
|
|
<xsd:element name="RaisonSociale" maxOccurs="1" minOccurs="0">
|
|
<xsd:simpleType>
|
|
<xsd:restriction base="stringSansDoubleQuotes">
|
|
<xsd:maxLength value="38"/>
|
|
|
|
<xsd:minLength value="1"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
</xsd:element>
|
|
<xsd:element name="LabelUniteEnquetee" maxOccurs="1" minOccurs="0">
|
|
<xsd:simpleType>
|
|
<xsd:restriction base="xsd:string">
|
|
<xsd:enumeration value="unité"/>
|
|
<xsd:enumeration value="entreprise"/>
|
|
<xsd:enumeration value="établissement"/>
|
|
<xsd:enumeration value="fournisseur"/>
|
|
<xsd:enumeration value="hébergement"/>
|
|
<xsd:enumeration value="groupe"/>
|
|
<xsd:enumeration value="collectivité"/>
|
|
<xsd:enumeration value="association"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
</xsd:element>
|
|
<xsd:element name="Siren" maxOccurs="1" minOccurs="0">
|
|
<xsd:annotation>
|
|
<xsd:documentation>Un SIREN est composé de 9 caractères:un premier qui peut
|
|
commencer par une lettre (majuscule) ou un chiffre et le reste en
|
|
chiffre. </xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:simpleType>
|
|
<xsd:restriction base="xsd:string">
|
|
<xsd:length value="9"/>
|
|
<xsd:pattern value="([A-Z0-9]{1}[0-9]{8})"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
</xsd:element>
|
|
<xsd:element ref="Adresse" minOccurs="0" maxOccurs="1"/>
|
|
</xsd:all>
|
|
</xsd:complexType>
|
|
</xsd:element>
|
|
|
|
|
|
<xsd:element name="Gestionnaires">
|
|
<xsd:annotation>
|
|
<xsd:documentation> Conteneur utilisé pour la liste de <Gestionnaire/> et les
|
|
informations d'adresse et de mail du pool de <Gestionnaire/>. </xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:complexType>
|
|
<xsd:sequence>
|
|
<xsd:element ref="Adresse" minOccurs="0" maxOccurs="1">
|
|
<xsd:annotation>
|
|
<xsd:documentation>
|
|
Adresse du pool de <Gestionnaire/> indiquée dans les courriers et sur les pages d'assistance.
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:element>
|
|
<xsd:element ref="AdresseMessagerie" minOccurs="0" maxOccurs="1">
|
|
<xsd:annotation>
|
|
<xsd:documentation> L'adresse mail du pool de <Gestionnaires/>. C'est cette
|
|
adresse mail qui sera utilisée durant le dialogue d'assistance et dans
|
|
les courriers. </xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:element>
|
|
<xsd:element name="NumeroSVI" minOccurs="0" maxOccurs="1">
|
|
<xsd:annotation>
|
|
<xsd:documentation> C'est quoi le SVI ? Le répondant a un numéro de
|
|
téléphone unique sur son courrier (de type 08**) A/ trois choix
|
|
possibles (invite approximative) : 1. "Vous souhaitez une aide technique
|
|
pour accéder au questionnaire électronique" => dirigé vers Insee Contact
|
|
2. "Vous souhaitez une information complémentaire sur le contenu du
|
|
questionnaire" => 2 et 3 dirigés vers le site de gestion collecte (SSNE,
|
|
PEE, DARES...) 3. "Pour toute autre demande" Si choix 2 ou 3 alors, B/
|
|
une question sera posée à l'appelant (invite approximative) : "Merci de
|
|
taper le code enquête figurant sur la lettre que vous avez reçue". C'est
|
|
un code à trois chiffres du style QQE avec où QQ = code enquête E =
|
|
aiguille vers le numéro du téléphone (NUM) du bureau en charge du
|
|
dossier (interne au site de collecte). </xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:simpleType>
|
|
<xsd:restriction base="xsd:int">
|
|
<xsd:minInclusive value="100"/>
|
|
<xsd:maxInclusive value="999"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
</xsd:element>
|
|
<xsd:element ref="Gestionnaire" minOccurs="0" maxOccurs="unbounded"/>
|
|
</xsd:sequence>
|
|
</xsd:complexType>
|
|
</xsd:element>
|
|
|
|
|
|
|
|
<xsd:element name="Contact">
|
|
<xsd:annotation>
|
|
<xsd:documentation> Type pour les contacts à l'import. </xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:complexType>
|
|
<xsd:all>
|
|
<xsd:element name="Traitement" minOccurs="0" maxOccurs="1">
|
|
<xsd:annotation>
|
|
<xsd:documentation>La balise Traitement permet de modifier les données de
|
|
contact en cours de campagne et de le rendre principal.
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:complexType>
|
|
<xsd:sequence>
|
|
<xsd:element name="Type">
|
|
<xsd:simpleType>
|
|
<xsd:restriction base="xsd:token">
|
|
<xsd:enumeration value="Creation"/>
|
|
<xsd:enumeration value="Modification"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
</xsd:element>
|
|
</xsd:sequence>
|
|
</xsd:complexType>
|
|
</xsd:element>
|
|
<xsd:element name="IdeC" minOccurs="0" maxOccurs="1">
|
|
<xsd:annotation>
|
|
<xsd:documentation>Identifiant du contact composé de 7 caractères et les
|
|
lettres en majuscule. </xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:simpleType>
|
|
<xsd:restriction base="xsd:string">
|
|
<xsd:length value="7"/>
|
|
<xsd:pattern value="[A-Z0-9]{7}"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
</xsd:element>
|
|
<xsd:element name="Civilite" minOccurs="0" maxOccurs="1">
|
|
<xsd:simpleType>
|
|
<xsd:restriction base="xsd:string">
|
|
<xsd:enumeration value=""/>
|
|
<xsd:enumeration value="1"/>
|
|
<xsd:enumeration value="2"/>
|
|
<xsd:enumeration value="3"/>
|
|
<xsd:enumeration value="Non renseigné"/>
|
|
<xsd:enumeration value="Monsieur"/>
|
|
<xsd:enumeration value="Madame"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
</xsd:element>
|
|
<xsd:element name="Nom" type="typeNomPrenom" minOccurs="0" maxOccurs="1"/>
|
|
<xsd:element name="Prenom" type="typeNomPrenom" minOccurs="0" maxOccurs="1"/>
|
|
<xsd:element name="Telephone" type="typeTelFax" minOccurs="0" maxOccurs="1"/>
|
|
<xsd:element name="TelephonePortable" type="typeTelFax" minOccurs="0" maxOccurs="1"/>
|
|
<xsd:element name="FacSimile" type="typeTelFax" minOccurs="0" maxOccurs="1"/>
|
|
<xsd:element name="Fonction" minOccurs="0" maxOccurs="1">
|
|
<xsd:simpleType>
|
|
<xsd:restriction base="xsd:token">
|
|
<xsd:maxLength value="40"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
</xsd:element>
|
|
<xsd:element ref="AdresseMessagerie" minOccurs="0" maxOccurs="1"/>
|
|
<xsd:element ref="Adresse" minOccurs="0" maxOccurs="1"/>
|
|
<xsd:element name="Commentaire" type="xsd:string" minOccurs="0" maxOccurs="1"/>
|
|
<xsd:element name="RaisonSocialeUsuelle" minOccurs="0" maxOccurs="1">
|
|
<xsd:simpleType>
|
|
<xsd:restriction base="stringSansDoubleQuotes">
|
|
<xsd:maxLength value="38"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
</xsd:element>
|
|
</xsd:all>
|
|
<xsd:assert test="if (co:Traitement/co:Type = ('Modification')) then(co:IdeC/text()!='') else (true())">
|
|
<xsd:annotation>
|
|
<xsd:documentation> Contrainte d'une modification de contact : IdeC obligatoire <IdeC/>.
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:assert>
|
|
<xsd:assert test="if (co:Traitement/co:Type = ('Creation')) then(not(co:IdeC)) else (true())">
|
|
<xsd:annotation>
|
|
<xsd:documentation> Contrainte d'une création de contact : pas d'IdeC <IdeC/>.
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:assert>
|
|
</xsd:complexType>
|
|
</xsd:element>
|
|
|
|
|
|
<xsd:element name="Adresse">
|
|
<xsd:annotation>
|
|
<xsd:documentation> Adresse d'une <UniteEnquetee/>, d'un <Contact/> ou de
|
|
<Gestionnaires/>. Une adresse doit être valide selon les critères de LaPoste (cf.
|
|
ci-dessous). </xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:complexType>
|
|
<xsd:all>
|
|
<xsd:element name="NumeroVoie" minOccurs="0" maxOccurs="1">
|
|
<xsd:simpleType>
|
|
<xsd:restriction base="xsd:token">
|
|
<xsd:pattern value="[' ']{0,1}|[0-9]+([ \-]?[à\-]?[ \-]?[0-9]+)*"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
</xsd:element>
|
|
<xsd:element name="IndiceRepetition" minOccurs="0" maxOccurs="1">
|
|
<xsd:simpleType>
|
|
<xsd:union>
|
|
<xsd:simpleType>
|
|
<xsd:restriction base="xsd:token">
|
|
<xsd:enumeration value=""/>
|
|
<xsd:enumeration value="bis"/>
|
|
<xsd:enumeration value="quater"/>
|
|
<xsd:enumeration value="quinquies"/>
|
|
<xsd:enumeration value="ter"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
<xsd:simpleType>
|
|
<xsd:restriction base="xsd:token">
|
|
<xsd:pattern value="[A-Z]"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
</xsd:union>
|
|
</xsd:simpleType>
|
|
</xsd:element>
|
|
<xsd:element name="TypeVoie" type="typeTypeVoie" minOccurs="0" maxOccurs="1"/>
|
|
<xsd:element name="LibelleVoie" minOccurs="0">
|
|
<xsd:simpleType>
|
|
<xsd:restriction base="typeLibelleAdresse">
|
|
<xsd:maxLength value="40"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
</xsd:element>
|
|
<xsd:element name="ComplementAdresse" minOccurs="0" maxOccurs="1">
|
|
<xsd:simpleType>
|
|
<xsd:restriction base="stringSansDoubleQuotes">
|
|
<xsd:maxLength value="38"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
</xsd:element>
|
|
<xsd:element name="MentionSpeciale" minOccurs="0" maxOccurs="1">
|
|
<xsd:simpleType>
|
|
<xsd:restriction base="typeLibelleAdresse">
|
|
<xsd:maxLength value="26"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
</xsd:element>
|
|
|
|
<xsd:element name="CodePostal" nillable="true" minOccurs="0" maxOccurs="1">
|
|
<xsd:simpleType>
|
|
<xsd:restriction base="stringSansDoubleQuotes">
|
|
<xsd:pattern value="[0-9A-Z]{0,5}"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
</xsd:element>
|
|
<xsd:element name="LibelleCommune" minOccurs="0" maxOccurs="1">
|
|
<xsd:simpleType>
|
|
<xsd:restriction base="xsd:token">
|
|
<xsd:maxLength value="32"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
</xsd:element>
|
|
<xsd:element name="BureauDistributeur" minOccurs="0" maxOccurs="1">
|
|
<xsd:simpleType>
|
|
<xsd:restriction base="xsd:token">
|
|
<xsd:maxLength value="32"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
</xsd:element>
|
|
<xsd:element name="CodeCedex" minOccurs="0" maxOccurs="1">
|
|
<xsd:simpleType>
|
|
<xsd:restriction base="stringSansDoubleQuotes">
|
|
<xsd:pattern value="[0-9A-Z]{0}|[0-9A-Z]{5}"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
|
|
</xsd:element>
|
|
<xsd:element name="LibelleCedex" minOccurs="0" maxOccurs="1">
|
|
<xsd:simpleType>
|
|
<xsd:restriction base="xsd:token">
|
|
<xsd:maxLength value="32"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
</xsd:element>
|
|
<xsd:element name="CodeCommune" type="xsd:token" minOccurs="0" maxOccurs="1"/>
|
|
<xsd:element name="LibellePays" type="typeLibellePays" minOccurs="0" maxOccurs="1"/>
|
|
</xsd:all>
|
|
<xsd:assert
|
|
test="
|
|
if (co:LibellePays = 'France' or normalize-space(co:LibellePays) = '') then
|
|
(not(normalize-space(co:CodeCedex/text()) = '' or normalize-space(co:LibelleCedex/text()) = '')) or (not(normalize-space(co:CodePostal/text()) = '') and not(normalize-space(co:LibelleCommune/text()) = '' and normalize-space(co:BureauDistributeur/text()) = ''))
|
|
else
|
|
true()">
|
|
<xsd:annotation>
|
|
<xsd:documentation> Contrainte de validité d'une <Adresse/> : S'il s'agit d'une
|
|
adresse en France, il faut soit un <LibelleCedex/> et un <CodeCedex/>, soit
|
|
un <CodePostal/> et un <LibelleCommune/> ou un <BureauDistributeur/>.
|
|
</xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:assert>
|
|
</xsd:complexType>
|
|
</xsd:element>
|
|
|
|
<xsd:element name="AdresseMessagerie">
|
|
<xsd:simpleType>
|
|
<xsd:restriction base="xsd:token">
|
|
<xsd:maxLength value="80"/>
|
|
<!--ancienne regle, pour revenir en arrière en cas de souci-->
|
|
<!--<xsd:pattern value="[' ']{0,1}|[^\.@ ]([\.]?[^\.@ ]+)*@[^\.@ ]([\.]?[^\.@ ]+)*[\.][^\.@ ]([\.]?[^\.@ ]+)*"/>-->
|
|
<xsd:pattern value="[' ']{0,1}|[a-zA-Z0-9_]+([\.-]{1}[a-zA-Z0-9_]+)*@[a-zA-Z0-9]+([\.-]{1}[a-zA-Z0-9]+)*\.[a-zA-Z]{2,}"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
</xsd:element>
|
|
|
|
<xsd:element name="Gestionnaire">
|
|
<xsd:complexType>
|
|
<xsd:sequence>
|
|
<xsd:element name="Nom" type="typeNomPrenom" minOccurs="0" maxOccurs="1">
|
|
<xsd:annotation>
|
|
<xsd:documentation> Il s'agit du nom d'un gestionnaire, moins contraint que
|
|
le nom d'un contact (d'où la déclaration locale). </xsd:documentation>
|
|
</xsd:annotation>
|
|
</xsd:element>
|
|
<xsd:element name="Prenom" type="typeNomPrenom" minOccurs="0" maxOccurs="1"/>
|
|
<xsd:element name="Telephone" type="typeTelFax" minOccurs="0"/>
|
|
<xsd:element name="TelephonePortable" type="typeTelFax" minOccurs="0"/>
|
|
<xsd:element name="FacSimile" type="typeTelFax" minOccurs="0"/>
|
|
</xsd:sequence>
|
|
</xsd:complexType>
|
|
</xsd:element>
|
|
|
|
<xsd:simpleType name="typeTelFax">
|
|
<xsd:restriction base="xsd:token">
|
|
<xsd:pattern value="((\+|[0-9])[0-9]{0,13})?"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
|
|
<!--***********************************************
|
|
Informations relatives à la personnalisation des questionnaires
|
|
***********************************************-->
|
|
<xsd:element name="InformationsPersonnalisees">
|
|
<xsd:complexType>
|
|
<xsd:annotation>
|
|
<xsd:documentation>C'est le conteneur utilisé pour les informations de
|
|
personnalisation des questionnaires et/ou de réponses des répondants. Il peut
|
|
contenir une liste de groupe ou également directement la liste des variables
|
|
dans les cas les plus simples (la majorité). </xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:choice minOccurs="0" maxOccurs="unbounded">
|
|
<xsd:element ref="Variable" maxOccurs="unbounded"/>
|
|
<xsd:element ref="Groupe" maxOccurs="unbounded"/>
|
|
</xsd:choice>
|
|
</xsd:complexType>
|
|
</xsd:element>
|
|
|
|
<xsd:element name="Groupe">
|
|
<xsd:annotation>
|
|
<xsd:documentation>Un groupe est un conteneur générique permettant de constituer des
|
|
regroupements 'typés' de variables (ou d'autres groupes) et d'y associer d'éventuels
|
|
informations textuelles (libellé, instruction, etc.). L'objectif est de proposer une
|
|
structure générique permettant de couvrir des modèles simples avec envoi d'une liste
|
|
à plat de variables et des modèles plus complexes (EMB notamment) où une
|
|
hiérarchisation complexes des variables est nécessaire, à cause d'une
|
|
personnalisation très fine du questionnaire.</xsd:documentation>
|
|
<xsd:documentation>Il peut contenir soit une liste de variable, soit, respectivement,
|
|
une liste éventuelle de 'Description' (infomations textuelles) et une liste d'autres
|
|
groupes.</xsd:documentation>
|
|
<xsd:documentation>Il possède également comme attribut un 'id' qui permet d'identifier
|
|
le groupe de manière unique (ex: un identifiant d'activité qui est un regroupement
|
|
de variables), et un type qui permet d'identifier précisément la sémantique du
|
|
regroupement (ex: activité).</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:complexType>
|
|
<xsd:sequence>
|
|
<xsd:element maxOccurs="1" minOccurs="0" ref="Libelle"/>
|
|
<xsd:element maxOccurs="unbounded" minOccurs="0" ref="Description"/>
|
|
<xsd:choice>
|
|
<xsd:element minOccurs="0" maxOccurs="unbounded" ref="Groupe"/>
|
|
<xsd:element minOccurs="0" ref="Variable" maxOccurs="unbounded"/>
|
|
</xsd:choice>
|
|
</xsd:sequence>
|
|
<xsd:attribute name="idGroupe" type="xsd:token"/>
|
|
<xsd:attribute name="typeGroupe" type="xsd:token"/>
|
|
</xsd:complexType>
|
|
</xsd:element>
|
|
|
|
<xsd:element name="Variable">
|
|
<xsd:annotation>
|
|
<xsd:documentation>Une variable est un conteneur identifié de valeurs ('ancienne' et
|
|
'nouvelle' par exemple).</xsd:documentation>
|
|
<xsd:documentation>En plus d'être identifiée (utilisation d'identifiants métier en
|
|
général), une variable peut également être typée (inutile ??) et/ou associée à une
|
|
unité de mesure (cas des EMB par ex).</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:complexType>
|
|
<xsd:sequence>
|
|
<xsd:element ref="Valeur" maxOccurs="unbounded" minOccurs="0"/>
|
|
</xsd:sequence>
|
|
<xsd:attribute name="idVariable" type="xsd:token" use="required"/>
|
|
<xsd:attribute name="typeVariable" type="xsd:token"/>
|
|
<xsd:attribute name="unite" type="xsd:token"/>
|
|
</xsd:complexType>
|
|
</xsd:element>
|
|
|
|
<xsd:element name="Description">
|
|
<xsd:annotation>
|
|
<xsd:documentation>Une description est une chaîne texte "typée" (ex: libellé,
|
|
instruction, ...). Elle permet de gérer les personnalisations fines de certains
|
|
questionnaires (EMB), en associant du texte aux différents groupements de
|
|
variables.</xsd:documentation>
|
|
<xsd:documentation>A noter que cette chaîne texte peut contenir des éléments XHTML afin
|
|
de capturer des éventuelles typographies fines (texte en gras, souligné,
|
|
etc.)</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:complexType mixed="true">
|
|
<xsd:choice>
|
|
<xsd:group ref="xhtml:block" minOccurs="0"/>
|
|
</xsd:choice>
|
|
<xsd:attribute name="typeDescription" type="xsd:token"/>
|
|
</xsd:complexType>
|
|
</xsd:element>
|
|
|
|
<xsd:element name="Libelle" type="xsd:token"/>
|
|
|
|
<xsd:element name="Valeur">
|
|
<xsd:annotation>
|
|
<xsd:documentation>Une valeur est une chaîne texte identifiée (inutile ??) et typée
|
|
contenant soit une valeur à initialiser dans un questionnaire, soit une réponse
|
|
extraite.</xsd:documentation>
|
|
<xsd:documentation>Elle a comme attribut un identifiant (inutile ???) et un type (qui
|
|
permet notamment de distinguer les valeurs initiales de celles correspondantes à des
|
|
réponses)</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:complexType>
|
|
<xsd:simpleContent>
|
|
<xsd:extension base="xsd:string">
|
|
<xsd:attribute name="idValeur" type="xsd:string" use="optional"/>
|
|
<xsd:attribute name="type">
|
|
<xsd:simpleType>
|
|
<xsd:restriction base="xsd:string">
|
|
<xsd:enumeration value=""/>
|
|
<xsd:enumeration value="Ancienne"/>
|
|
<xsd:enumeration value="Nouvelle"/>
|
|
<xsd:enumeration value="ancienne"/>
|
|
<xsd:enumeration value="nouvelle"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
</xsd:attribute>
|
|
</xsd:extension>
|
|
</xsd:simpleContent>
|
|
</xsd:complexType>
|
|
</xsd:element>
|
|
|
|
|
|
<!--*************************************************
|
|
Définition des différents types contraignants les valeurs des éléments "feuilles"
|
|
|
|
*************************************************-->
|
|
<xsd:simpleType name="typeNomPrenom">
|
|
<xsd:annotation>
|
|
<xsd:documentation> Le contraintes portant sur les noms et prénoms sont : - Longueur
|
|
maximum 40 - Liste des caractères autorisés
|
|
a-zA-ZÅÀÁÃÉÇÊÂÔØÎÖÏËÄÜÚÛÙÑŒÆÐÈÍÌÓÕßÒÝœæéèêëàáâåãôöòóõøìíîïûùüúñçÿýƒ, plus (sauf en
|
|
premier et en dernier) . - ' " et l'espace </xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:restriction base="xsd:token">
|
|
<xsd:maxLength value="40"/>
|
|
<xsd:pattern
|
|
value="[' ']{0,1}|([a-zA-ZÅÀÁÃÉÇÊÂÔØÎÖÏËÄÜÚÛÙÑŒÆÐÈÍÌÓÕßÒÝœæéèêëàáâåãôöòóõøìíîïûùüúñçÿýƒ]{1}([a-zA-ZÅÀÁÃÉÇÊÂÔØÎÖÏËÄÜÚÛÙÑŒÆÐÈÍÌÓÕßÒÝœæéèêëàáâåãôöòóõøìíîïûùüúñçÿýƒ\.\- ']*[a-zA-ZÅÀÁÃÉÇÊÂÔØÎÖÏËÄÜÚÛÙÑŒÆÐÈÍÌÓÕßÒÝœæéèêëàáâåãôöòóõøìíîïûùüúñçÿýƒ]{1}){0,1})"
|
|
/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
|
|
<xsd:simpleType name="typeIdCampagne">
|
|
<xsd:restriction base="xsd:token">
|
|
<xsd:enumeration value="A00"/>
|
|
<xsd:enumeration value="X00"/>
|
|
<xsd:enumeration value="S01"/>
|
|
<xsd:enumeration value="S02"/>
|
|
<xsd:enumeration value="T01"/>
|
|
<xsd:enumeration value="T02"/>
|
|
<xsd:enumeration value="T03"/>
|
|
<xsd:enumeration value="T04"/>
|
|
<xsd:enumeration value="M01"/>
|
|
<xsd:enumeration value="M02"/>
|
|
<xsd:enumeration value="M03"/>
|
|
<xsd:enumeration value="M04"/>
|
|
<xsd:enumeration value="M05"/>
|
|
<xsd:enumeration value="M06"/>
|
|
<xsd:enumeration value="M07"/>
|
|
<xsd:enumeration value="M08"/>
|
|
<xsd:enumeration value="M09"/>
|
|
<xsd:enumeration value="M10"/>
|
|
<xsd:enumeration value="M11"/>
|
|
<xsd:enumeration value="M12"/>
|
|
<xsd:enumeration value="B01"/>
|
|
<xsd:enumeration value="B02"/>
|
|
<xsd:enumeration value="B03"/>
|
|
<xsd:enumeration value="B04"/>
|
|
<xsd:enumeration value="B05"/>
|
|
<xsd:enumeration value="B06"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
|
|
|
|
<xsd:simpleType name="typeTypeVoie">
|
|
<xsd:restriction base="xsd:token">
|
|
<xsd:enumeration value=""/>
|
|
<xsd:enumeration value="Allée"/>
|
|
<xsd:enumeration value="Avenue"/>
|
|
<xsd:enumeration value="Boulevard"/>
|
|
<xsd:enumeration value="Carrefour"/>
|
|
<xsd:enumeration value="Chaussée"/>
|
|
<xsd:enumeration value="Chemin"/>
|
|
<xsd:enumeration value="Chemin communal"/>
|
|
<xsd:enumeration value="Chemin départemental"/>
|
|
<xsd:enumeration value="Chemin rural"/>
|
|
<xsd:enumeration value="Cheminement"/>
|
|
<xsd:enumeration value="Cité"/>
|
|
<xsd:enumeration value="Corniche"/>
|
|
<xsd:enumeration value="Cours"/>
|
|
<xsd:enumeration value="Descente"/>
|
|
<xsd:enumeration value="Domaine"/>
|
|
<xsd:enumeration value="Ecart"/>
|
|
<xsd:enumeration value="Esplanade"/>
|
|
<xsd:enumeration value="Faubourg"/>
|
|
<xsd:enumeration value="Grand Rue"/>
|
|
<xsd:enumeration value="Halle"/>
|
|
<xsd:enumeration value="Hameau"/>
|
|
<xsd:enumeration value="Impasse"/>
|
|
<xsd:enumeration value="Jetée"/>
|
|
<xsd:enumeration value="Lieu-dit"/>
|
|
<xsd:enumeration value="Lotissement"/>
|
|
<xsd:enumeration value="Marché"/>
|
|
<xsd:enumeration value="Montée"/>
|
|
<xsd:enumeration value="Parvis"/>
|
|
<xsd:enumeration value="Passage"/>
|
|
<xsd:enumeration value="Place"/>
|
|
<xsd:enumeration value="Plaine"/>
|
|
<xsd:enumeration value="Plateau"/>
|
|
<xsd:enumeration value="Porte"/>
|
|
<xsd:enumeration value="Promenade"/>
|
|
<xsd:enumeration value="Quai"/>
|
|
<xsd:enumeration value="Quartier"/>
|
|
<xsd:enumeration value="Résidence"/>
|
|
<xsd:enumeration value="Rocade"/>
|
|
<xsd:enumeration value="Rond-point"/>
|
|
<xsd:enumeration value="Route"/>
|
|
<xsd:enumeration value="Route départementale"/>
|
|
<xsd:enumeration value="Route nationale"/>
|
|
<xsd:enumeration value="Rue"/>
|
|
<xsd:enumeration value="Ruelle"/>
|
|
<xsd:enumeration value="Sente"/>
|
|
<xsd:enumeration value="Sentier"/>
|
|
<xsd:enumeration value="Sente - Sentier"/>
|
|
<xsd:enumeration value="Square"/>
|
|
<xsd:enumeration value="Terrasse"/>
|
|
<xsd:enumeration value="Terre-plein"/>
|
|
<xsd:enumeration value="Traverse"/>
|
|
<xsd:enumeration value="Tertre"/>
|
|
<xsd:enumeration value="Villa"/>
|
|
<xsd:enumeration value="Village"/>
|
|
<xsd:enumeration value="Voie communale"/>
|
|
</xsd:restriction>
|
|
|
|
</xsd:simpleType>
|
|
|
|
<xsd:simpleType name="typeLibelleAdresse">
|
|
<xsd:annotation>
|
|
<xsd:documentation> Liste des caractères autorisés
|
|
0-9a-zA-ZÅÀÁÃÉÇÊÂÔØÎÖÏËÄÜÚÛÙÑŒÆÐÈÍÌÓÕßÒÝœæéèêëàáâåãôöòóõøìíîïûùüúñçÿýƒ, plus (sauf en
|
|
premier et en dernier) . - ' et l'espace </xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:restriction base="xsd:token">
|
|
<xsd:pattern
|
|
value="[' ']{0,1}|([0-9a-zA-ZÅÀÁÃÉÇÊÂÔØÎÖÏËÄÜÚÛÙÑŒÆÐÈÍÌÓÕßÒÝœæéèêëàáâåãôöòóõøìíîïûùüúñçÿýƒ]{1}([0-9a-zA-ZÅÀÁÃÉÇÊÂÔØÎÖÏËÄÜÚÛÙÑŒÆÐÈÍÌÓÕßÒÝœæéèêëàáâåãôöòóõøìíîïûùüúñçÿýƒ\.\- ']*[0-9a-zA-ZÅÀÁÃÉÇÊÂÔØÎÖÏËÄÜÚÛÙÑŒÆÐÈÍÌÓÕßÒÝœæéèêëàáâåãôöòóõøìíîïûùüúñçÿýƒ]{1}))"
|
|
/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
|
|
<xsd:simpleType name="stringSansDoubleQuotes">
|
|
<xsd:annotation>
|
|
<xsd:documentation> Interdiction du double quotes dans les libellés adresses et RS
|
|
(problème des cas de " non pairs...) </xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:restriction base="xsd:string">
|
|
<xsd:pattern value="[^"]*"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
|
|
|
|
|
|
<xsd:simpleType name="typeLibellePays">
|
|
<xsd:restriction base="xsd:token">
|
|
<xsd:enumeration value=""/>
|
|
<xsd:enumeration value="Afghanistan"/>
|
|
<xsd:enumeration value="Afrique du Sud"/>
|
|
<xsd:enumeration value="Albanie"/>
|
|
<xsd:enumeration value="Algérie"/>
|
|
<xsd:enumeration value="Allemagne"/>
|
|
<xsd:enumeration value="Andorre"/>
|
|
<xsd:enumeration value="Angola"/>
|
|
<xsd:enumeration value="Anguilla"/>
|
|
<xsd:enumeration value="Antarctique"/>
|
|
<xsd:enumeration value="Antigua-et-Barbuda"/>
|
|
<xsd:enumeration value="Arabie saoudite"/>
|
|
<xsd:enumeration value="Argentine"/>
|
|
<xsd:enumeration value="Arménie"/>
|
|
<xsd:enumeration value="Aruba"/>
|
|
<xsd:enumeration value="Australie"/>
|
|
<xsd:enumeration value="Autriche"/>
|
|
<xsd:enumeration value="Azerbaïdjan"/>
|
|
<xsd:enumeration value="Bahamas"/>
|
|
<xsd:enumeration value="Bahreïn"/>
|
|
<xsd:enumeration value="Bangladesh"/>
|
|
<xsd:enumeration value="Barbade"/>
|
|
<xsd:enumeration value="Bélarus"/>
|
|
<xsd:enumeration value="Belgique"/>
|
|
<xsd:enumeration value="Belize"/>
|
|
<xsd:enumeration value="Bénin"/>
|
|
<xsd:enumeration value="Bermudes"/>
|
|
<xsd:enumeration value="Bhoutan"/>
|
|
<xsd:enumeration value="Bolivie (État plurinational de)"/>
|
|
<xsd:enumeration value="Bonaire, Saint-Eustache et Saba"/>
|
|
<xsd:enumeration value="Bosnie-Herzégovine"/>
|
|
<xsd:enumeration value="Botswana"/>
|
|
<xsd:enumeration value="Brésil"/>
|
|
<xsd:enumeration value="Brunéi Darussalam"/>
|
|
<xsd:enumeration value="Bulgarie"/>
|
|
<xsd:enumeration value="Burkina Faso"/>
|
|
<xsd:enumeration value="Burundi"/>
|
|
<xsd:enumeration value="Cabo Verde"/>
|
|
<xsd:enumeration value="Cambodge"/>
|
|
<xsd:enumeration value="Cameroun"/>
|
|
<xsd:enumeration value="Canada"/>
|
|
<xsd:enumeration value="Chili"/>
|
|
<xsd:enumeration value="Chine"/>
|
|
<xsd:enumeration value="Chine, région administrative spéciale de Macao"/>
|
|
<xsd:enumeration value="Chypre"/>
|
|
<xsd:enumeration value="Colombie"/>
|
|
<xsd:enumeration value="Comores"/>
|
|
<xsd:enumeration value="Congo"/>
|
|
<xsd:enumeration value="Congo (République démocratique du)"/>
|
|
<xsd:enumeration value="Corée (République de)"/>
|
|
<xsd:enumeration value="Corée (République populaire démocratique de)"/>
|
|
<xsd:enumeration value="Costa Rica"/>
|
|
<xsd:enumeration value="Côte d'Ivoire"/>
|
|
<xsd:enumeration value="Croatie"/>
|
|
<xsd:enumeration value="Cuba"/>
|
|
<xsd:enumeration value="Curaçao"/>
|
|
<xsd:enumeration value="Danemark"/>
|
|
<xsd:enumeration value="Djibouti"/>
|
|
<xsd:enumeration value="Dominique"/>
|
|
<xsd:enumeration value="Égypte"/>
|
|
<xsd:enumeration value="El Salvador"/>
|
|
<xsd:enumeration value="Émirats arabes unis"/>
|
|
<xsd:enumeration value="Équateur"/>
|
|
<xsd:enumeration value="Érythrée"/>
|
|
<xsd:enumeration value="Espagne"/>
|
|
<xsd:enumeration value="Estonie"/>
|
|
<xsd:enumeration value="États-Unis d'Amérique"/>
|
|
<xsd:enumeration value="Éthiopie"/>
|
|
<xsd:enumeration value="Fidji"/>
|
|
<xsd:enumeration value="Finlande"/>
|
|
<xsd:enumeration value="France"/>
|
|
<xsd:enumeration value="Gabon"/>
|
|
<xsd:enumeration value="Gambie"/>
|
|
<xsd:enumeration value="Géorgie"/>
|
|
<xsd:enumeration value="Géorgie du Sud-et-les Îles Sandwich du Sud"/>
|
|
<xsd:enumeration value="Ghana"/>
|
|
<xsd:enumeration value="Gibraltar"/>
|
|
<xsd:enumeration value="Grèce"/>
|
|
<xsd:enumeration value="Grenade"/>
|
|
<xsd:enumeration value="Groenland"/>
|
|
<xsd:enumeration value="Groland"/>
|
|
<xsd:enumeration value="Guadeloupe"/>
|
|
<xsd:enumeration value="Guam"/>
|
|
<xsd:enumeration value="Guatemala"/>
|
|
<xsd:enumeration value="Guernesey"/>
|
|
<xsd:enumeration value="Guinée"/>
|
|
<xsd:enumeration value="Guinée équatoriale"/>
|
|
<xsd:enumeration value="Guinée-Bissau"/>
|
|
<xsd:enumeration value="Guyana"/>
|
|
<xsd:enumeration value="Guyane française"/>
|
|
<xsd:enumeration value="Haïti"/>
|
|
<xsd:enumeration value="Honduras"/>
|
|
<xsd:enumeration value="Hongrie"/>
|
|
<xsd:enumeration value="Île de Man"/>
|
|
<xsd:enumeration value="Île Heard-et-Îles MacDonald"/>
|
|
<xsd:enumeration value="Île Norfolk"/>
|
|
<xsd:enumeration value="Îles Caïmanes"/>
|
|
<xsd:enumeration value="Îles Cocos/ Îles Keeling"/>
|
|
<xsd:enumeration value="Îles Cook"/>
|
|
<xsd:enumeration value="Îles d' Åland"/>
|
|
<xsd:enumeration value="Îles Féroé"/>
|
|
<xsd:enumeration value="Îles Mariannes du Nord"/>
|
|
<xsd:enumeration value="Îles Marshall"/>
|
|
<xsd:enumeration value="Îles mineures éloignées des Etats-Unis"/>
|
|
<xsd:enumeration value="Îles Salomon"/>
|
|
<xsd:enumeration value="Îles Svalbard et Jan Mayen"/>
|
|
<xsd:enumeration value="Îles Turques et Caïques"/>
|
|
<xsd:enumeration value="Îles Vierges américaines"/>
|
|
<xsd:enumeration value="Îles Vierges britanniques"/>
|
|
<xsd:enumeration value="Îles Wallis et Futuna"/>
|
|
<xsd:enumeration value="Inde"/>
|
|
<xsd:enumeration value="Indonésie"/>
|
|
<xsd:enumeration value="Iran (République islamique d')"/>
|
|
<xsd:enumeration value="Iraq"/>
|
|
<xsd:enumeration value="Irlande"/>
|
|
<xsd:enumeration value="Islande"/>
|
|
<xsd:enumeration value="Israël"/>
|
|
<xsd:enumeration value="Italie"/>
|
|
<xsd:enumeration value="Jamaïque"/>
|
|
<xsd:enumeration value="Japon"/>
|
|
<xsd:enumeration value="Jordanie"/>
|
|
<xsd:enumeration value="Kazakhstan"/>
|
|
<xsd:enumeration value="Kenya"/>
|
|
<xsd:enumeration value="Kirghizistan"/>
|
|
<xsd:enumeration value="Kiribati"/>
|
|
<xsd:enumeration value="Koweït"/>
|
|
<xsd:enumeration value="Lao (République démocratique populaire)"/>
|
|
<xsd:enumeration value="Le Jersey"/>
|
|
<xsd:enumeration value="Lesotho"/>
|
|
<xsd:enumeration value="Lettonie"/>
|
|
<xsd:enumeration value="Liban"/>
|
|
<xsd:enumeration value="Libéria"/>
|
|
<xsd:enumeration value="Libye"/>
|
|
<xsd:enumeration value="Liechtenstein"/>
|
|
<xsd:enumeration value="Lituanie"/>
|
|
<xsd:enumeration value="Luxembourg"/>
|
|
<xsd:enumeration value="Luxembourg"/>
|
|
<xsd:enumeration value="Macédoine (Ex-République yougoslave de)"/>
|
|
<xsd:enumeration value="Malaisie"/>
|
|
<xsd:enumeration value="Malawi"/>
|
|
<xsd:enumeration value="Maldives"/>
|
|
<xsd:enumeration value="Mali"/>
|
|
<xsd:enumeration value="Malte"/>
|
|
<xsd:enumeration value="Maroc"/>
|
|
<xsd:enumeration value="Martinique"/>
|
|
<xsd:enumeration value="Maurice"/>
|
|
<xsd:enumeration value="Mauritanie"/>
|
|
<xsd:enumeration value="Mayotte"/>
|
|
<xsd:enumeration value="Mexique"/>
|
|
<xsd:enumeration value="Micronésie (États fédérés de)"/>
|
|
<xsd:enumeration value="Moldova (République de)"/>
|
|
<xsd:enumeration value="Monaco"/>
|
|
<xsd:enumeration value="Monténégro"/>
|
|
<xsd:enumeration value="Montserrat"/>
|
|
<xsd:enumeration value="Mongolie"/>
|
|
<xsd:enumeration value="Mozambique"/>
|
|
<xsd:enumeration value="Myanmar"/>
|
|
<xsd:enumeration value="Namibie"/>
|
|
<xsd:enumeration value="Nauru"/>
|
|
<xsd:enumeration value="Népal"/>
|
|
<xsd:enumeration value="Nicaragua"/>
|
|
<xsd:enumeration value="Niger"/>
|
|
<xsd:enumeration value="Nigéria"/>
|
|
<xsd:enumeration value="Nioué"/>
|
|
<xsd:enumeration value="Norvège"/>
|
|
<xsd:enumeration value="Nouvelle-Calédonie"/>
|
|
<xsd:enumeration value="Nouvelle-Zélande"/>
|
|
<xsd:enumeration value="Oman"/>
|
|
<xsd:enumeration value="Ouganda"/>
|
|
<xsd:enumeration value="Ouzbékistan"/>
|
|
<xsd:enumeration value="Pakistan"/>
|
|
<xsd:enumeration value="Palaos"/>
|
|
<xsd:enumeration value="Palestine (État de)"/>
|
|
<xsd:enumeration value="Panama"/>
|
|
<xsd:enumeration value="Papouasie-Nouvelle-Guinée"/>
|
|
<xsd:enumeration value="Paraguay"/>
|
|
<xsd:enumeration value="Pays-Bas"/>
|
|
<xsd:enumeration value="Pérou"/>
|
|
<xsd:enumeration value="Philippines"/>
|
|
<xsd:enumeration value="Pitcairn"/>
|
|
<xsd:enumeration value="Pologne"/>
|
|
<xsd:enumeration value="Polynésie française"/>
|
|
<xsd:enumeration value="Porto Rico"/>
|
|
<xsd:enumeration value="Portugal"/>
|
|
<xsd:enumeration value="Qatar"/>
|
|
<xsd:enumeration value="République arabe syrienne"/>
|
|
<xsd:enumeration value="République centrafricaine"/>
|
|
<xsd:enumeration value="République dominicaine"/>
|
|
<xsd:enumeration value="République tchèque"/>
|
|
<xsd:enumeration value="République-Unie de Tanzanie"/>
|
|
<xsd:enumeration value="Réunion"/>
|
|
<xsd:enumeration value="Roumanie"/>
|
|
<xsd:enumeration value="Royaume-Uni de Grande-Bretagne et d'Irlande du Nord"/>
|
|
<xsd:enumeration value="Russie (Fédération de)"/>
|
|
<xsd:enumeration value="Rwanda"/>
|
|
<xsd:enumeration value="Sahara occidental"/>
|
|
<xsd:enumeration value="Saint-Barthélemy"/>
|
|
<xsd:enumeration value="Sainte-Hélène"/>
|
|
<xsd:enumeration value="Sainte-Lucie"/>
|
|
<xsd:enumeration value="Saint-Kitts-et-Nevis"/>
|
|
<xsd:enumeration value="Saint-Marin"/>
|
|
<xsd:enumeration value="Saint-Martin (partie française)"/>
|
|
<xsd:enumeration value="Saint-Martin (partie néerlandaise)"/>
|
|
<xsd:enumeration value="Saint-Pierre-et-Miquelon"/>
|
|
<xsd:enumeration value="Saint-Siège (État de la Cité du Vatican)"/>
|
|
<xsd:enumeration value="Saint-Vincent-et-les Grenadines"/>
|
|
<xsd:enumeration value="Samoa"/>
|
|
<xsd:enumeration value="Samoas américaines"/>
|
|
<xsd:enumeration value="Sénégal"/>
|
|
<xsd:enumeration value="Serbie (la)"/>
|
|
<xsd:enumeration value="Seychelles"/>
|
|
<xsd:enumeration value="Sierra Leone"/>
|
|
<xsd:enumeration value="Singapour"/>
|
|
<xsd:enumeration value="Slovaquie"/>
|
|
<xsd:enumeration value="Slovénie"/>
|
|
<xsd:enumeration value="Somalie"/>
|
|
<xsd:enumeration value="Soudan"/>
|
|
<xsd:enumeration value="Soudan du Sud"/>
|
|
<xsd:enumeration value="Sri Lanka"/>
|
|
<xsd:enumeration value="Suède"/>
|
|
<xsd:enumeration value="Suisse"/>
|
|
<xsd:enumeration value="Suriname"/>
|
|
<xsd:enumeration value="Swaziland"/>
|
|
<xsd:enumeration value="Tadjikistan"/>
|
|
<xsd:enumeration value="Taïwan (Province de Chine)"/>
|
|
<xsd:enumeration value="Tchad"/>
|
|
<xsd:enumeration value="Terres australes françaises"/>
|
|
<xsd:enumeration value="Territoire britannique de l'océan Indien"/>
|
|
<xsd:enumeration value="Thaïlande"/>
|
|
<xsd:enumeration value="Timor-Leste"/>
|
|
<xsd:enumeration value="Togo"/>
|
|
<xsd:enumeration value="Tokélaou"/>
|
|
<xsd:enumeration value="Tonga"/>
|
|
<xsd:enumeration value="Trinité-et-Tobago"/>
|
|
<xsd:enumeration value="Tunisie"/>
|
|
<xsd:enumeration value="Turkménistan"/>
|
|
<xsd:enumeration value="Turquie"/>
|
|
<xsd:enumeration value="Tuvalu"/>
|
|
<xsd:enumeration value="Ukraine"/>
|
|
<xsd:enumeration value="Uruguay"/>
|
|
<xsd:enumeration value="Vanuatu"/>
|
|
<xsd:enumeration value="Venezuela (République bolivarienne du)"/>
|
|
<xsd:enumeration value="Viet Nam"/>
|
|
<xsd:enumeration value="Yémen"/>
|
|
<xsd:enumeration value="Zambie"/>
|
|
<xsd:enumeration value="Zimbabwe"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
|
|
</xsd:schema>
|