Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Duralex Sedlex

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
Avatar for BlueHats BlueHats
December 06, 2018

Duralex Sedlex

Avatar for BlueHats

BlueHats

December 06, 2018
Tweet

More Decks by BlueHats

Other Decks in Technology

Transcript

  1. A propos de moi • Entrepreneur • Contributeur à Légilibre

    (https://github.com/legilibre) • Différents projets OS “civictech” ◦ Cocorico (https://github.com/promethe42/cocorico), plateforme de vote en ligne sur la blockchain ◦ assemblee-nationale.sh (https://framagit.org/parlement-ouvert/assemblee-nationale.sh), drop-in pour transformer le site de l’Assemblée Nationale en XML ◦ DuraLex/SedLex, compilateur de projet de loi vers git/diff ▪ https://github.com/legilibre/DuraLex ▪ https://github.com/legilibre/SedLex
  2. La légistique : exemple d’amendement Article 4, Alinéa 6 Remplacer

    les mots : "et qui ne font pas" par les mots : "le cas échéant après concertation entre les administrations mentionnées au premier alinéa de l’article L. 300-2 du présent code lorsqu’elles font déjà”
  3. Parallèle avec git • Codes / loi en vigueur =>

    dépôt • Projet de loi => branche • Lecture / vote => merge request • Amendement => commit Est-ce que cette équivalence s’applique dans la réalité ?
  4. Mais des différences pratiques & historiques • En programmation, on

    modifie le code existant pour produire un diff. • Les diffs sont écrits dans un format structuré. • L’application des patchs est automatisées. • L’application du patch est déterministe. • On rédige un amendement pour modifier le code existant. • Les amendements sont rédigés en français naturel. • L’application d’un amendement est manuel. • L’application d’un amendement n’est pas déterministe. VS git légistique
  5. Objectifs de DuraLex/SedLex • Transformer l’existant légistique pour le rendre

    automatisable. • Compatibilité avec les outils utilisés dans le développement ◦ git ◦ diff ◦ patch • Moderniser/automatiser la légistique et la navette législative • Permettre de créer des outils de traitement (automatisé) des projets de loi • Rendre automatiquement accessibles aux citoyens
  6. Article 4, Alinéa 6 Remplacer les mots : "et qui

    ne font pas" par les mots : "le cas échéant après concertation entre les administrations mentionnées au premier alinéa de l’article L. 300-2 du présent code lorsqu’elles font déjà" Amendement ID : 3 Edit Type: replace Article Reference ID : 4 Alinéa Reference ID : 6 Words Reference “et qui…” Words “le cas échéant…” DuraLex, le “frontend” français => arbre sémantique DuraLex
  7. SedLex, le “backend” : arbre sémantique => git Exemple: https://legilibre.fr/loi_77-729/

    AST DuraLex GitHub GitLab GitBook HTML • Création automatique de diff avec le texte original, commits, patch, etc... • Création automatique d’issues, de merge requests, etc… • Création automatique de diff visuel en HTML. • Reformulation de l’amendement en français naturel. • Création automatique de liens bidirectionnels entre amendements et textes impactés. git
  8. Comment contribuer ? • https://github.com/legilibre/duralex • https://github.com/legilibre/sedlex • Développé en

    Python 3 • Refonte en utilisant une grammaire PEG • Mettre en place une stratégie de tests • Outils connexes ◦ ArcheoLex (https://github.com/Legilibre/Archeo-Lex)