An OERecord is a data container that holds a variety of strongly-typed, named values, plus associated metadata. It is used to pass data between cubes in Orion workfloes, and is the main mechanism by which data is communicated to and from Orion. OERecords also provide a general way to create and store structured data within the OpenEye ecosystem.

The most straightforward use of an OERecord is for storage and retrieval of simple values. The following example illustrates how to use a record to store and retrieve integer, string, and floating point values.

OERecord has methods that allow you to interrogate the record for the presence of fields and values.

Other types of data can be stored on OERecords, including molecules and even other OERecords.

OERecords can be written to files and read from files using the OEWriteRecord and OEReadRecord functions.

Metadata on fields

There are two types of metadata: options which are simple flags, and attributes which are key/value pairs with user-supplied values.

In the following example, two pieces of metadata, one option and one attribute, are put on a field to describe the contents of that field.

Metadata can also be used to designate relationships between fields on a record. The following example shows how to attach error values to a field using metadata.