AnIML Architecture

AnIML uses a highly generic XML-based architecture. It is engineered to be applicable to arbitrary scientific disciplines. The standard is designed to grow into new application domains without requiring new software tools.

Through its generic architecture, AnIML can handle data from all well-known and frequently-used techniques, including spectroscopy, chromatography, imaging, and others. However, it is also possible to use it for custom or one-off experiments, micro-fluidic chips or special sensors, making these techniques first-class citizens in the data system.

Over time, new analytical techniques and their corresponding Technique Definitions will be developed. This generic approach allows the system to use them without requiring modifications or software upgrades.

AnIML uses two logical layers, the AnIML Core and the AnIML Technique Definitions. Each of these layers is described by an XML Schema, the Core Schema and the Technique Schema.

AnIML Core

The AnIML Core provides a universal container for arbitrary analytical data. This container is very flexible. It accepts name-value pairs, hierarchies and multi-dimensional data sets to represent the actual data. Additionally, mechanisms for organizing the data into samples and experiments are provided. Every AnIML document is an XML file governed by the Core Schema.

AnIML Technique Definitions

To allow for interchangeability of the data, it is necessary to constrain the usage of the Core. That's where Technique Definitions come in. A Technique Definition describes how to use the Core to record experiments of a particular scientific discipline. Like a digital blueprint, it defines how the data need to be structured and labeled. This description is machine-readable: Technique Definitions are simple XML documents, governed by the Technique Schema.

A Technique Definition allow software to discover how to create data files for a given technique. It also permits validating the content of an AnIML document. Here, the Technique Definitions serve as a check list of data fields that need to be present. Technique Definitions and Extensions can mark these fields as optional or as required. This way, a validator tool can verify that all required information about an experiment has been captured properly. This opens new possibilities for improved data quality and integrity.

AnIML Technique Extensions

In certain cases, the fields defined in a Technique Definition may not be sufficient to characterize an experiment. This can be the case if an instrument can measure additional parameters, or when users need to store additional information about a sample. To accommodate such additional fields, a Technique Extension can be used. A Technique Extension defines which fields should be added to a technique and how they are structured. As this description is a machine-readable XML document, software can discover these additional fields programmatically. This way, the standard can be extended without breaking compatibility with existing applications.