Comment documenter la hiérarchie des procédures parlementaires?

Le problème

TL;DR: dans les schemas JSON les actes ne sont pas documentés et leur sens dépend de leur place dans une hiérarchie qui n’est pas documentée non plus

Les procédures législatives sont représentées par une hiérarchie d’actes législatifs (Dépôt d’un projet de loi, travaux d’une commission etc.). Il existe une abondante documentation et des schémas assez clairs pour la plupart d’entre eux.
procedure
On trouve des pages Wikipedia sur le processus législatif, le parlement, la navette parlementaire, la commission mixte paritaire etc. Et le règlement de l’assemblée nationale permet de comprendre ce qu’est la procédure législative Résolution Article 34-1, par exemple.

La documentation de https://data.tricoteuses.fr devrait permettre de faire le lien entre un acte isolé et la procédure législative dans laquelle il peut apparaître, sans qu’il soit nécessaire de lire et mémoriser le règlement et les pages wikipedia.

Solution sur un cas particulier

Quelle est concrètement la hiérarchie des actes de la procédure de Responsabilité pénale du président de la république ? C’est arrivé une seule fois depuis 2014 la hiérarchie est assez lisible:

Responsabilité pénale du président de la république
    Lecture (Etape_Type lecture)
        1er dépôt d'une initiative. (DepotInitiative_Type lecture-DEPOT)
        Recevabilité par le Bureau (DecisionRecevabiliteBureau_Type lecture-RECBUREAU)

Et en ajoutant des URLs:

Les actes sont:

  • mis en contexte dans la hiérarchie des actes pour une procédure donnée
  • associé au texte qui explique leur signification en détail

Généralisation

TL;DR: en fusionnant les hiérarchies de tout les dossiers on obtient une hiérarchie de tout les actes possibles pour une procédure donnée.

La fusion des hiérarchies d’actes de tout les dossiers Engagement de la responsabilité gouvernementale depuis 2014 donne cette hiérarchie:

  • Engagement de la responsabilité gouvernementale
    • Débat (Etape_Type AN21)
      • Motion de censure (DepotMotionCensure_Type AN21-MOTION)
      • Discussion en séance publique (Etape_Type AN21-DEBATS)
        • Discussion en séance publique (DiscussionSeancePublique_Type AN21-DEBATS-SEANCE)
        • Décision sur une motion de censure (DecisionMotionCensure_Type AN21-DEBATS-MOTION-VOTE)
      • Dépôt d’une déclaration du gouvernement (DeclarationGouvernement_Type AN21-DGVT)

Ce qui répond aux questions:

Mais ne dit rien sur:

  • Les actes qui peuvent se produire en théorie mais ne se sont pas encore produit en pratique
  • L’ordre dans lequel les actes se produisent

Il est probablement impossible de documenter précisément la hiérarchie de tous les actes possible en théorie pour une procédure donnée. Parce que cela supposerait une interprétation de nombreux textes (reglement de l’assemblée nationale etc.) qui pourrait être remise en cause au moment ou le cas concret se présente.

Ordonner les actes

TL;DR: à un niveau de hiérarchie l’ordre des actes est décrit par une expression régulière

Dans le cadre procédure législative, une douzaine d’actes peuvent arriver pendant une lecture, mais pas dans n’importe quel ordre. Par exemple le 1er dépôt d’une initiative précède nécessairement le Retrait d’une initiative. Une expression régulière permet d’exprimer l’ordre des actes à un niveau de hiérarchie. Pour reprendre l’exemple ci-dessus, l’expression régulière est:

^((/MOTION//DEBATS/)|(/DGVT/)){1,2}$
  • Une MOTION est forcément suivie d’un DEBAT
  • Il est possible d’avoir seulement une déclaration du gouvernement (DGVT)
  • Il est possible d’avoir seulement une MOTION suivie d’un DEBAT
  • Il est possible d’avoir une MOTION suive d’un DEBAT puis d’une déclaration du gouvernement (DGVT)
  • Il est possible d’avoir une déclaration du gouvernement (DGVT) puis une MOTION suive d’un DEBAT

Ou bien:

^/SAISIE/(/NOMIN/)*(/RAPPORT/)*$
  • Cela débute toujours par une SAISIE
  • Parfois suivit d’un nombre indéterminé de nominations (NOMIN)
  • Et se termine parfois par un nombre indéterminé de RAPPORTs

Les actes d’un dossier sont ordonnés a chaque niveau de la hiérarchie. En concaténant les codes de chaque acte on peut vérifier que la chaîne obtenue correspond à l’expression régulière et qu’ils sont donc dans l’ordre attendu.

Après fusion des hiérarchies de tout les dossiers, les actes ne sont plus dans un ordre prévisible. Mais il est possible de les trier dans le même ordre dans lequel ils apparaissent dans l’expression régulière. Le résultat est une approximation qui est meilleure qu’un désordre total. Par exemple si la hiérarchie contient:

  RAPPORT SAISIE NOMIN

et que l’expression régulière est:

^/SAISIE/(/NOMIN/)*(/RAPPORT/)*$

alors ce niveau de la hiérarchie sera trié comme suit:

SAISIE NOMIN RAPPORT

Plus l’expression régulière est complexe plus le résultat est approximatif.

Réduire la taille de la hiérarchie

Les codes suivants correspondent à des étapes successives de la navette parlementaire

Code Étapes
AN1 1ère lecture (1ère assemblée saisie),1ère lecture (2ème assemblée saisie)
SN1 1ère lecture (1ère assemblée saisie),1ère lecture (2ème assemblée saisie)
ANNLEC Nouvelle Lecture
SNNLEC Nouvelle Lecture
ANLDEF Lecture définitive
AN2 deuxième lecture
SN2 deuxième lecture
SN3 troisième lecture

La seule différence entre elles est que l’une se produit après l’autre (SN1 puis SN2 puis SN3 etc.). Comme elles n’ont pas de différence structurelles on les regroupe sous le code lecture pour avoir une seule hiérarchie au lieu de huit.

Pour les même raisons on regroupe les procédures parlementaires suivantes:

  • Proposition de loi ordinaire
  • Projet de loi ordinaire
  • Projet de ratification des traités et conventions
  • Projet ou proposition de loi organique
  • Projet ou proposition de loi constitutionnelle
  • Projet de loi de finances de l’année
  • Projet de loi de finances rectificative
  • Projet de loi de financement de la sécurité sociale

sous le libellé Procédure législative pour avoir une seule hiérarchie au lieu de huit.

Hiérarchie des actes pour chaque procédure parlementaire

Procédure législative
    Lecture (Etape_Type lecture)
        1er dépôt d'une initiative. (DepotInitiative_Type lecture-DEPOT)
        Travaux des commissions (Etape_Type lecture-COM)
            Travaux de la commission saisie au fond (Etape_Type lecture-COM-FOND)
                Renvoi en commission au fond (SaisieComFond_Type lecture-COM-FOND-SAISIE)
                Nomination de rapporteur (NominRapporteurs_Type lecture-COM-FOND-NOMIN)
                Dépôt de rapport (DepotRapport_Type lecture-COM-FOND-RAPPORT)
                Réunion de commission (DiscussionCommission_Type lecture-COM-FOND-REUNION)
            Travaux d'une commission saisie pour avis (Etape_Type lecture-COM-AVIS)
                Saisine pour avis d'une commission (SaisieComAvis_Type lecture-COM-AVIS-SAISIE)
                Nomination de rapporteur budgétaire (NominRapporteurs_Type lecture-COM-AVIS-NOMIN)
                Réunion de commission (DiscussionCommission_Type lecture-COM-AVIS-REUNION)
                Dépôt de rapport (DepotRapport_Type lecture-COM-AVIS-RAPPORT)
        Etude d'impact (EtudeImpact_Type lecture-ETI)
        Discussion en séance publique (Etape_Type lecture-DEBATS)
            Discussion en séance publique (DiscussionSeancePublique_Type lecture-DEBATS-SEANCE)
            Décision (Decision_Type lecture-DEBATS-DEC)
            Motion référendaire (DepotMotionReferendaire_Type lecture-DEBATS-MOTION)
            Décision (Decision_Type lecture-DEBATS-MOTION-VOTE)
        Le gouvernement déclare l'urgence / engage la procédure accélérée (ProcedureAccelere_Type lecture-PROCACC)
        Retrait d'une initiative (RetraitInitiative_Type lecture-RTRINI)
        Dépôt d'une lettre rectificative. (DepotLettreRectificative_Type lecture-DPTLETTRECT)
        Avis du Conseil d'Etat (DepotAvisConseilEtat_Type lecture-AVCE)
        Dépôt d'une déclaration du gouvernement (DeclarationGouvernement_Type lecture-DGVT)
        Motion de censure (DepotMotionCensure_Type lecture-MOTION)
        Accord international (DepotAccordInternational_Type lecture-ACIN)
    Promulgation de la loi (Etape_Type PROM)
        Promulgation d'une loi (Promulgation_Type PROM-PUB)
    Commission Mixte Paritaire (Etape_Type CMP)
        Convocation d'une CMP (RenvoiCMP_Type CMP-SAISIE)
        Commission Mixte Paritaire (Etape_Type CMP-COM)
            Nomination de rapporteur (NominRapporteurs_Type CMP-COM-NOMIN)
            Dépôt du rapport d'une CMP (DepotRapport_Type CMP-COM-RAPPORT-AN)
            Dépôt du rapport d'une CMP (DepotRapport_Type CMP-COM-RAPPORT-SN)
        Décision de la CMP (Decision_Type CMP-DEC)
        Dépôt d'un projet de loi (DepotInitiativeNavette_Type CMP-DEPOT)
        Discussion en séance publique (Etape_Type CMP-DEBATS-AN)
            Discussion en séance publique (DiscussionSeancePublique_Type CMP-DEBATS-AN-SEANCE)
            Décision (Decision_Type CMP-DEBATS-AN-DEC)
        Discussion en séance publique (Etape_Type CMP-DEBATS-SN)
            Discussion en séance publique (DiscussionSeancePublique_Type CMP-DEBATS-SN-SEANCE)
            Décision (Decision_Type CMP-DEBATS-SN-DEC)
    Conseil constitutionnel (Etape_Type CC)
        Saisine du conseil constitutionnel (SaisineConseilConstit_Type CC-SAISIE)
        Conclusion du conseil constitutionnel (ConclusionEtapeCC_Type CC-CONCLUSION)
    Mise en application de la loi (Etape_Type AN-APPLI)
        Rapport sur l'application des lois (DepotRapport_Type AN-APPLI-RAPPORT)
Allocution du Président de l'Assemblée nationale
    Débat (Etape_Type AN21)
        Allocution du Président de l'Assemblée nationale (DepotRapport_Type AN21-APAN)
Résolution Article 34-1
    Lecture unique (Etape_Type ANLUNI)
        1er dépôt d'une initiative. (DepotInitiative_Type ANLUNI-DEPOT)
        Discussion en séance publique (Etape_Type ANLUNI-DEBATS)
            Discussion en séance publique (DiscussionSeancePublique_Type ANLUNI-DEBATS-SEANCE)
            Décision (Decision_Type ANLUNI-DEBATS-DEC)
        Retrait d'une initiative (RetraitInitiative_Type ANLUNI-RTRINI)
Résolution
    Lecture unique (Etape_Type ANLUNI)
        1er dépôt d'une initiative. (DepotInitiative_Type ANLUNI-DEPOT)
        Travaux des commissions (Etape_Type ANLUNI-COM)
            Travaux de la commission saisie au fond (Etape_Type ANLUNI-COM-FOND)
                Renvoi en commission au fond (SaisieComFond_Type ANLUNI-COM-FOND-SAISIE)
                Nomination de rapporteur (NominRapporteurs_Type ANLUNI-COM-FOND-NOMIN)
                Réunion de commission (DiscussionCommission_Type ANLUNI-COM-FOND-REUNION)
                Dépôt de rapport (DepotRapport_Type ANLUNI-COM-FOND-RAPPORT)
            Renvoi préalable à la CAE (Etape_Type ANLUNI-COM-CAE)
                Renvoi préalable (RenvoiPrealable_Type ANLUNI-COM-CAE-SAISIE)
                Réunion de commission (DiscussionCommission_Type ANLUNI-COM-CAE-REUNION)
                Nomination de rapporteur (NominRapporteurs_Type ANLUNI-COM-CAE-NOMIN)
                Dépôt de rapport (DepotRapport_Type ANLUNI-COM-CAE-RAPPORT)
                Décision (Decision_Type ANLUNI-COM-CAE-DEC)
        Discussion en séance publique (Etape_Type ANLUNI-DEBATS)
            Discussion en séance publique (DiscussionSeancePublique_Type ANLUNI-DEBATS-SEANCE)
            Décision (Decision_Type ANLUNI-DEBATS-DEC)
        Retrait d'une initiative (RetraitInitiative_Type ANLUNI-RTRINI)
    Conseil constitutionnel (Etape_Type CC)
        Saisine du conseil constitutionnel (SaisineConseilConstit_Type CC-SAISIE)
        Conclusion du conseil constitutionnel (ConclusionEtapeCC_Type CC-CONCLUSION)
Rapport d'information sans mission
    Travaux (Etape_Type AN20)
        Dépôt de rapport (DepotRapport_Type AN20-RAPPORT)
    Instances communautaires (Etape_Type EU)
        Adoption par les instances communautaires (Adoption_Europe_Type EU-DEC)
Mission d'information
    Travaux (Etape_Type AN20)
        Mission d'information (Etape_Type AN20-MISINF)
            Création d'une mission d'information (CreationOrganeTemporaire_Type AN20-MISINF-CREA)
            Nomination de rapporteur (NominRapporteurs_Type AN20-MISINF-NOMIN)
            Dépôt de rapport (DepotRapport_Type AN20-MISINF-RAPPORT)
Commission d'enquête
    Travaux (Etape_Type AN20)
        Commission d'enquête (Etape_Type AN20-COMENQ)
            Création d'une commission d'enquête (CreationOrganeTemporaire_Type AN20-COMENQ-CREA)
            Nomination de rapporteur (NominRapporteurs_Type AN20-COMENQ-NOMIN)
            Dépôt de rapport (DepotRapport_Type AN20-COMENQ-RAPPORT)
Engagement de la responsabilité gouvernementale
    Débat (Etape_Type AN21)
        Motion de censure (DepotMotionCensure_Type AN21-MOTION)
        Discussion en séance publique (Etape_Type AN21-DEBATS)
            Discussion en séance publique (DiscussionSeancePublique_Type AN21-DEBATS-SEANCE)
            Décision sur une motion de censure (DecisionMotionCensure_Type AN21-DEBATS-MOTION-VOTE)
        Dépôt d'une déclaration du gouvernement (DeclarationGouvernement_Type AN21-DGVT)
Motion référendaire
    Lecture (Etape_Type lecture)
        1er dépôt d'une initiative. (DepotInitiative_Type lecture-DEPOT)
        Travaux des commissions (Etape_Type lecture-COM)
            Travaux de la commission saisie au fond (Etape_Type lecture-COM-FOND)
                Renvoi en commission au fond (SaisieComFond_Type lecture-COM-FOND-SAISIE)
                Nomination de rapporteur (NominRapporteurs_Type lecture-COM-FOND-NOMIN)
                Dépôt de rapport (DepotRapport_Type lecture-COM-FOND-RAPPORT)
        Discussion en séance publique (Etape_Type lecture-DEBATS)
            Décision (Decision_Type lecture-DEBATS-DEC)
Immunité
    Lecture unique (Etape_Type ANLUNI)
        1er dépôt d'une initiative. (DepotInitiative_Type ANLUNI-DEPOT)
        Travaux des commissions (Etape_Type ANLUNI-COM)
            Travaux de la commission saisie au fond (Etape_Type ANLUNI-COM-FOND)
                Renvoi en commission au fond (SaisieComFond_Type ANLUNI-COM-FOND-SAISIE)
                Nomination de rapporteur (NominRapporteurs_Type ANLUNI-COM-FOND-NOMIN)
                Dépôt de rapport (DepotRapport_Type ANLUNI-COM-FOND-RAPPORT)
        Discussion en séance publique (Etape_Type ANLUNI-DEBATS)
            Discussion en séance publique (DiscussionSeancePublique_Type ANLUNI-DEBATS-SEANCE)
            Décision (Decision_Type ANLUNI-DEBATS-DEC)
        Retrait d'une initiative (RetraitInitiative_Type ANLUNI-RTRINI)
Responsabilité pénale du président de la république
    Lecture (Etape_Type lecture)
        1er dépôt d'une initiative. (DepotInitiative_Type lecture-DEPOT)
        Recevabilité par le Bureau (DecisionRecevabiliteBureau_Type lecture-RECBUREAU)
Proposition de loi présentée en application de l'article 11 de la Constitution
    Lecture (Etape_Type lecture)
        1er dépôt d'une initiative. (DepotInitiative_Type lecture-DEPOT)
1 « J'aime »

Pour archive, l’implémentation du script qui génère les éléments de documentation et la documentation qui s’en sert.