Software sviluppato da IA2
APOGEO
Contatto: S. Zorba
APOGEO (Automatic POrtal GEneratOr) è uno strumento che automatizza la creazione di interfacce web per interrogare gli archivi astronomici.
Un amministratore esegue una procedura di configurazione guidata da un wizard grafico. Al termine, l’applicazione è in grado di generare un pacchetto WAR, pronto per essere distribuito su un server applicativo, come Tomcat o GlassFish.
Le applicazioni generate supportano le seguenti funzionalità:
- Interrogazione degli archivi astronomici: recupero dei metadati selezionati dall’utente.
- Gestione dei download: possibilità di abilitare o disabilitare il download dei file da parte degli utenti, in base alle politiche di accesso ai dati configurate.
- Creazione asincrona di archivi TAR: generazione di file TAR che consentono agli utenti di scaricare più file contemporaneamente.
- Download di dati tabellari: esportazione dei dati secondo lo standard VOTable.
- Interoperabilità con applicazioni esterne: integrazione tramite lo standard SAMP dell’IVOA (International Virtual Observatory Alliance).
Tutti i nuovi archivi di IA2 saranno sviluppati utilizzando APOGEO.
Lo strumento è attualmente in fase di sviluppo.
Come funziona
Procedura di configurazione
Una fase preliminare consiste nella creazione di uno schema TAP_SCHEMA, uno schema specifico definito dagli standard del Virtual Observatory (VO) per memorizzare i metadati relativi all’archivio astronomico. Questa operazione può essere eseguita tramite l’applicazione TAP_SCHEMA Manager.
Successivamente, l’amministratore del portale può utilizzare il PortalGenerator Wizard, una procedura guidata che lo accompagna durante la configurazione. Dopo aver effettuato l’accesso all’applicazione PortalGenerator, l’amministratore può modificare la configurazione di un portale esistente oppure crearne uno nuovo.
Il primo passaggio consiste nel definire le stringhe di connessione necessarie per accedere allo schema TAP_SCHEMA e al database dell’archivio astronomico.
L’utente deve quindi selezionare una tabella principale, che verrà utilizzata dal portale generato nella clausola FROM delle query SQL. È inoltre possibile selezionare una o più tabelle secondarie e specificare le modalità con cui devono essere collegate alla tabella principale.
A questo punto è possibile progettare l’interfaccia del modulo di ricerca. La configurazione avviene attraverso una griglia interattiva, nella quale l’utente può aggiungere componenti, come campi di testo ed etichette, e posizionarli semplicemente utilizzando il mouse.
Ogni campo di input HTML viene associato direttamente a una colonna del database. In questo modo, il portale generato può costruire query SQL sulla base dei campi compilati e dei criteri selezionati dagli utenti.
Internamente, PortalGenerator memorizza la configurazione del portale in formato XML. Questo file può essere modificato anche manualmente, grazie a una libreria JavaScript che offre funzionalità di evidenziazione della sintassi del codice e completamento automatico.
Questa possibilità consente di creare facilmente gruppi di campi simili attraverso operazioni di copia e incolla. È inoltre utile in situazioni come la ridenominazione delle tabelle o il riutilizzo del layout di una versione precedente del portale.
Ogni portale deve disporre di una griglia principale, ma è possibile aggiungere anche altre griglie secondarie. Queste ultime vengono visualizzate all’interno di un pannello a schede (tabbed panel), che può essere attivato facoltativamente per offrire una modalità di ricerca avanzata.
Questa funzionalità è stata utilizzata per implementare la ricerca relativa ai singoli strumenti dei telescopi. Tuttavia, poiché una griglia non è vincolata a una tabella specifica, la stessa funzionalità può essere impiegata anche per altri scopi.
Impostazioni opzionali
Tra le altre opzioni di configurazione disponibili figurano:
- Politiche di accesso ai dati: definizione delle regole per la gestione delle risorse private.
- Impostazioni di logging: registrazione degli eventi e delle attività in una tabella dedicata del database.
- Configurazione del recupero dei file: possibilità di individuare i file tramite il percorso sul disco fisico oppure tramite URL.
- Personalizzazione del layout: possibilità di integrare codice JavaScript e CSS personalizzati e di caricare un’immagine di sfondo tramite un apposito pulsante.
- Impostazioni del sistema di autenticazione: configurazione dell’accesso tramite uno o più server LDAP oppure tramite Shibboleth. Questa funzionalità è ancora in fase di sviluppo.
Generazione e distribuzione del portale
Nella fase finale della procedura guidata è disponibile il pulsante «Generate site», che genera un pacchetto WAR. Il file può essere scaricato e distribuito su un server applicativo.
Attualmente sono supportati GlassFish e Tomcat, ma è possibile supportare anche altri server applicativi, includendo le librerie appropriate.
