Skip to topic | Skip to bottom
Home

TechWeb08
TechWeb08.GruppoLTW20DocumentazioneDatasourcer1.4 - 27 Jul 2008 - 22:09 - SaverioPlasmatitopic end

Start of topic | Skip to actions
-- SaverioPlasmati - 27 Jul 2008
  • Set ALLOWTOPICVIEW =
  • Set ALLOWTOPICCHANGE =

Data Source LTW0820

Il data source e' organizzato in maniera basilare:

  • una collezione di file XML (le schede)
  • un file di indice di tutte le schede
  • uno script PHP che gestisce le query al data source
  • uno script PHP per il salvataggio delle schede

Il file di indice contiene i metadati di ogni scheda del datasource; lo script per la query si serve esclusivamente di questo file, che viene aggiornato dallo script di salvataggio ogni volta che viene creata una nuova scheda.

La query

Lo script agisce sul file di indice del data source: per ogni set di metadati del file, controlla se soddisfano i parametri della query; in caso positivo, aggiunge al response (risultati della query) l'url del documento corrispondente (il metadato eidentifier). La scansione del file indice e' effettuata tramite loop sull'albero DOM del file; non e' utilizzato il linguaggio XPath perche' nella sua versione 1.0 (che e' quella implementata da PHP) non e' presente il supporto per le espressioni regolari. Invece in questo modo, il test sui parametri viene fatto tramite la funzione apposita (preg_match) di PHP, il che permette di supportare al meglio la wildcard *. XPath viene invece usato per interrogazioni "di servizio" che non necessitano delle espressioni regolari, anche nell'altro script del data source. Nel caso della query si tratta di un interrogazione al file di indice per fare in modo che, nel response da restituire all'applicazione, non vengano inserite tutte le expression di uno stesso work, bensi' solo quella che e' l'ultima versione.

Il salvataggio

Lo script riceve dall'applicazione una scheda gia' valida (anzi dovrebbe, quindi verifica se la scheda e' valida e in caso contrario restituisce errore). Quindi si limita ad aggiungere informazione in alcuni metadati, cioe' quelli riguardanti la data di creazione e gli uri identificativi. Gli url (widentifier e identifier) sono creati partendo dal titolo dell'opera, con un sistema che ne conta le versioni gia' presenti e aggiunge il numero di versione in fondo al titolo. Salvata la scheda nel data source, prima di inviare la risposta si provvede a salvare i metadati della scheda nel file di indice. Imporante: i metadati sono inseriti in testa al file indice, in modo che una successiva query restituisca i documenti in ordine cronologico dal piu' al meno recente.
to top


You are here: TechWeb08 > GruppiDelCorso > GruppoLTW20 > GruppoLTW20DocumentazioneDatasource

to top

Copyright © Fabio Vitali 2022 Last update of GruppoLTW20DocumentazioneDatasource on 27 Jul 2008 - 22:09 by SaverioPlasmati