Documentation du schéma AgentsV27.xsd

Table des matières
  1. Documentation du schéma AgentsV27.xsd
    1. Table des matières
    2. 1. Vue d’ensemble hiérarchique
    3. 2. Types simples (formats de valeurs)
      1. Chaînes de caractères
      2. Chaînes « métier »
      3. Types numériques
      4. Types standards XSD utilisés directement
    4. 3. Élément racine ListePersonnel
    5. 4. L’agent : AgentType
    6. 5. Les types imbriqués de l’agent
      1. AdresseType — adresse postale
      2. ContactType — coordonnée
      3. EnfantType — enfant
      4. PersonneAPrevenirType — personne à prévenir
      5. EmployeurType — employeur « simple »
      6. EmployeursType — historique des employeurs (référentiel)
        1. EmployeurDetailType — employeur en référentiel
      7. PermisType — permis de conduire
      8. VisiteMedicaleType — visite médicale
      9. CompteInfoType — compte informatique
    7. 6. La carrière : CarriereType
    8. 7. Les types imbriqués de la carrière
      1. HistoGradeType — historique de grade
      2. HistoCategorieType — historique de catégorie
      3. AffectationType — affectation (et mutualisation)
      4. HistoEmploiType — historique d’emploi
      5. RenseignementType — renseignement complémentaire
      6. HistoTempsTravailType — historique de temps de travail
      7. PositionType — position administrative
      8. InfosStatutairesType — informations statutaires
      9. MedailleType — médaille
      10. SuspensionType — arrêt / exclusion
      11. ProprieteAgentType — propriété de l’agent
      12. CompteDroitType — compteur de droit
      13. CNFPTInfoType — informations CNFPT (interface IEL)
        1. MatriculeGEEFType — matricule GEEF composite
    9. 8. Contraintes d’unicité (clés)
    10. 9. Notes de comportement à l’import

Ce document décrit le schéma XML AgentsV27.xsd utilisé par l’interface entrante GEEF (InterfaceGEEFInXML.java, méthode listePersonnel(...)) pour importer une liste du personnel : agents, état civil, carrières, grades, affectations, positions, médailles, compteurs de droits, etc.

  • Espace de noms : aucun (schéma sans targetNamespace).
  • Élément racine : ListePersonnel.
  • Encodage : UTF-8.
  • Convention de cardinalité dans ce document : 1..1 = obligatoire une fois, 0..1 = facultatif, 0..∞ = facultatif répétable, 1..∞ = obligatoire répétable.

Table des matières

  1. Vue d’ensemble hiérarchique
  2. Types simples (formats de valeurs)
  3. Élément racine ListePersonnel
  4. L’agent : AgentType
  5. Les types imbriqués de l’agent
  6. La carrière : CarriereType
  7. Les types imbriqués de la carrière
  8. Contraintes d’unicité (clés)
  9. Notes de comportement à l’import

1. Vue d’ensemble hiérarchique

ListePersonnel                       (élément racine)
│  @Extraction : dateTime (requis)   ── horodatage de l'extraction
│  ⚿ clé UniqueMatricule (Agents/@Matricule)
│
└── Agents                           (AgentType, 0..∞)
    │  @Matricule    : Matricule (requis)   ── identifiant RH de l'agent
    │  @NewMatricule : Matricule (optionnel)── matricule cible pour recopie formations
    │  ⚿ clé UniqueStatut (Carrieres/@Statut)
    │
    ├── Prenom                       (1..1)
    ├── Nom                          (1..1)
    ├── Naissance                    (date, 1..1)
    ├── LieuNaissanceVille           (0..1)
    ├── PaysNaissance                (0..1)
    ├── LieuNaissanceCodePostal      (0..1)
    ├── NomNaissance                 (0..1)
    ├── NumSecuSoc                   (0..1)
    ├── SituationMaritale            (0..1)
    ├── Sexe                         (M|F, 1..1)
    ├── AdresseAgent                 (AdresseType, 0..1)
    ├── ContactAgent                 (ContactType, 0..∞)
    ├── Enfant                       (EnfantType, 0..∞)
    ├── PersonneAPrevenir            (PersonneAPrevenirType, 0..∞)
    │   └── ContactPersonne          (ContactType, 0..∞)
    │   └── AdressePersonne          (AdresseType, 0..1)
    ├── Employeur                    (EmployeurType, 0..1)        ── employeur « simple »
    ├── Employeurs                   (EmployeursType, 0..∞)       ── historique référentiel
    │   └── EmployeurDetail          (EmployeurDetailType, 1..1)
    ├── DateEntreeCollectivite       (date, 0..1)
    ├── DateEntreeFonctionPublique   (date, 0..1)
    ├── Permis                       (PermisType, 0..∞)
    ├── VisitesMedicales             (VisiteMedicaleType, 0..∞)
    ├── CompteInfo                   (CompteInfoType, 0..1)
    ├── Carrieres                    (CarriereType, 0..3)
    │   │  @Statut : Statut (requis)
    │   ├── Grades                   (HistoGradeType, 0..∞)   @Debut requis
    │   ├── Categories               (HistoCategorieType, 0..∞) @Debut requis
    │   ├── Affectations             (AffectationType, 0..∞)
    │   ├── Mutualisations           (AffectationType, 0..∞)
    │   ├── Emplois                  (HistoEmploiType, 0..∞)
    │   ├── Renseignements           (RenseignementType, 0..∞)
    │   ├── Titularisation           (date, 0..1)
    │   ├── TempsTravail             (HistoTempsTravailType, 0..∞) @Debut requis, @Fin
    │   ├── Positions                (PositionType, 0..∞)
    │   ├── Statuts                  (InfosStatutairesType, 0..∞)
    │   ├── Medailles                (MedailleType, 0..∞)
    │   ├── Radiee                   (Booleen, 0..1)
    │   ├── Suspensions              (SuspensionType, 0..∞)
    │   ├── ProprieteAgent           (ProprieteAgentType, 0..∞)
    │   ├── CompteDroit              (CompteDroitType, 0..∞)
    │   └── InfosCNFPT               (CNFPTInfoType, 0..1)
    ├── Suspensions                  (SuspensionType, 0..∞)   ── au niveau agent
    └── PhotoURL                     (anyURI, 0..1)

Remarque : Suspensions existe à deux niveaux — sous l’agent et sous chaque carrière — avec le même type SuspensionType.


2. Types simples (formats de valeurs)

Ces simpleType définissent les contraintes de format réutilisées par les éléments et attributs. La plupart appliquent whiteSpace="collapse" (espaces multiples réduits, début et fin rognés).

Chaînes de caractères

Type Base Contraintes Usage
StringNNType string non vide (minLength=1) chaîne générique sans longueur max
StringNN5Type string 1 à 5 car. codes courts (code postal, code position/médaille/état…)
StringNN10Type string 1 à 10 car. boîte postale, lieu de travail CNFPT…
StringNN15Type string 1 à 15 car. n° sécu sociale, motif suspension, tél. employeur…
StringNN20Type string 1 à 20 car. situation maritale, nom/numéro de permis…
StringNN30Type string 1 à 30 car. motifs, modalités, n° de convention, contacts…
StringNN40Type string 1 à 40 car. libellé de renseignement
StringNN50Type string 1 à 50 car. nom, prénom, ville, SIRET…
StringNN100Type string 1 à 100 car. rue, propriété, libellé de compteur…
StringNN200Type string 1 à 200 car. fonction, adresse employeur, champs CNFPT…

Chaînes « métier »

Type Base Contraintes Description
EmailType string motif .+@.+[.]+.+, non vide adresse e-mail valide
MatriculeType string chiffres uniquement [0-9]+, 1 à 10 car. matricule (composé d’entiers)
ServiceType string 1 à 20 car. code service (ex. VRS, DFS)
EmploiType string 1 à 15 car. code emploi (ex. HA, CE INC)
GradeType string 1 à 5 car. code grade (ex. sgt, adj, maj, ltn)
EchelonType string 1 à 30 car. libellé de l’échelon
CategorieType string 1 à 5 car. catégorie administrative (A, B, C)
StatutType string 1 à 5 car. statut d’une carrière (ex. Pro, Volon, Ats)
SexeType string 1 car., énumération M | F sexe de l’agent

Types numériques

Type Base Contraintes Description
TempsTravailType int 0 à 100 quotité de temps de travail (en %)
AnneeType int 1900 à 2999 année (compteur de droit)
BooleenType int 0 à 1 booléen : 0 = faux, 1 = vrai
RegimeEmployeurType int énum. 0|1|2 régime : 0 = non ; 1 = subrogation ; 2 = perte de salaire (ou détachement PATS)
SecteurEmployeurType int énum. 0|1|2 secteur : 0 = Privé ; 1 = Public ; 2 = Assimilé
TypeConventionType int énum. 0|1|2 convention : 0 = Formation ; 1 = Opérationnel ; 2 = Autre

Types standards XSD utilisés directement

  • xsd:date — dates au format ISO AAAA-MM-JJ.
  • xsd:dateTime — horodatage (attribut Extraction).
  • xsd:float — décimaux (compteurs de droits, taux horaire).
  • xsd:anyURI — URL (photo de l’agent).
  • xsd:int — base des types numériques ci-dessus.

3. Élément racine ListePersonnel

Type : ListePersonnelType. C’est le conteneur unique du flux.

Attribut

Attribut Type Usage Description
Extraction xsd:dateTime requis Date et heure d’extraction de la liste du personnel.

Élément enfant

Élément Type Cardinalité Description
Agents AgentType 0..∞ Un agent de la liste (voir §4).

Clé : UniqueMatricule — chaque Agents/@Matricule doit être unique dans le flux (voir §8).


4. L’agent : AgentType

Élément Agents — porte l’état civil et rassemble tout ce qui concerne un agent.

Attributs

Attribut Type Usage Description
Matricule MatriculeType requis Matricule RH de l’agent. Sert d’identifiant pour le rapprochement en base.
NewMatricule MatriculeType optionnel Matricule cible RH pour la copie des données de formations vers un autre matricule.

Éléments enfants (dans l’ordre de la séquence)

Élément Type Cardinalité Description
Prenom StringNN50Type 1..1 Prénom.
Nom StringNN50Type 1..1 Nom d’usage.
Naissance xsd:date 1..1 Date de naissance.
LieuNaissanceVille StringNN50Type 0..1 Ville de naissance.
PaysNaissance StringNN50Type 0..1 Pays de naissance.
LieuNaissanceCodePostal StringNN5Type 0..1 Code postal du lieu de naissance.
NomNaissance StringNN50Type 0..1 Nom de naissance (si différent).
NumSecuSoc StringNN15Type 0..1 Numéro de sécurité sociale.
SituationMaritale StringNN20Type 0..1 Situation maritale.
Sexe SexeType 1..1 Sexe : M ou F.
AdresseAgent AdresseType 0..1 Adresse postale de l’agent.
ContactAgent ContactType 0..∞ Coordonnées (tél., e-mail…) en couples libellé/valeur.
Enfant EnfantType 0..∞ Enfants de l’agent.
PersonneAPrevenir PersonneAPrevenirType 0..∞ Personnes à prévenir.
Employeur EmployeurType 0..1 Employeur « simple » (texte libre).
Employeurs EmployeursType 0..∞ Historique des employeurs (référentiel structuré).
DateEntreeCollectivite xsd:date 0..1 Date d’entrée dans la collectivité.
DateEntreeFonctionPublique xsd:date 0..1 Date d’entrée dans la fonction publique.
Permis PermisType 0..∞ Permis de conduire.
VisitesMedicales VisiteMedicaleType 0..∞ Visites médicales.
CompteInfo CompteInfoType 0..1 Compte informatique (login, e-mail).
Carrieres CarriereType 0..3 Carrières de l’agent (voir §6). Limité à 3 dans cette version (TODO : passer à illimité).
Suspensions SuspensionType 0..∞ Arrêts / exclusions au niveau agent.
PhotoURL xsd:anyURI 0..1 URL de la photo de l’agent.

Clé : UniqueStatut — au sein d’un agent, chaque Carrieres/@Statut doit être unique (voir §8).


5. Les types imbriqués de l’agent

AdresseType — adresse postale

Adresse d’un agent ou d’une personne.

Élément Type Cardinalité Description
Rue StringNN100Type 0..1 Voie / rue.
Ville StringNN50Type 0..1 Ville.
CodePostal StringNN5Type 0..1 Code postal.
BoitePostale StringNN10Type 0..1 Boîte postale.
Appartement StringNN100Type 0..1 Appartement.
Batiment StringNN100Type 0..1 Bâtiment.

ContactType — coordonnée

Numéro / coordonnée de contact, sous forme d’un couple libellé + valeur.

Élément Type Cardinalité Description
Libelle StringNN30Type 1..1 Nature du contact (ex. « Portable », « E-mail perso »).
Valeur StringNN100Type 1..1 Valeur du contact.

EnfantType — enfant

Élément Type Cardinalité Description
NomEnfant StringNN50Type 1..1 Nom de l’enfant.
PrenomEnfant StringNN50Type 1..1 Prénom de l’enfant.
MatriculeEnfant MatriculeType 0..1 Matricule de l’enfant (s’il est agent).
NaissanceEnfant xsd:date 0..1 Date de naissance de l’enfant.

PersonneAPrevenirType — personne à prévenir

Élément Type Cardinalité Description
NomPersonne StringNN30Type 1..1 Nom.
PrenomPersonne StringNN30Type 1..1 Prénom.
LienPersonne StringNN30Type 1..1 Lien avec l’agent (conjoint, parent…).
ContactPersonne ContactType 0..∞ Coordonnées de la personne.
AdressePersonne AdresseType 0..1 Adresse de la personne.

EmployeurType — employeur « simple »

Employeur saisi en texte libre (par opposition au référentiel structuré EmployeursType).

Élément Type Cardinalité Description
Profession StringNN100Type 0..1 Profession exercée.
NomEmployeur StringNN50Type 0..1 Nom de l’employeur.
AdresseEmployeur StringNN200Type 0..1 Adresse de l’employeur.
TelephoneEmployeur StringNN15Type 0..1 Téléphone de l’employeur.

EmployeursType — historique des employeurs (référentiel)

Une occurrence par période d’emploi ; l’employeur est décrit par un EmployeurDetail (référentiel). Utilisé notamment pour les conventions employeur.

Élément Type Cardinalité Description
EmployeurDetail EmployeurDetailType 1..1 Coordonnées détaillées de l’employeur.
Debut xsd:date 0..1 Début de la période d’emploi.
Fin xsd:date 0..1 Fin de la période d’emploi.
TypeConvention TypeConventionType 0..1 0 = Formation ; 1 = Opérationnel ; 2 = Autre.
ConventionEmployeur RegimeEmployeurType 0..1 Régime : 0 = non ; 1 = subrogation ; 2 = perte de salaire / détachement PATS.
NumConvention StringNN30Type 0..1 Numéro de convention.
Mecenat BooleenType 0..1 Mécénat (0/1).
ChefEntrepriseConv BooleenType 0..1 Chef d’entreprise dans la convention (0/1).
TauxHoraire xsd:float 0..1 Taux horaire.

EmployeurDetailType — employeur en référentiel

Élément Type Cardinalité Description
NomEmployeurDetail StringNN100Type 1..1 Nom de l’employeur.
SiretEmployeur StringNN50Type 1..1 SIRET — sert de clé d’unicité de l’employeur.
AdresseRueEmployeur StringNN100Type 0..1 Rue.
AdresseBatEmployeur StringNN30Type 0..1 Bâtiment.
AdresseCodePostalEmployeur StringNN5Type 0..1 Code postal.
AdresseVilleEmployeur StringNN50Type 0..1 Ville.
AdresseTelEmployeur StringNN20Type 0..1 Téléphone.
AdresseMobEmployeur StringNN20Type 0..1 Mobile.
AdresseMailEmployeur EmailType 0..1 E-mail.
NomContact StringNN200Type 0..1 Contact principal.
NomContact2 StringNN200Type 0..1 Contact secondaire.
SecteurEmployeur SecteurEmployeurType 0..1 0 = Privé ; 1 = Public ; 2 = Assimilé.

PermisType — permis de conduire

Élément Type Cardinalité Description
NomPermis StringNN20Type 1..1 Catégorie / nom du permis.
Numero StringNN20Type 1..1 Numéro du permis.
DateObtention xsd:date 1..1 Date d’obtention.
DateDerniereVisite xsd:date 0..1 Dernière visite (médicale) liée au permis.
DateProchaineVisite xsd:date 1..1 Prochaine visite.
DateFinSuspension xsd:date 0..1 Fin de suspension du permis.
Inapte BooleenType 0..1 Inaptitude (0/1).

VisiteMedicaleType — visite médicale

Élément Type Cardinalité Description
DateVisite xsd:date 1..1 Date de la visite.
DateProchaine xsd:date 0..1 Date de la prochaine visite.
Motif StringNN200Type 0..1 Motif de la visite.
Apte BooleenType 1..1 Aptitude (0/1).
ProfilMedical StringNN200Type 0..∞ Profils / aptitudes médicaux associés.

CompteInfoType — compte informatique

Élément Type Cardinalité Description
Email EmailType 1..1 E-mail professionnel. (TODO XSD : passer à facultatif.)
Login StringNNType 1..1 Identifiant de connexion. (TODO XSD : passer à facultatif.)

6. La carrière : CarriereType

Élément Carrieres — regroupe tout ce qui relève d’une carrière (situation administrative, historiques, compteurs…). Un agent peut avoir plusieurs carrières (jusqu’à 3 dans cette version), distinguées par leur statut.

Attribut

Attribut Type Usage Description
Statut StatutType requis Statut de la carrière (ex. Pro, Volon, Ats). Combiné au matricule, il identifie la carrière.

Éléments enfants

Élément Type Cardinalité Description
Grades HistoGradeType 0..∞ Historique des grades / échelons.
Categories HistoCategorieType 0..∞ Historique des catégories administratives.
Affectations AffectationType 0..∞ Affectations (service, période, fonction).
Mutualisations AffectationType 0..∞ Affectations mutualisées (même structure qu’Affectations).
Emplois HistoEmploiType 0..∞ Historique des emplois occupés.
Renseignements RenseignementType 0..∞ Renseignements complémentaires (couples libellé/valeur).
Titularisation xsd:date 0..1 Date de titularisation.
TempsTravail HistoTempsTravailType 0..∞ Historique des quotités de temps de travail.
Positions PositionType 0..∞ Historique des positions administratives.
Statuts InfosStatutairesType 0..∞ Informations statutaires (contrats, périodes).
Medailles MedailleType 0..∞ Historique des médailles.
Radiee BooleenType 0..1 Carrière radiée (0/1).
Suspensions SuspensionType 0..∞ Arrêts / exclusions de la carrière.
ProprieteAgent ProprieteAgentType 0..∞ Propriétés / attributs de l’agent sur la carrière.
CompteDroit CompteDroitType 0..∞ Compteurs de droits (CEC, CPF, CPA…).
InfosCNFPT CNFPTInfoType 0..1 Informations complémentaires pour envoi CNFPT (interface IEL).

7. Les types imbriqués de la carrière

HistoGradeType — historique de grade

Attribut / Élément Type Cardinalité Description
@Debut xsd:date requis Date d’obtention du grade.
Grade GradeType 1..1 Code grade.
Echelon EchelonType 0..1 Libellé de l’échelon.

HistoCategorieType — historique de catégorie

Attribut / Élément Type Cardinalité Description
@Debut xsd:date requis Date d’obtention de la catégorie.
Categorie CategorieType 1..1 Catégorie administrative (A/B/C).

AffectationType — affectation (et mutualisation)

Utilisé à la fois par Affectations et Mutualisations.

Élément Type Cardinalité Description
Service ServiceType 1..1 Code service.
Debut xsd:date 1..1 Début de l’affectation.
Fin xsd:date 0..1 Fin de l’affectation.
MotifFin StringNN100Type 0..1 Motif de fin.
Fonction StringNN200Type 0..1 Fonction occupée.

HistoEmploiType — historique d’emploi

Élément Type Cardinalité Description
Emploi EmploiType 1..1 Code emploi.
Debut xsd:date 1..1 Début.
Fin xsd:date 0..1 Fin.

RenseignementType — renseignement complémentaire

Élément Type Cardinalité Description
Libelle StringNN40Type 1..1 Libellé du renseignement (référencé en base).
Valeur StringNN30Type 1..1 Valeur.

HistoTempsTravailType — historique de temps de travail

Attribut / Élément Type Cardinalité Description
@Debut xsd:date requis Début de la période.
@Fin xsd:date optionnel Fin de la période.
QuotiteTemps TempsTravailType 1..1 Quotité en % (0 à 100).

PositionType — position administrative

Élément Type Cardinalité Description
codePosition StringNN5Type 1..1 Code de la position.
dateDebut xsd:date 1..1 Début de la position.
motifDebut StringNN30Type 0..1 Motif de début.
dateFin xsd:date 0..1 Fin de la position.
motifFin StringNN30Type 0..1 Motif de fin.
modalite StringNN30Type 1..1 Modalité (ex. temps plein/partiel).
motifModalite StringNN30Type 0..1 Motif de la modalité.
dateArrete xsd:date 0..1 Date de l’arrêté.
refArrete StringNN50Type 0..1 Référence de l’arrêté.
dateDecret xsd:date 0..1 Date du décret.
parution StringNN30Type 0..1 Support de parution.
dateParution xsd:date 0..1 Date de parution.

InfosStatutairesType — informations statutaires

Élément Type Cardinalité Description
TypeContrat StringNN100Type 0..1 Type de contrat.
NumContrat StringNN30Type 0..1 Numéro de contrat.
LibStatut StringNN50Type 1..1 Libellé du statut.
DebutStatut xsd:date 1..1 Début du statut.
FinStatut xsd:date 0..1 Fin réelle du statut.
FinPrevStatut xsd:date 0..1 Fin prévisionnelle.
FinPerProb xsd:date 0..1 Fin de la période probatoire.
Renouvellement BooleenType 0..1 Renouvellement (0/1).
DeductAbsPerProb BooleenType 0..1 Déduire les absences de la période probatoire (0/1).
PasDePerProb BooleenType 0..1 Pas de période probatoire (0/1).

MedailleType — médaille

Élément Type Cardinalité Description
codeMedaille StringNN5Type 1..1 Code de la médaille.
dateObtention xsd:date 0..1 Date d’obtention.
dateValidation xsd:date 0..1 Date de validation.
dateRemise xsd:date 0..1 Date de remise.
etatMedaille StringNN5Type 1..1 Code état de la médaille.
motifMedaille StringNN50Type 0..1 Motif.
commentaire StringNNType 0..1 Commentaire libre.

SuspensionType — arrêt / exclusion

Élément Type Cardinalité Description
Motif StringNN15Type 1..1 Motif de la suspension.
Debut xsd:date 1..1 Début.
Fin xsd:date 0..1 Fin.

ProprieteAgentType — propriété de l’agent

Élément Type Cardinalité Description
Propriete StringNN100Type 1..1 Libellé de la propriété (référencée en base).
Debut xsd:date 0..1 Début de validité.
Fin xsd:date 0..1 Fin de validité.
Commentaire StringNNType 0..1 Commentaire libre.

CompteDroitType — compteur de droit

Élément Type Cardinalité Description
Libelle StringNN100Type 1..1 Identifiant/clé du compteur (ex. CEC, CPF, CPA).
Annee AnneeType 1..1 Année du compteur (1900–2999).
Report xsd:float 0..1 Report de l’année précédente.
Conso xsd:float 0..1 Consommation.
Gain xsd:float 0..1 Gain / acquisition.
Solde xsd:float 1..1 Solde de l’année. Si le compteur est en heures, l’exprimer en décimal (ex. 92,5 = 92 h 30).
Commentaire StringNNType 0..1 Commentaire libre.

CNFPTInfoType — informations CNFPT (interface IEL)

Élément Type Cardinalité Description
Hierarchique MatriculeGEEFType 0..1 Supérieur hiérarchique (matricule + statut).
Correspondant MatriculeGEEFType 0..1 Correspondant formation (matricule + statut).
LieuTravail StringNN10Type 0..1 Lieu de travail.
NiveauEtude StringNN200Type 0..1 Niveau d’étude.
DomaineActivite StringNN200Type 0..1 Domaine d’activité.
FamilleProfessionnelle StringNN200Type 0..1 Famille professionnelle.
EmploiFonction StringNN200Type 0..1 Emploi / fonction.

MatriculeGEEFType — matricule GEEF composite

Identifie une personne par son matricule RH et son code statut (utilisé pour le supérieur hiérarchique et le correspondant CNFPT).

Élément Type Cardinalité Description
Matricule MatriculeType 1..1 Matricule RH.
Statut StatutType 1..1 Code statut.

8. Contraintes d’unicité (clés)

Le schéma déclare trois contraintes xsd:key :

Clé Portée Sélecteur / champ Effet
UniqueMatricule sur ListePersonnel Agents / @Matricule Chaque matricule d’agent est unique dans le flux.
UniqueStatut sur Agents Carrieres / @Statut Au sein d’un agent, chaque statut de carrière est unique.

Règles abrogées : les clés UniqueGradesDebut (sur Grades/@Debut) et UniqueCategorieDebut (sur Categories/@Debut) figurent en commentaire dans le XSD ; elles ne sont plus appliquées.


9. Notes de comportement à l’import

Ces points proviennent du traitement Java (InterfaceGEEFInXML.listePersonnel(...)) et complètent la lecture « brute » du schéma.

  • Identifiant agent : l’attribut @Matricule est la clé de rapprochement. Un matricule non numérique fait échouer l’agent ("Matricule de l'agent incorrect").
  • @NewMatricule : déclenche la recopie des données de formation vers un autre matricule (fusion / changement de matricule).
  • Statut de carrière : le code @Statut est mis en correspondance avec le référentiel des statuts GEEF. Deux paramètres applicatifs pilotent le traitement : « Interface entrante - XML - Code Statut PATS » (code du statut PATS) et « Interface entrante - XML - Ordre Statuts » (ordre de priorité, ex. A>P>V>J).
  • Dates : les dates xsd:date (AAAA-MM-JJ) sont reconverties au format attendu par GEEF (JJ/MM/AAAA). Une date de fin valant 2099-12-31, 2999-12-31 ou 9999-12-31 est interprétée comme absence de fin (période ouverte) — cf. nettoyerDateFin(...).
  • Référentiels attendus en base : plusieurs codes/libellés doivent exister côté GEEF pour être rattachés (grades, échelons, emplois, propriétés, motifs de suspension, libellés de renseignements, profils médicaux, permis, contacts, lieux de formation…). Les libellés sont généralement comparés en majuscules et sans espaces superflus.
  • Compteurs en heures : pour un CompteDroit exprimé en heures, le Solde (et les autres montants) s’expriment en décimal (92,5 = 92 h 30), et non en hh:mm.
  • Employeur : l’Employeur (texte libre) et les Employeurs (référentiel via EmployeurDetail) coexistent ; côté référentiel, le SIRET sert de clé d’unicité de l’employeur.
  • Limite de carrières : le schéma borne Carrieres à 3 occurrences par agent (un TODO prévoit de lever cette limite). ```

This site uses Just the Docs, a documentation theme for Jekyll.