STIL is a pure Java library for generic input, output and processing of tabular data. It presents to the application programmer a view of a table which looks the same regardless of whether it came from a FITS file, a VOTable, an ASCII text file, a query on a relational database, or whatever. Thus the application doesn't have to worry about the storage format of tables either when reading or writing them, it can concentrate on doing processing. STIL's idea of a table is rich enough to include table and column metadata, and table cells which contain scalar or single- or multi-dimensional array data of numerical, string or other types. This is well suited to astronomical data, though it can be of use in other fields as well.
STIL comes with a large range of supported input and output formats (including VOTable, FITS, SQL, ASCII) and can be extended to cope with still others.
The generic table I/O has the following features:
STIL includes sophisticated facilities for VOTable I/O which can, if desired, be used largely independently of the rest of the package. As well as the general features listed above this has the following features:
STIL development is ongoing. Future development should include:
The following formats are currently supported for table input:
There are two main sources of documentation for STIL:
You can download the full documentation set (SUN/252 in various forms plus javadocs) in the documentation zip file.
STIL is released under the GPL. The main components are available here:
There are alternative ways of obtaining the compiled classes:
Note that while the source code archive above contains all the original code in STIL, it may not suffice to build it. If you need build files etc, contact me.
STIL has been developed using J2SE 1.4.1, but is expected to work with any 1.4 version of the J2SE.
If you like STIL, you'll love TOPCAT, a graphical tool for table browsing / plotting / analysis / editing which benefits from all STIL's features.
If you have any comments, questions, requests, bugs etc, please contact me: