AIDA (computing)

Abstract Interfaces for Data Analysis (AIDA) is a set of defined interfaces and formats for representing common data analysis objects. The project was instigated and is primarily used by researchers in high-energy particle physics.

History
The goals of the AIDA project were to define abstract interfaces for common physics analysis objects, such as histograms, ntuples (or data trees), fitters, I/O etc. The importance of the interface concept is that a variety of different tools with different implementations can all support a uniform interface: this encourages modular design in data analysis packages and enables users to use their preferred implementation of a certain functionality without having to re-write existing code.

An additional benefit of AIDA is the specification of an XML representation format for data objects, which can be written and read by AIDA-compliant applications. AIDA implementations exist for C++ (OpenScientist), Java (Java Analysis Studio) and Python. Usage of AIDA interfaces can be found in the Geant4 examples.

As of 2011, the projects seems dormant, with last "recent news" on the project homepage dating from 2005.