DATI TEMPORALI E MEDICINA
Il tempo è di grande importanza in medicina nella definizione della diagnosi, nell'identificazione della terapia corretta, nella definizione della prognosi [Combi98]: queste attività decisionali accadono nel tempo e sono svolte sulla base di informazioni caratterizzate temporalmente. Al fine di giungere ad una diagnosi, il medico esamina la storia clinica del paziente, che usualmente comprende la descrizione della patologie pregresse, delle terapie e dei sintomi che il paziente riferisce; questo genere di informazione va a completare i dati direttamente acquisiti sul paziente, come la pressione arteriosa, la frequenza cardiaca, anch'essi caratterizzati da una collocazione temporale [Combi95]. Nel supportare la memorizzazione ed il recupero di tali informazioni attraverso i computer, e necessario gestire esplicitamente la dimensione temporale dei dati clinici. La dimensione temporale usualmente considerata è il tempo di validità, ovvero il tempo durante il quale l'informazione considerata è vera nella realtà modellata [Jensen98].
GRANULARITÀ TEMPORALE
La granularità di una data informazione temporale è il livello di astrazione al quale l'informazione stessa viene espressa. Differenti unità di misura permettono di rappresentare differenti granularità [Snodgrass95, Bettini98a].
Il tema della granularità temporale è presente in numerosi ambiti applicativi, come, ad esempio, i sistemi informativi geografici, i sistemi di pianificazione, i sistemi informativi sanitari, i sistemi informativi per l'ufficio, i sistemi real-time [Brusoni99, Chittaro00, Combi97, Koubarakis99, Maiocchi92, Montanari96, Snodgrass95, Staab99]. In generale la dimensione temporale dell'informazione può essere espressa con differenti granularità - ad esempio, "dalle 12:30 del 12 ottobre 1997 al 25 dicembre 1997", "da agosto 1996 a gennaio 1997", "nel 1996 per tre giorni", "dal 24 giugno 1995 per sei mesi". Inoltre, nell'effettuare interrogazioni su tali informazioni, sovente vengono usate altre granularità che non sono correlate a quelle usate in fase di memorizzazione dei dati. Il supporto di granularità multiple richiede l'esame di differenti problemi, come la rappresentazione di più granularità, la modellazione ed interrogazione di dati temporali a differenti livelli di granularità (tale tema richiede, per esempio, di considerare il mapping di informazione temporale su una data granularità e/o la gestione dell'incertezza proveniente da relazioni temporali fra dati espressi a differenti granularità).
RAPPRESENTAZIONE DI GRANULARITà
Fra le varie linee di ricerca che considerano il tema della granularità temporale, alcuni lavori si sono focalizzati sulla proposta di modelli di riferimento che permettano la specifica formale di molteplici granularità e delle relazioni fra esse [Bettini98a, Clifford88, Goralwalla01, Montanari92, Montanari96, Snodgrass95]. Fondamentalmente una granularità (ad es., anni) è rappresentata come una partizione dell'asse temporale di riferimento.
Clifford e Rao [Clifford88] introducono una struttura generale per i domini temporali chiamata "universo temporale", che consiste di un insieme totalmente ordinato di granularità (ad es., anni, giorni, mesi). Specifiche operazioni sono definite su un universo temporale, fondate principalmente su una inziale conversione degli istanti temporali considerati ad una granularità di base (più fine) comune. Wang et al. [Wang93] estendono questo approccio e forniscono una semantica per muoversi attraverso più granularità (strutturate in un grafo aciclico) rispetto alla rappresentazione dell'informazione. Montanari et al. [Montanari92] considerano il problema della granularità nell'ambito del ragionamento temporale; [Montanari96] considera il problema della granularità in un ambito teorico e formale, considerando sistemi di granularità senza una granularità di base predefinita.
Bettini et al. [Bettini98b] propongono un framework generale per la definizione di sistemi di granularità temporali ed esaminano i differenti tipi di relazione esistenti fra granularità. In [Bettini99], Bettini e De Sibi propongono delle definizioni formali e una caratterizzazione matematica di granularità finite e periodiche.
In [Goralwalla01], la granularità è rappresentata come una speciale durata; rispetto a tale rappresentazione, viene poi proposta una definizione di calendario e delle modalità di conversione da una granularità all'altra di istanti e durate.
Un approccio algebrico per la definizione di nuove granularità sulla base di quelle esistenti è proposto da Ning et al. [Ning02]. In questo approccio si assume che esista una granularità di base: appositi operatori sono poi definiti per creare nuove granularità, "manipolando" opportunamente quelle già esistenti.
Un recente approccio alla definizione di granularità temporali è illustrato in [Combi04] e si fonda sull'uso di una logica temporale proposizionale per definire insiemi di granularità.
MODELLAZIONE ED INTERROGAZIONE DI DATI A DIFFERENTI GRANULARITà
TSQL2 [Snodgrass95] è un'estensione temporale del linguaggio di interrogazione standard SQL-92. In tale linguaggio sono permesse sia granularità multiple sia indeterminatezza delle dimensioni temporali. Sono supportate differenti possibilità di conversione dei dati temporali da una granularità all'altra. Nel gestire la possibile indeterminatezza proveniente dalla conversione di istanti temporali a granularità più fini di quelle a cui tali istanti sono definiti, è adottato un approccio probabilistico.
Combi et al. [Combi97] propongono un linguaggio di interrogazione temporale orientato agli oggetti ed il relativo modello dei dati, per gestire informazioni temporali espresse con differenti granularità o con indeterminatezza: relazioni fra istanti ed intervalli a granularità differenti sono gestite attraverso una logica a tre valori, dove oltre a "vero" e "falso" esiste il valore logico "incerto".
In [Snodgrass99] sono proposti differenti tipi di interrogazioni temporali con limitate possibilita' di gestire differenti granularità temporali.
RAPPRESENTAZIONE ED INTERROGAZIONE DI DATI TEMPORALI SUL WEB
Nel contesto delle informazioni acessibili tramite Web, sovente i dati possono avere una struttura parziale (dati semistrutturati [Abiteboul97]). Il problema di accedere in modo uniforme ai dati semistrutturati è stato affrontato in diversi progetti, tra i quali LOREL [McHugh97], UnQL [Buneman96], WebSQL [Mendelzon96], WebOQL [Arocena98], StruQL [Fernandez97], G-Log [Paredaens95]. Un approccio comune per la rappresentazione dei dati semistrutturati si basa su grafi etichettati [Buneman97,Paredaens95,Consens90,Ceri99].
Il problema di rappresentare ed interrogare dati semistrutturati considerando anche l'aspetto temporale è descritto in [Chawathe98,Chawathe99]: a questo proposito, gli autori introducono un modello, DOEM, e un linguaggio di interrogazione, Chorel. Per rappresentare i cambiamenti, questo modello utilizza annotazioni sia sui nodi che sugli archi di grafi OEM [Papakonstantinou95].
In [Oliboni01] vengono presentati un modello dei dati basato su grafi etichettati che permette di rappresentare i dati semistrutturati sia dal punto di vista statico che dinamico e un linguaggio per la loro interrogazione. Tale modello riduce il numero di nodi necessario per la rappresentazione dell'evoluzione dei dati. Il relativo linguaggio di interrogazione TS-QL utilizza il concetto di "path expression" e quindi permette di identificare l'informazione desiderata come un cammino sul grafo del documento.
Recentemente, gli aspetti temporali nei dati semistrutturati sono stati approfonditi in [Combi04a, Combi03, Combi03a]: oltre alla formalizzazione dei vincoli esistenti per tempo di transazione e di validità nei dati temporali semistrutturati ed in XML, sono stati presi in considerazione alcuni aspetti specifici inerenti i dati clinici.