Sobre o projeto

O eurlex-builder é um pipeline configurável de linha de comandos em Python para construir conjuntos de dados prontos para investigação a partir de material legislativo do EUR-Lex / Cellar. Obtém diretivas, regulamentos, decisões, comunicações e outros atos da UE e, em seguida, extrai texto com granularidade selecionável: artigos completos, parágrafos numerados ou alíneas. A ferramenta destina-se à investigação jurídica quantitativa, ao PLN, à classificação e à análise de redes da legislação da UE. O pipeline produz uma base de dados de trabalho DuckDB e quatro tabelas Parquet: works, text_units, relations e eurovoc. Suporta dois modos principais de consulta: o modo fixo, em que os utilizadores fornecem identificadores CELEX ou números de procedimento, e o modo descritivo, em que os utilizadores selecionam tipos de documentos, intervalos de datas e filtros opcionais por palavras-chave EuroVoc. Lida com múltiplas estruturas HTML do EUR-Lex e inclui extração de recurso a PDF para documentos mais antigos ou não legíveis por máquina, utilizando Docling e pymupdf. As principais capacidades incluem decomposição sub-article, remoção de texto repetitivo, extração de considerandos/artigos/anexos, captura de relações entre documentos, como citações, alterações, bases jurídicas, revogações e consolidações, e tradução opcional de conteúdo não inglês utilizando revisões Helsinki-NLP Opus-MT. A tradução é protegida com tentativas limitadas por tokens e verificações de qualidade, e os resultados rejeitados permanecem no idioma de origem em vez de substituírem o texto original. A ferramenta dá ênfase à reprodutibilidade e à possibilidade de retomar. Um único ficheiro YAML define o conjunto de dados, enquanto o DuckDB armazena pontos de verificação, manifestos de execução, hashes de configuração validados, versões de dependências e estado de conclusão. Os comandos CLI incluem run, translate, enrich, status e validate. O enriquecimento pode adicionar metadados a posteriori através de SPARQL, incluindo datas de entrada em vigor, ELI, instituições autoras, matéria, detalhes do procedimento, descritores EuroVoc e relações de revogação. O comando validate realiza verificações de integridade apenas de leitura, sem modificar a base de dados. O README observa que a recuperação de texto integral funciona de forma ampla, mas a extração granular é mais fiável para regulamentos, diretivas e decisões. As comunicações extraem-se bem, mas têm lacunas conhecidas, enquanto propostas, documentos de trabalho dos serviços e jurisprudência podem perder unidades estruturais ou não produzir unidades de texto. Isto torna o projeto especialmente útil para investigadores que constroem corpora estruturados e auditáveis de textos legislativos da UE.