Il progetto Taxogen

Autore: Massimo Coletti
Aggiornamento al: 6 giugno 2005
SourceForge.net Logo

Il progetto

- Summary
- Downloads
- Documentazione

mcoletti.net

Abstract

This project is a generator for XBRL taxonomies. The aim of this tool is to help the taxonomy designer in two ways:

A big part of the documentation for this project is developed in Italian, however there is an english docs section on Sourceforge.


Di che cosa si tratta

Il progetto ha lo scopo di realizzare dei tool per il disegno di tassonomie XBRL.

Lo standard definisce infatti una tassonomia come semplice sequenza di elementi; tuttavia, uno schema contabile prevede generalmente una certa articolazione: ad esempio i ricavi possono essere esplosi per aree geografiche, canali di vendita e linee di prodotto. Questo significa che, in fase di disegno, il progettista dovrà definire molti elementi simili, ed ogni volta che una delle dimensioni di analisi varia per l'aggiunta di un elemento, dovrà codificare un elevato numero di nuovi elementi.

Mi sono quindi posto l'obiettivo di creare qualche semplice strumento che permetta di definire una sezione di tassonomia come esplosione di un numero variabile di dimensioni, fornendo al tempo stesso un'interfaccia user friendly per l'immissione dei dati, e generando delle tassonomie complete e sintatticamente corrette.

Maggiori dettagli sulle motivazioni alla base del progetto nel documento su "TaxoGen Use Case".
Questo tool si pone anche l'obiettivo di generare delle tassonomie complete sia degli elementi di rappresentazione (label e presentation linkbase), sia di quelli di riferimento (reference linkbase). Recentemente abbiamo introdotto anche dei dati per la generazione automatica delle informazioni di mappatura fra gli elementi della tassonomia generata e le celle di un foglio di calcolo. Queste informazioni saranno la base per realizzare delle funzionalità per il travaso di dati fra fogli di calcolo ed istanze XBRL.

Palazzo Altieri

Palazzo Altieri in Rome, where TaxoGen was designed and partially developed.

L'architettura di questo tool prevede che l'utente compili un sorgente taxogen, che è un file XML, compilato secondo uno schema ben preciso, che contiene le informazioni che TaxoGen utilizzerà per la generazione delle tassonomie. Per la compilazione di questo file viene poi messo a disposizione un tool di data entry, oggi realizzato con Microsoft Access, che consente una raccolta dei dati con un'interfaccia amichevole e la possibilità di un recupero veloce degli elementi della struttura con operazioni di copia/incolla da altri documenti. Questa architettura permette di:

Stato del progetto

Attualmente il progetto è alla release 5.1, che è stata rilasciata con il nome opera.  Questa release include sia il front-end Access, che il generatore realizzato in java (taxogen-j).
La nuova versione presenta diversi miglioramenti nell'interfaccia utente, ricordando però sempre che l'obiettivo è la realizzazione del data entry con un plugin di Eclipse. E' ora possibile visualizzare la struttura della tassonomia con una visualizzazione ad albero, che consente di individuare facilmente gli elementi desiderati in tassonomie di grandi dimensioni, aprendo subito le finestre pe l'editing.
La struttura generale del prodotto è stata razionalizzata, con l'adzione di Tcl come unico linguaggio di scripting per legare insieme tutti i componenti di TaxoGen. Tcl si è infatti dimostrato potente e flessibile, ed è in grado di funzionare senza modifiche su diverse piattaforme. E' allo studio l'ipotesi di presentare TaxoGen alla prossima Developer Conference internazionale sul Tcl.
Ma la novità probabilmente più importante è la generazione di una mappatura con Excel. Inserendo poche informazioni aggiuntive, TaxoGen è in grado di generare una reference linkbase con i riferimenti che legano ogni elemento della tassonomia risultante ad una cella di un foglio di calcolo. Partendo da questo risultato, è stato già realizzato un tool che "genera" automaticamente un foglio Excel che può essere usato come data entry per istanze basate sulle tassonomie generate con TaxoGen. E' inoltre già in cantiere lo sviluppo di una macro per Excel che legga e scriva istanze XBRL in un foglio Excel sfruttando il linkbase di mappatura.
Chiaramente si tratta di funzionalità ancora abbastanza prototipali (ad esempio ancora non messe a punto per tuple), ma comunque interessanti.
Siamo partiti con Excel, perchè è lo strumento usato in Banca Finnat, dove TaxoGen vine sviluppato per la trasmissione dei bilanci del Gruppo da consolidare, ma naturalmente "copriremo" quanto prima anche il nuovo formato "open" promosso dal consorzio OASIS e da OpenOffice.org.

Riconoscimenti

Desidero ringraziare David vun Kannon, del consorzio XBRL, per i preziosi suggerimenti su come disegnare un file di mappatura verso Excel, le persone che stanno collaborando, e gli utenti che hanno finora "scaricato" TaxoGen in numero molto superiore alle aspettative.
Ho avuto il piacere di vedere il nostro progetto "linkato"  dal sito del Club Basilea 4x4, promosso dal Prof. Erzegovesi dell'Univ. di Trento, una delle persone con la vision più avanzata sull'XBRL che ho conosciuto.
Il progetto è anche stato citato su "Il Mondo" e sul popolare sito IAS Italia.