À propos

Historique du projet metslesliens

Début 2018, le Bureau ouvert de la députée Paula Forteza et animé par Emmanuel Raviart a réalisé un mini-site facilitant la navigation dans le dossier législatif du projet de loi sur la protection des données personnelles, comportant notamment des liens entre les différents documents (projet de loi, textes européens, loi n° 78-17 « CNIL », etc). Partant du constat qu’un programme automatique permettant de créer ces liens ne semblait pas exister [d’une qualité suffisante et en logiciel libre] et du fait de l’urgence – puisque le projet de loi allait être mis à l’ordre du jour, les liens sur ce site ont été ajoutés par des bénévoles du Bureau ouvert.

En juin 2018, à l’occasion de la Nuit du Code citoyen à Rennes, le projet metsleliens a été créé par Seb35 pour pallier au manque d’un programme de ce type. L’idée d’utiliser une grammaire PEG est venue d’un participant du hackathon, Pierre-Yves. Les grammaires PEG permettent notamment, à la différence des expressions régulières, une meilleure lisibilité et compréhension de l’ensemble des règles. Compte-rendu de l’atelier Lois du hackathon.

La première version de metslesliens (et à août 2019 la version stable de référence) a été écrite en Python avec la librairie Parsimonious. L’essentiel de la grammaire a été écrit entre juin et août 2018, la grammaire a atteint une qualité très correcte en juillet et la version 1.0 a été créée le 28 août 2018. Cette version est utilisée depuis juillet 2018 par La Fabrique de la Loi (exemple).

La version JavaScript (actuellement expérimentale) a été créée en août 2019 en portant la grammaire Parsimonious vers une grammaire PEG.js (essentiellement remplacement des commentaires, transformation des petites expressions régulières (inexistantes en PEG.js) en grammaire PEG et création d’actions PEG.js permettant de transformer le résultat capturé en un arbre sémantique plus utilisable que le résultat syntaxique).

Le présent site Web fait suite à ce portage et comble le manque d’une interface permettant de faciliter le debug de la grammaire. Son code source est disponible sous licence WTFPL 2.0.

Futures fonctionnalités