Mejor contexto, mejores respuestas
Expande las siglas y trae el texto íntegro de la norma citada. Una IA (o una persona) responde con el artículo delante, no de memoria: menos alucinaciones y respuestas verificables.
Python · siglas jurídicas · 647 verificadas
legal-expand detecta siglas legales, las expande con su significado oficial y resuelve las referencias del texto: enlaza la norma citada, ya esté en el BOE (España) o en EUR-Lex (UE), y trae el texto íntegro de sus artículos. Sin dependencias, con CLI y tres formatos de salida.
pip install legal-expandPara contextos de IA y profesionales
Expande las siglas y trae el texto íntegro de la norma citada. Una IA (o una persona) responde con el artículo delante, no de memoria: menos alucinaciones y respuestas verificables.
Nadie se sabe todo el ordenamiento. legal-expand pone el significado de cada sigla y el texto del artículo justo cuando lo necesitas, sin salir del documento ni buscar en el BOE.
En vivo
El paquete de Python corre en tu navegador con Pyodide. Lo que ves es exactamente lo que devuelve legal-expand, edge cases incluidos.
Casos límite reales
Cada entrada y salida de abajo se generó con el paquete real. Son los casos donde un enfoque ingenuo falla.
Distingue CEE de CE por longitud descendente; no confunde una sigla contenida en otra.
No expande siglas incrustadas dentro de una palabra mayor.
Ignora siglas dentro de URLs, emails y código.
Procesa texto con acentos, eñes y emojis sin romperse.
Detecta la forma con puntos A.E.A.T. como equivalente a AEAT.
Con expand_only_first solo se expande la primera ocurrencia de cada sigla.
El texto circundante se escapa: el marcado no confiable no se ejecuta.
Resuelve por número, offline, cualquier norma española del catálogo consolidado (no solo alias curados).
La normativa UE (RGPD, Reglamentos, Directivas) se enlaza a su página en EUR-Lex por su número CELEX.
Capacidades
647 siglas verificadas de RAE, BOE y DPEJ. Detecta variantes con puntos, respeta mayúsculas y resuelve duplicados.
Detecta siglas conocidas y desconocidas, cuenta apariciones y genera un informe con glosario y trazabilidad.
Reconoce normas y unidades (artículos, disposiciones, anexos), enlaza a la legislación consolidada y marca la ambigüedad.
Texto plano, HTML semántico con etiquetas <abbr> y salida estructurada JSON con estadísticas de procesamiento.
Amplía el diccionario base con tus siglas en JSON o CSV, con prioridades y palabras de contexto.
Interfaz de línea de comandos para expandir, auditar, exportar glosarios y procesar carpetas enteras.
Legislación consolidada
Detecta referencias legales, las resuelve contra la legislación consolidada y, en modo online, trae el texto real del artículo citado.
Superficie de integración
expandir_siglas, auditar_texto, enriquecer_boe.<abbr> y JSON estructurado.from legal_expand import expandir_siglas, ExpansionOptions
texto = "La AEAT gestiona el IVA según el art. 24 de la CE."
# Texto plano
print(expandir_siglas(texto))
# HTML semántico con <abbr>
html = expandir_siglas(texto, ExpansionOptions(format="html"))
# Salida estructurada con estadísticas
data = expandir_siglas(texto, ExpansionOptions(format="structured"))
print(data.stats.total_expanded)Cómo configurarlo
Cada necesidad se cubre con una función o una opción. Estos son los casos más habituales.
| Quiero… | Configuración |
|---|---|
| Expandir siglas en un texto | expandir_siglas(texto) |
| Salida HTML con <abbr> | ExpansionOptions(format="html") |
| Salida estructurada (JSON) | ExpansionOptions(format="structured") |
| Solo la primera aparición | ExpansionOptions(expand_only_first=True) |
| Excluir o limitar siglas | ExpansionOptions(exclude=[...], include=[...]) |
| Diccionario propio (JSON/CSV) | ExpansionOptions(custom_dictionaries=["mio.json"]) |
| Auditar un documento | auditar_texto(texto) |
| Glosario único | exportar_glosario(texto, "markdown") |
| Detectar y enlazar normas BOE (offline) | enriquecer_boe(texto, BOEOptions(mode="offline")) |
| Resolver cualquier norma por su número | BOEOptions(use_boe_index=True) # por defecto |
| Traer el artículo completo del BOE | BOEOptions(mode="online", include_unit_text=True) |
| Enlazar normativa UE (RGPD, Directivas) | automático → EUR-Lex por número CELEX |
| Procesar una carpeta entera | procesar_directorio("entrada", "salida") |
Qué corre dónde
| Función | En esta demo | Detalle |
|---|---|---|
| Expandir · auditar · glosario | En vivo | El paquete real corre en el navegador con Pyodide; resultados idénticos al de tu máquina. |
| Detección de referencias BOE | En vivo | Normas, unidades, ambigüedad y enlaces oficiales, sin red. |
| Normativa UE (RGPD, Directivas) | En vivo | Se resuelve a su página en EUR-Lex por número CELEX, sin red. |
| Traer texto de artículos BOE | Vía proxy | Requiere un pequeño proxy que sortee CORS; en tu máquina funciona directo con --mode online. |
| Procesamiento por lotes | Local | El comando batch recorre carpetas de tu sistema de archivos. |