<?xml version="1.0" encoding="UTF-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning" vc:minVersion="1.1"> <xs:element name="marches"> <xs:complexType> <xs:sequence maxOccurs="unbounded"> <xs:element ref="marche" minOccurs="0"></xs:element> <xs:element ref="contrat-concession" minOccurs="0"></xs:element> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="marche"> <xs:complexType> <xs:all> <xs:element name="id"> <xs:annotation> <xs:documentation>L'identifiant de marché est composé de trois parties: - l'année de notification (4 caractères), - le numéro d'ordre interne propre à l'acheteur public (1 à 10 caractères alphanumériques) - le numéro d'ordre de la modification (deux caractères, 00 si pas de modification, 01 si une modification, etc.) Exemples : - 201872300 (2018 723 00) - 2019000111202 (2019 00001112 02)</xs:documentation> </xs:annotation> <xs:simpleType> <xs:restriction base="xs:string"> <xs:minLength value="7"/> <xs:maxLength value="16"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="uid" minOccurs="0"> <xs:annotation> <xs:documentation>L'identifiant unique de marché est composé du SIRET de l'acheteur et de l'identifiant de marché, et permet d'éviter les conflits d'identifiants entre marchés passé par des acheteurs différents. Exemples : - 23350001600040201872300 (23350001600040 201872300) - 233500016000402019000111202 (23350001600040 20190000111202)</xs:documentation> </xs:annotation> <xs:simpleType> <xs:restriction base="xs:string"> <xs:pattern value="[0-9]{14}.{7,16}"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="acheteur"> <xs:complexType mixed="true"> <xs:sequence> <xs:element name="id"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:pattern value="([0-9]{14,14})"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="nom" type="xs:string"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="nature"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:enumeration value="Marché"/> <xs:enumeration value="Marché de partenariat"/> <xs:enumeration value="Accord-cadre"/> <xs:enumeration value="Marché subséquent"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="objet"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:maxLength value="256"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="codeCPV"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:pattern value="([0-9]{8,8}(\-[0-9])?)"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="procedure"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:enumeration value="Procédure adaptée"/> <xs:enumeration value="Appel d'offres ouvert"/> <xs:enumeration value="Appel d'offres restreint"/> <xs:enumeration value="Procédure avec négociation"/> <xs:enumeration value="Marché passé sans publicité ni mise en concurrence préalable"/> <xs:enumeration value="Dialogue compétitif"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="lieuExecution"> <xs:complexType> <xs:all> <xs:element name="code" type="xs:string"/> <xs:element name="typeCode"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:enumeration value="Code postal"/> <xs:enumeration value="Code commune"/> <xs:enumeration value="Code arrondissement"/> <xs:enumeration value="Code canton"/> <xs:enumeration value="Code département"/> <xs:enumeration value="Code région"/> <xs:enumeration value="Code pays"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="nom" type="xs:string"/> </xs:all> </xs:complexType> </xs:element> <xs:element name="dureeMois"> <xs:simpleType> <xs:restriction base="xs:integer"> <xs:minInclusive value="1"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="dateNotification" type="xs:date"/> <xs:element name="datePublicationDonnees" type="xs:date"/> <xs:element name="montant"> <xs:simpleType> <xs:restriction base="xs:decimal"> <xs:minInclusive value="0"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="formePrix"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:enumeration value="Ferme"/> <xs:enumeration value="Ferme et actualisable"/> <xs:enumeration value="Révisable"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="titulaires"> <xs:complexType> <xs:sequence> <xs:element name="titulaire" maxOccurs="unbounded"> <xs:complexType> <xs:all> <xs:element name="typeIdentifiant"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:enumeration value="SIRET"/> <xs:enumeration value="TVA"/> <xs:enumeration value="TAHITI"/> <xs:enumeration value="RIDET"/> <xs:enumeration value="FRWF"/> <xs:enumeration value="IREP"/> <xs:enumeration value="UE"/> <xs:enumeration value="HORS-UE"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="id" type="xs:string"/> <xs:element name="denominationSociale" type="xs:string"/> </xs:all> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="modifications"> <xs:complexType> <xs:sequence> <xs:element name="modification" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:all> <xs:element name="objetModification"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:maxLength value="256"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="dateNotificationModification" type="xs:date"/> <xs:element name="datePublicationDonneesModification" type="xs:date"/> <xs:element name="dureeMois" type="xs:integer" minOccurs="0"/> <xs:element name="montant" type="xs:decimal" minOccurs="0"/> <xs:element name="titulaires" minOccurs="0"> <xs:complexType> <xs:sequence> <xs:element name="titulaire" maxOccurs="unbounded"> <xs:complexType> <xs:all> <xs:element name="typeIdentifiant"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:enumeration value="SIRET"/> <xs:enumeration value="TVA"/> <xs:enumeration value="TAHITI"/> <xs:enumeration value="RIDET"/> <xs:enumeration value="FRWF"/> <xs:enumeration value="IREP"/> <xs:enumeration value="UE"/> <xs:enumeration value="HORS-UE"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="id" type="xs:string"/> <xs:element name="denominationSociale" type="xs:string"/> </xs:all> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> </xs:all> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> </xs:all> </xs:complexType> </xs:element> <xs:element name="contrat-concession"> <xs:complexType> <xs:all> <xs:element name="id"> <xs:annotation> <xs:documentation>L'identifiant de contrat de concession est composé de trois parties: - l'année de notification (4 caractères), - le numéro d'ordre interne propre à l'acheteur public (1 à 10 caractères alphanumériques) - le numéro d'ordre de la modification (deux caractères, 00 si pas de modification, 01 si une modification, etc.) Exemples : - 201872300 (2018 723 00) - 2019000111202 (2019 00001112 02)</xs:documentation> </xs:annotation> <xs:simpleType> <xs:restriction base="xs:string"> <xs:minLength value="7"/> <xs:maxLength value="16"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="uid" minOccurs="0"> <xs:annotation> <xs:documentation>L'identifiant unique de contrat de concession est composé du SIRET de l'acheteur et de l'identifiant de contrat de concession, et permet d'éviter les conflits d'identifiants entre contrats de concession passé par des acheteurs différents. Exemples : - 23350001600040201872300 (23350001600040 201872300) - 233500016000402019000111202 (23350001600040 20190000111202)</xs:documentation> </xs:annotation> <xs:simpleType> <xs:restriction base="xs:string"> <xs:pattern value="[0-9]{14}.{7,16}"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="autoriteConcedante"> <xs:complexType> <xs:all> <xs:element name="id"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:pattern value="([0-9]{14,14})"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="nom" type="xs:string"/> </xs:all> </xs:complexType> </xs:element> <xs:element name="nature"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:enumeration value="Concession de travaux"/> <xs:enumeration value="Concession de service"/> <xs:enumeration value="Concession de service public"/> <xs:enumeration value="Délégation de service public"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="objet" type="xs:string"/> <xs:element name="procedure"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:enumeration value="Procédure négociée ouverte"/> <xs:enumeration value="Procédure non négociée ouverte"/> <xs:enumeration value="Procédure négociée restreinte"/> <xs:enumeration value="Procédure non négociée restreinte"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="lieuExecution"> <xs:complexType> <xs:all> <xs:element name="code" type="xs:string"/> <xs:element name="typeCode"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:enumeration value="Code postal"/> <xs:enumeration value="Code commune"/> <xs:enumeration value="Code arrondissement"/> <xs:enumeration value="Code canton"/> <xs:enumeration value="Code département"/> <xs:enumeration value="Code région"/> <xs:enumeration value="Code pays"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="nom" type="xs:string"/> </xs:all> </xs:complexType> </xs:element> <xs:element name="dureeMois"> <xs:simpleType> <xs:restriction base="xs:integer"> <xs:minInclusive value="1"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="dateSignature" type="xs:date"/> <xs:element name="datePublicationDonnees" type="xs:date"/> <xs:element name="dateDebutExecution" type="xs:date"/> <xs:element name="valeurGlobale" type="xs:decimal"/> <xs:element name="montantSubventionPublique"> <xs:simpleType> <xs:restriction base="xs:decimal"> <xs:minInclusive value="0"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="donneesExecution"> <xs:complexType> <xs:sequence> <xs:element name="donneesAnnuelles" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:all> <xs:element name="datePublicationDonneesExecution" type="xs:date"/> <xs:element name="depensesInvestissement"> <xs:simpleType> <xs:restriction base="xs:decimal"> <xs:minInclusive value="0"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="tarifs"> <xs:complexType> <xs:sequence> <xs:element name="tarif" maxOccurs="unbounded"> <xs:complexType> <xs:all> <xs:element name="intituleTarif" type="xs:string"/> <xs:element name="tarif"> <xs:simpleType> <xs:restriction base="xs:decimal"> <xs:minInclusive value="0"/> </xs:restriction> </xs:simpleType> </xs:element> </xs:all> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> </xs:all> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="concessionnaires"> <xs:complexType> <xs:sequence> <xs:element name="concessionnaire" maxOccurs="unbounded"> <xs:complexType> <xs:all> <xs:element name="typeIdentifiant"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:enumeration value="SIRET"/> <xs:enumeration value="TVA"/> <xs:enumeration value="TAHITI"/> <xs:enumeration value="RIDET"/> <xs:enumeration value="FRWF"/> <xs:enumeration value="IREP"/> <xs:enumeration value="UE"/> <xs:enumeration value="HORS-UE"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="id" type="xs:string"/> <xs:element name="denominationSociale" type="xs:string"/> </xs:all> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="modifications"> <xs:complexType> <xs:sequence> <xs:element name="modification" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:all> <xs:element name="objetModification"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:maxLength value="256"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="dateSignatureModification" type="xs:date"/> <xs:element name="datePublicationDonneesModification" type="xs:date"/> <xs:element name="dureeMois" minOccurs="0"> <xs:simpleType> <xs:restriction base="xs:integer"> <xs:minInclusive value="1"/> </xs:restriction> </xs:simpleType> </xs:element> <xs:element name="valeurGlobale" minOccurs="0"> <xs:simpleType> <xs:restriction base="xs:decimal"> <xs:minInclusive value="0"/> </xs:restriction> </xs:simpleType> </xs:element> </xs:all> </xs:complexType> </xs:element> </xs:sequence> </xs:complexType> </xs:element> </xs:all> </xs:complexType> </xs:element> </xs:schema>