Converti le leggi italiane in testo semplice e strutturato per le intelligenze artificiali
Trasforma i contenuti di normattiva.it in formato Markdown AI-ready
pip install normattiva2md
normattiva2md "https://normattiva.it/..." output.md
Caratteristiche Principali
Tutto ciò che serve per integrare le normative italiane nei tuoi sistemi AI
Supporto URL diretto
Processa direttamente URL da normattiva.it senza download manuale. Auto-detection e conversione immediata.
normattiva2md "URL"
Ricerca in linguaggio naturale
Trova leggi per contenuto, non solo per riferimento normativo. Ricerca basata su Exa AI.
-s "legge Stanca accessibilità"
Riferimenti incrociati
Link automatici a leggi citate. Scarica automaticamente tutte le normative referenziate.
--with-references
Ottimizzato per LLM
Output con YAML frontmatter e gerarchia book-style (H1→H4). Fino al 60% di riduzione token rispetto a XML.
Estrazione articoli
Estrai singoli articoli specifici da una legge usando la sintassi ~art. Perfetto per analisi mirate.
~art3, ~art16bis
Pronto per la produzione
Security features, CI/CD con GitHub Actions, binary precompilati. Testato e documentato.
Uso delle API
Dalla v2.1 puoi integrare normattiva2md direttamente nei tuoi script Python
API programmabile
Moduli dedicati per conversione, modelli dati e gestione errori
(api.py,
models.py,
exceptions.py).
ConversionResult
e SearchResult
Funzioni standalone
Tre entry point per partire subito: convert_url(),
convert_xml() e
search_law().
from normattiva2md import convert_url, convert_xml, search_law
# Conversione da URL
result = convert_url(
"https://www.normattiva.it/uri-res/N2Ls?urn:nir:stato:legge:2022;53",
article="3"
)
print(result.markdown[:500])
# Conversione da XML locale
xml_result = convert_xml("documento.xml")
# Ricerca con linguaggio naturale
hits = search_law("legge stanca accessibilità")
for hit in hits[:3]:
print(hit.title, hit.urn)
Vedi la differenza
Da XML Akoma Ntoso a Markdown pulito e LLM-friendly
<article eId="art_1">
<num>1</num>
<heading>Definizioni</heading>
<paragraph eId="art_1__para_1">
<num>1</num>
<list eId="art_1__para_1.__list_1">
<intro>
<p>Ai fini del presente codice
si intende per:</p>
</intro>
<point eId="art_1__para_1.__point_c">
<num>c)</num>
<content>
<p>carta d'identita' elettronica:
il documento d'identita' munito di
elementi per l'identificazione fisica
del titolare rilasciato su supporto
informatico dalle amministrazioni
comunali con la prevalente finalita'
di dimostrare l'identita' anagrafica
del suo titolare;</p>
</content>
</point>
</list>
</paragraph>
</article>
---
title: Codice dell'amministrazione digitale
url: https://www.normattiva.it/...
dataGU: 20050516
codiceRedaz: 005G0104
dataVigenza: 20250130
---
# Art. 1 - Definizioni
1. Ai fini del presente codice si
intende per:
- c) carta d'identita' elettronica:
il documento d'identita' munito di
elementi per l'identificazione fisica
del titolare rilasciato su supporto
informatico dalle amministrazioni
comunali con la prevalente finalita'
di dimostrare l'identita' anagrafica
del suo titolare;
Risultato: Token ottimizzati per LLM, struttura book-style perfetta per RAG, metadata completi per tracciabilità
Inizia in 60 secondi
Scegli il tuo metodo di installazione preferito
Installazione con pip
Il metodo più comune. Funziona con Python 3.7+
# Installa da PyPI
pip install normattiva2md
# Verifica installazione
normattiva2md --version
# Uso base: da URL normattiva.it
normattiva2md "https://www.normattiva.it/uri-res/N2Ls?urn:nir:stato:legge:2022;53" output.md
# Uso base: da file XML locale
normattiva2md input.xml output.md
# Output a stdout (per piping)
normattiva2md input.xml > output.md
Installazione con uv
Metodo raccomandato per gestione tool isolati. Richiede uv
# Installa uv (se non già installato)
curl -LsSf https://astral.sh/uv/install.sh | sh
# Installa normattiva2md come tool
uv tool install normattiva2md
# Uso
normattiva2md "URL" output.md
Installazione da sorgenti
Per sviluppatori o per contribuire al progetto
# Clone repository
git clone https://github.com/ondata/normattiva_2_md.git
cd normattiva_2_md
# Installa in development mode
pip install -e .
# Oppure installa direttamente
pip install .
# Usa normalmente
normattiva2md input.xml output.md
Esempi Rapidi
normattiva2md "https://www.normattiva.it/uri-res/N2Ls?urn:nir:stato:decreto.legislativo:2005-03-07;82" cad.md
# Configura API key
export EXA_API_KEY='your-api-key'
# Ricerca in linguaggio naturale
normattiva2md -s "legge stanca accessibilità" output.md
# Debug mode con selezione interattiva
normattiva2md -s "GDPR italiano" output.md --debug-search
# Estrai solo articolo 3
normattiva2md "https://www.normattiva.it/uri-res/N2Ls?urn:nir:stato:decreto.legislativo:2005-03-07;82~art3" articolo3.md
# Articoli con bis/ter
normattiva2md "https://www.normattiva.it/uri-res/N2Ls?urn:nir:stato:decreto.legislativo:2005-03-07;82~art6bis" art6bis.md
# Scarica legge + tutte le leggi citate
normattiva2md "https://www.normattiva.it/uri-res/N2Ls?urn:nir:stato:decreto.legislativo:2005-03-07;82" output.md --with-references
Hai bisogno di aiuto? Consulta la documentazione completa
Possibile grazie a Normattiva
Questo progetto si basa sul servizio di Normattiva, che rende disponibili le norme italiane in formato XML strutturato (Akoma Ntoso). Senza questo normattiva2md non sarebbe stato possibile.
Normattiva eroga un servizio completo di informazione sulle leggi italiane, garantendo accessibilità e trasparenza normativa per tutte le persone.
Visita Normattiva.itPronto per iniziare?
Inizia a convertire le normative italiane in formato AI-ready in meno di un minuto