TeX System: un Sistema per la Gestione TeX System: un Sistema per la Gestione
Temporale di Testi Normativi Temporale di Testi Normativi
Marco Bergonzini Marco Bergonzini
Università degli Studi di Modena e Reggio Emilia Università degli Studi di Modena e Reggio Emilia
Facoltà di Ingegneria - Corso di Laurea in Ingegneria Informatica Facoltà di Ingegneria - Corso di Laurea in Ingegneria Informatica
Relatore:
Relatore:
Prof. Paolo Tiberio Prof. Paolo Tiberio
Correlatori:
Correlatori:
Dott. Federica Mandreoli Dott. Federica Mandreoli Prof. Fabio Grandi
Prof. Fabio Grandi
Anno Accademico 2002/2003 Anno Accademico 2002/2003
Controrelatore:
Controrelatore:
Prof. Sonia Bergamaschi Prof. Sonia Bergamaschi
TeX TeX
System System Introduzione
Introduzione
La difficoltà di interpretazione dei testi normativi è un problema di sempre maggior importanza
Ambito di applicabilità
Ambito di applicabilità: l’insieme delle situazioni in cui una disposizione normativa trova applicazione
In particolare, ci occuperemo dell’ambito di applicabilità temporale, applicabilità temporale cioè “quando” una disposizione può essere applicata
Disposizione attiva o modificante
Disposizione passiva o modificanda
Disposizione modificata
Nessi normativi
Sono ora presenti due diverse versioni della disposizione passiva, individuare quale sia Aliquota IVA 19% Aliquota IVA 20%
TeX TeX
System System Introduzione
Introduzione
Modifiche testuali
Modifiche testuali: eliminano la disposizione passiva o ne cambiano in testo
Modifiche temporali
Modifiche temporali: incidono sull’ambito di applicabilità temporale della disposizione senza modificarne il testo
Esempio: L’art. 49 dello statuto del Comune, adottato con deliberazione O.d:G. n.26 del 17 giugno 1991 ed esecutivo dal 16 dicembre 1991, è sostituito del seguente “Art. 49 …”
Esempio: L’art. 12 della legge n. 898 del 1 dicembre 1970 è prorogato fino al 30 giugno 1996
Modifiche materiali
Modifiche materiali: influiscono sulla portata normativa di una disposizione senza modificarne il testo. Non riguardano aspetti temporali e non saranno considerate nel seguito
TeX TeX
System System Obiettivi della tesi
Obiettivi della tesi
Progettazione e sviluppo di un sistema in grado di fornire all’utente un aiuto concreto nell’interpretazione dei testi normativi.
Gestione trasparente degli aspetti temporali delle modifiche dei testi normativi.
Fasi del progetto TeX:
• Definizione di un modello temporale XML per la rappresentazione delle norme nel tempo
• Definizione degli operatori di modifica e ricostruzione
• Progettazione e realizzazione del prototipo
Il lavoro è stato svolto nell’ambito del progetto MIUR ex-40%
“La dinamica della norma nel tempo: aspetti giuridici e informatici”, in collaborazione col CIRSFID
TeX TeX
System System Modello Temporale XML
Modello Temporale XML
I requisiti di un modello per la rappresentazione dei testi normativi sono:
• rispetto della struttura gerarchica articolato – capo – articolo – comma
Ereditarietà Raffinamento Versioni e Timestamp
Ver1
Ver1
Ver1 Ver1
Ver2
Ver2
• capacità di ogni livello della gerarchia di rappresentare versioni multiple, ognuna caratterizzata dai propri attributi temporali
TeX TeX
System System Dimensioni Temporali
Dimensioni Temporali
Le dimensioni temporali che si è deciso di supportare sono le seguenti:
• Publication time: è il tempo in cui il testo normativo viene pubblicato sulla Publication time gazzetta ufficiale
• Validity time: è il periodo in cui la norma è in vigoreValidity time
• Efficacy time: identifica il tempo in cui la norma è applicabile al caso concretoEfficacy time
• Transaction time: è il tempo in cui il testo normativo è memorizzato nel Transaction time database
Queste dimensioni sono tra loro “ortogonali”, possono essere trattare in maniera del tutto indipendente
TeX TeX
System System Schema XML del Modello
Schema XML del Modello
Legge
Titolo Articolato Natura
Ver Capo
Ver
Rubrica Articolo Ver
Rubrica Comma Ver
Articolato
Pubblicazione – R Vt_Start – R Vt_End – O Tt_Start – R Tt_End – O Et_Start – R Et_End – O
XML
• Adatto alla rappresentazione di documenti con una struttura gerarchica.
• Permette di aggiungere con facilità “etichette” sui testi.
• Si sta affermando sempre più come formato di scambio dati su Web.
• E’ uno standard W3C.
Articolo
Ver TA
Modello Modificato
Num – R Rif – O
VT ET
TT
Ver
Num – R Rif - O Vt_Start – O Vt_End – O Tt_Start – O Tt_End – O Et_Start – O Et_End – O VT
ET
TT
TeX TeX
System System
Legge Decreto
legislativo
Articolato Importazione cereali Ver 1
Capo 1 Capo 2
Ver 1
Comma 1 Comma 2 Importazione
dalla Spagna
Ver 1 Ver 2 Testo Testo
Ver 2 Comma 1
Ver 1 Testo Ver 1
Importazione dai paesi
dell’UE
Articolo 1 Articolo 2
Ver 1 Ver 2
Importazione dai paesi extracomunitari
Articolo 1 Ver 1
Comma 1 Comma 2 Ver 1
Testo
Ver 1 Ver 2 Testo Testo
Un Documento Conforme allo Schema
Un Documento Conforme allo Schema
TeX TeX
System System Operatori
Operatori
Sul modello sono previsti tre operatori:
• Ricostruzione: permette di consultare i testi normativi attraverso Ricostruzione
“viste temporali” dei documenti. Soltanto le versioni compatibili con i vincoli temporali richiesti saranno restituite nel testo
ricostruito.
• Modifica Testuale: gestisce le modifiche testuali (abrogazioni, Modifica Testuale inserimenti e sostituzioni) garantendo che le vecchie versioni del testo siano conservate
• Modifica Temporale: si occupa della modifica delle coordinate Modifica Temporale temporali di disposizioni normative già esistenti
TeX TeX
System System Ricostruzione
Ricostruzione
Legge Decreto
legislativo
Articolato Importazione cereali Ver 1
Capo 1 Capo 2
Ver 1
Comma 1 Comma 2 Importazione
dalla Spagna
Ver 1 Ver 2 Testo Testo
Ver 2 Comma 1
Ver 1 Testo Ver 1
Importazione dai paesi
dell’UE
Articolo 1 Articolo 2
Ver 1 Ver 2
Importazione dai paesi extracomunitari
Articolo 1 Ver 1
Comma 1 Comma 2 Ver 1
Testo
Ver 1 Ver 2 Testo Testo
TeX TeX
System System
0 – nessuna operazione
1 – timestamp includono i vincoli 2 – timestamp prima dei vincoli 3 – timestamp dopo i vincoli
4 – timestamp intersecano i vincoli 5 – timestamp non contenuti nei vincoli 6 – timestamp contenuti nei vincoli 7 – timestamp non intersecano i vincoli
Ricostruzione Ricostruzione
Operazioni supportate
Timestamp della disposizione Punto temporale
Intervallo temporale
TeX TeX
System System Modifica Testuale
Modifica Testuale
Esempio: la legge n°134 del 12 febbraio 1996, viene inserita nel database il giorno successivo e entra in vigore il 27 dello stesso mese. In data 1 dicembre 2000 viene deliberata una modifica testuale all’articolo 2 del primo capo. Il suo contenuto deve essere completamente sostituito da un nuovo testo che entrerà in vigore il 1 gennaio 2001 e ne uscirà alla fine dello stesso anno. L’operazione è svolta sul database il 3 dicembre 2000
VT
TT
27-02-96
13-02-96
01-01-01 31-12-01
NOW
Propagazione delle modifiche ai livelli inferiori
VT
TT
Livello
TeX TeX
System System Modifica Temporale
Modifica Temporale
Esempio: in data 12 novembre 2001 viene approvata una modifica sull’articolo 2 della legge n°134 del 12 febbraio 1996, il testo al momento in vigore deve essere prorogato per tutto l’anno 2002. La registrazione del fatto avviene il 15 novembre 2001
VT
TT
27-02-96
13-02-96
01-01-01 31-12-01
03-12-00
31-12-02
NOW
VT
TT
Propagazione delle modifiche ai livelli superiori
TeX TeX
System System Architettura del Sistema
Architettura del Sistema
Documenti
XML Query Documenti XML
Documenti XML, modifiche testuali o temporali
Pre- processing
Query
Processor Update Processor
?
XML Repository Inverte
d Index
XML Repository
Memorizzazione dei testi mormativi:
• DB2
• SQL Server
• Oracle
Oracle XML DB offre numerose e pratiche funzionalità per la gestione di dati XML static
Pre- processing
Query Processor
Update Processor
La gestione degli aspetti dinamici è svolta da uno strato programmato in Java e costruito “on top” al database La scelta di Java assicura la portabilità del software e l’integrazione con il Web
Inverte d Index
L’indicizzazione dei testi è svolta attraverso un inverted index realizzato con il pacchetto Oracle interMedia Due alternative per la memorizzazione dei dati sono state analizzate:
• Tabella XML
• Tabella Ibrida
Legge (Codice, ColonnaXML)
LeggeI (Codice, ColonnaXML, pubblicazione, vt_start, vt_end, tt_start, tt_end, et_start, et_end, natura)
TeX TeX
System System Test del Prototipo
Test del Prototipo
Tutte le prove sperimentali sono state eseguite su un personal comupter dotato di processore x86 Family 6 Model 7 con 256MB di RAM, sistema operativo Windows NT 4 Service Pack 6 e disco rigido SCSI; il DBMS usato è Oracle 9i Release 1
I generatori di benchmark XML esistenti si sono rivelati indatti alla creazione di documenti temporali, è allora stato realizzato un algoritmo per la creazione pseudo-casuale dei documenti
Sono stati generati tre dataset delle seguenti dimensioni:
1000 documenti, 26 MB 2000 documenti, 53 MB 5000 documenti, 130 MB
TeX TeX
System System Selezione
Selezione
0 5000 10000 15000 20000 25000 30000
Tabella ibrida
1000 documenti 2000 documenti 5000 documenti
Q1 Q2 Q3 Q4 Q5 Q6
0 5000 10000 15000 20000 25000 30000
Tabella XML
1000 documenti 2000 documenti 5000 documenti
Q1 Q2 Q3 Q4 Q5 Q6
Per le prove di selezione sono stati considerati sei diversi tipi di query, Q1 e Q2 non contengono condizioni temporali, al contrario Q3 presenta solo condizioni temporali, le altre query sono miste
millisecondi millisecondi
0 5000 10000 15000 20000 25000 30000
Selezione Estrazione titoli
Q1 Q2 Q3 Q4 Q5 Q6
millisecondi
TeX TeX
System System Inserimento
Inserimento
I test di inserimento sono stati svolti su collezioni di 5000 documenti e considerando anche il costo per l’aggiornamento del text index
Dimensione media documenti inseriti: 22 KB
0 1000 2000 3000 4000 5000 6000 7000 8000
1 10 30
Numero Documenti
Tabella XML
Insert Update
0 1000 2000 3000 4000 5000 6000 7000 8000
1 10 30
Numero Documenti
Tabella ibrida
Insert Update
millisecondi millisecondi
TeX TeX
System System Ricostruzione e Modifica
Ricostruzione e Modifica
La tabella utilizzata non influisce sul tempo delle operazioni di ricostruzione e modifica
E’ invece importante la scelta del modello, l’adozione del modello he supporta i time elements comporta mediamente una dimensione 3 volte minore per documenti che abbiano subito variazioni
La differenza di velocità non è stata particolarmente apprezzabile nei test, ma l’occupazione di memoria centrale può essere un fattore determinante se il numero delle operazioni da svolgere è molto grande Una notevole degenerazione delle prestazioni potrebbe essere causata dalla richiesta eccessiva di memoria
TeX TeX
System System Sviluppi Futuri
Sviluppi Futuri
• Metodo di memorizzazione Object-Relational
• Sviluppi di estensioni temporali dei DBMS commerciali
• Interfaccia Web
M. Bergonzini, F. Grandi, F. Mandreoli, P. Tiberio
“A temporal data model and system architecture for the management of normative texts”
11° congresso SEBD, Cetraro (CS) 24-27 Giugno 2003