Legilibre / Archeo-Lex

Pure Histoire de la Loi française – Git + Markdown
https://archeo-lex.fr
Do What The F*ck You Want To Public License
98 stars 17 forks source link

Fichier manquant dans le code de l’urbanisme #30

Closed Seb35 closed 6 years ago

Seb35 commented 7 years ago

Dans le code de l’urbanisme (LEGITEXT000006074075), AL fait correctement la mise en base de données (option CLI --ranger), mais l’export Git plante à la première version avec le message

IOError: [Errno 2] No such file or directory: u'cache/bases-xml/legi/global/code_et_TNC_en_vigueur/code_en_vigueur/LEGI/TEXT/00/00/06/07/40/LEGITEXT000006074075/article/LEGI/ARTI/00/00/31/39/86/LEGIARTI000031398648.xml'

Cet article est référencé dans LEGISCTA000006175987, mais il n’y a effectivement pas d’article LEGIARTI000031398648 ni de lien vers cet article depuis d’autre articles (pas obligatoire mais ça aurait été possible). Dans la section, cet article est décrit comme

<LIEN_ART debut="2015-10-31" etat="VIGUEUR" fin="2999-01-01" id="LEGIARTI000031398648" num="R425-29-1" origine="LEGI"/>

La version de la base LEGI utilisée est 20170217-212119.


Même problème avec le Code de l’action sociale et des familles (LEGITEXT000006074069) sur l’article LEGIARTI000033706110 décrit dans la section LEGISCTA000018780362 comme :

<LIEN_ART debut="2016-12-29" etat="VIGUEUR" fin="2999-01-01" id="LEGIARTI000033706110" num="Annexe 1-2" origine="LEGI"/>

À la différence de l’exemple précédent, cet article est référencé depuis d’autres articles, par exemple LEGIARTI000021940980.

Seb35 commented 7 years ago

@Changaco As-tu remarqué ce genre de problème : article décrit dans une section SCTA mais fichier ARTI manquant ?

Je m’interroge si c’est mon opération de décompression des tarballs qui pose problème ou si c’est un problème dans la base LEGI. S’il s’avère que c’est réellement un problème dans la base LEGI, ça pourrait faire l’objet d’une détection d’anomalie.

Changaco commented 7 years ago

Je confirme que c'est une anomalie. Je vois bien la référence dans la table sommaires :

select * from sommaires where cid = 'LEGITEXT000006074069' and element = 'LEGIARTI000033706110';
LEGITEXT000006074069|LEGISCTA000018780362|LEGIARTI000033706110|2016-12-29|2999-01-01|VIGUEUR|Annexe 1-2|1|section_ta_liens

mais il n'y a pas de ligne correspondante dans la table articles :

select * from articles where id = 'LEGIARTI000033706110';

Version de la base : 20170224-204824.

Seb35 commented 7 years ago

Ok, donc ça devient un truc à gérer à l’export, peut-être en évitant une erreur fatale et en indiquant plutôt quelque chose comme "(article manquant)".

J’ouvre une issue dans legi.py pour créer cette fonctionnalité de recherche d’article manquant.

Changaco commented 7 years ago

L'article existe sur Legifrance : https://www.legifrance.gouv.fr/affichCodeArticle.do?idArticle=LEGIARTI000033706110&cidTexte=LEGITEXT000006074069&dateTexte=20170225

Le problème est donc au niveau des archives LEGI.

Changaco commented 7 years ago

J'ai envoyé un courriel à la DILA pour leur signaler le problème des fichiers manquants et la mise en ligne des nouvelles listes d'anomalies.

Seb35 commented 6 years ago

Le commit f710533 rend un peu plus visible et explicite ce problème en indiquant explicitement dans le texte de loi que le corps et/ou le numéro de l’article manque, en mettant un avertissement à la fin de l’exécution d’Archéo Lex, et en documentant dans doc/limitations.md ce problème – dans les données elle-même de la base LEGI, donc Archéo Lex ne peut pas lui-même créer cette donnée, le mieux à faire est de pointer et documenter le problème en attendant que ça soit corrigé à la source des données.

Changaco commented 5 years ago

Pour info, on a trouvé et corrigé une cause du problème des fichiers manquants : https://github.com/Legilibre/legi.py/issues/42.