• Non ci sono risultati.

XML e i dati temporali

Nel documento Corso di Laurea in Ingegneria Informatica (pagine 46-50)

4. Dati Semistrutturati - XML

DATI SEMISTRUTTURATI - XML

4.7. XML e i dati temporali

Dai precedenti paragrafi si può evincere che la scelta di XML per la rappresentazione dei testi normativi è motivata principalmente da due aspetti, il primo è la possibilità di produrre documenti che contengano la struttura del testo oltre al testo stesso, il secondo, non meno importante, è la sempre maggior espansione di XML come standard per il passaggio di dati tra applicazioni diverse. Resta da analizzare l’efficacia di XML in presenza di dati che, per essere correttamente interpretati, abbiano la necessità di un inquadramento temporale. La strada che si è intrapresa consiste nell’arricchire i documenti che contengono i testi normativi, con meta-dati temporali, cioè con informazioni aggiuntive sulla valenza nel tempo dei testi o di loro porzioni, in altre parole, di dati sui dati.

XML non permette una distinzione tra dati e dati a livello sintattico, i meta-dati sono trattati semplicemente come informazioni addizionali; è perciò necessaria la definizione di uno schema che permetta la corretta interpretazione degli elementi che formano un documento.

La potenza espressiva e la flessibilità dello standard XML Schema si adatta bene all’esigenza contrassegnare i dati contenuti in un documento, o parte di esso, con

4. Dati Semistrutturati - XML

etichette che ne rappresentino le proprietà. Queste proprietà, intese come meta-dati, possono essere di qualsiasi tipo, come ad esempio il nome dell’autore di una porzione di testo, o il livello di sicurezza necessario per accedere a una informazione. Nel nostro caso specifico è importante associare i dati a dimensioni temporali che li collochino in un preciso contesto cronologico.

4.7.1. XML temporale, stato dell’arte

La letteratura scientifica ha preso in considerazione molto di frequente le modifiche, il versionamento e anche esplicitamente gli aspetti temporali nella gestione dei dati semistrutturati e di XML, spesso applicando strumenti e tecniche sviluppati nella ricerca sui database temporali.

L’obiettivo principale di alcuni di questi approcci era la rappresentazione e la gestione delle modifiche, dove nuove versioni dei dati sono prodotte dagli aggiornamenti. In questi casi, gli attributi temporali sono spesso utilizzati per etichettare le versioni registrate e rappresentano il tempo in cui la modifica ha avuto effetto. Essi hanno quindi la semantica (implicita) del transaction time in relazione al sistema in cui le modifiche sono avvenute.[9,10]

Altri approcci hanno considerato la nozione classica di valid time, ad esempio il lavoro “Valid Web”[11,12] è una infrastruttura XML/XSL progettata per rappresentare e gestire documenti Web temporali (documenti etichettati esplicitamente dagli autori al fine di assegnare una validità alle informazioni contenute). Questi documenti temporali possono essere acceduti selettivamente, in accordo con dei periodi temporali di interesse forniti dall’utente.

Alcuni lavori considerano un modello dati bitemporale, che supporta sia il valid che il transaction time[13,14], mentre in altri viene anche presa in considerazione una dimensione temporale specifica del Web: il navigation time, che riguarda l’interazione degli utenti durante la navigazione dei siti Web[15,16].

Un approccio che ha parecchi punti in comune con il nostro lavoro è presentato nel paragrafo successivo.

4.7.2. Multidimensional XML

Un’estensione a XML per rappresentare in modo elegante e conciso informazioni dipendenti dal contesto è il Multidimensional XML[17]. In questo paragrafo descriveremo una proposta di come il MXML può essere usato nel caso di dati dipendenti dal tempo[18].

MXML permette di creare elementi o attributi che abbiano diverse versioni, dipendentemente da un set di dimensioni.

La sintassi XML è estesa per incorporare le dimensioni, in particolare un elemento multidimensionale ha la seguente forma:

<@nome_elemento attributi> [contesto_1] <nome_elemento attributi_1> contenuto_elemento_1 </nome_elemento> [/]

...

[contesto_N] <nome_elemento attributi_N> contenuto_elemento_N </nome_elemento> [/] <@nome_elemento>

dove contenuto_elemento_i, con 1 ≤ i ≤ N è il contenuto dell’elemento multidimensionale specificato da [contesto_i]. Il medesimo nome elemento è usato per tutti i contesti, ogni gruppo è infatti incluso in uno speciale elemento, che

4. Dati Semistrutturati - XML

al nome fa precedere il simbolo “@”. La stessa cosa vale per gli attributi, anch’essi possono dipendere dal contesto.

I contesti specificano i valori delle diverse dimensioni utilizzati in cui il loro contenuto è valido e devono necessariamente essere mutuamente esclusivi. In altre parole, per ogni set di coordinate, non più di un contesto deve essere valido.

Un altro degli aspetti fondamentali è la propagazione del contesto, in generale, i sottoelementi ereditano il contesto del nodo padre e possono al più specializzarlo ulteriormente.

MXML permette di specificare i contesti attraverso qualsiasi tipo e numero di dimensioni, è quindi sufficiente considerare le dimensioni temporali descritte nel capitolo 3, per avere un modello per dati dipendenti dal tempo.

Per una più dettagliata analisi della sintassi per esprimente i contesti e la granularità delle dimensioni, si rimanda a [18].

C a p i t o l o 5

ORACLE 9i - XML DB e INTERMEDIA

Oracle[19] è il DBMS che negli ultimi anni ha meglio saputo anticipare le necessità dei progettisti e dei programmatori di basi di dati. Oltre a un collaudatissimo ambiente per la gestione dei dati relazionali attraverso SQL, propone sempre nuove estensioni che si specializzano sugli aspetti più attuali del mondo informatico. Tutto ciò, unito alle alte prestazioni offerte e alla buona presenza sul mercato, ci ha spinto a scegliere Oracle come DBMS per il nostro lavoro.

In questo capitolo vedremo le caratteristiche dei pacchetti Oracle 9i XML DB[20,21] e interMedia[22], affrontandone prima una breve descrizione delle funzionalità per poi concentrare l’attenzione sugli aspetti più sfruttati nel progetto TeX.

Questa parte della tesi sarà volutamente sintetica nel contenuto per non appesantire eccessivamente il lettore con dati tecnici. E’ comunque necessario introdurre due importanti strumenti utilizzati nel nostro lavoro.

Per una descrizione più dettagliata di Oracle XML DB e interMedia si rimanda ai riferimenti bibliografici.

Nel documento Corso di Laurea in Ingegneria Informatica (pagine 46-50)

Documenti correlati