Table 1: MAIN table: Data, coordinates and flags
MAIN table: Data, coordinates and flags

Name

Format

Units

Measure

Comments

Columns

Keywords

MS_VERSION

Float

MS format version

(SORT_COLUMNS) 

String

Sort columns

(SORT_ORDER) 

String

Sort order

Key

TIME   

Double

s

EPOCH

Integration midpoint

(TIME_EXTRA_PREC)    

Double

s

extra TIME precision

ANTENNA1   

Int

First antenna

ANTENNA2   

Int

Second antenna

(ANTENNA3) 

Int

Third antenna

FEED1

Int

Feed on ANTENNA1

FEED2

Int

Feed on ANTENNA2

(FEED3) 

Int

Feed on ANTENNA3

DATA_DESCRIPTION_ID

Int

Data desc. id.

PROCESSOR_ID

Int

Processor id.

SWITCH_PHASE_ID   

Int

Switch phase id.

FIELD_ID

Int

Field id.

Non-key attributes

INTERVAL

Double

s

Sampling interval

EXPOSURE   

Double

s

The effective integration time

TIME_CENTROID   

Double

s

EPOCH

Time centroid

(PULSAR_BIN) 

Int

Pulsar bin number

( PULSAR_GATE_ID

Int

Pulsar gate id

(INTEG_NUMBER)      

Int

Integration number

SUBARRAY_NUM

Int

Subarray number

EXECUTE_ID   

Int

Execute id.

STATE_ID   

Int

State id.

(BASELINE_REF) 

Bool

Reference antenna

UVW

Double(3)

m

UVW

UVW coordinates



MAIN table: continued

Name

Format

Units

Measure

Comments

Data

(DATA)    

Complex(Nc,Nf,Nphc)

Complex visibility matrix (synthesis array)

(FLOAT_DATA)    

Float(Nc,Nf)

Float data matrix (single dish)

(VIDEO_POINT) 

Complex(Nc)

Video point

(LAG_DATA)    

Float(Nc,Nl)

Correlation function

SIGMA

Float(Nc)

Estimated rms noise

(SIGMA_SPECTRUM) 

Float(Nc,Nf*)

Estimated rms noise for each channel

WEIGHT

Float(Nc)

Weight of the whole data matrix

(WEIGHT_SPECTRUM) 

Float(Nc,Nf*)

Weight for each channel

Flag information

FLAG

Float(Nc,Nf*)

Cumulative data flags

FLAG_CATEGORY

Float(Nc,Nf*,Ncat)

Flag categories

FLAG_ROW

Bool

The row flag


Notes: Nl = number of lags, Nc = number of correlators, Nf = number of frequency channels, Nphc =1 (or 2 if both the atmospheric phase uncorrected AND corrected data are stored); see item PHASE_CORRECTION   in table DATA_DESCRIPTION  , Ncat = number of flag categories.
Functional Dependencies
MS_VERSION
MSM revision number, expressed as major_revision.minor_revision.
SORT_COLUMNS
Sort indices, in the form “index1”, “index2”, ... for the underlying MS. A string containing NONE1  reflect no sort order.
SORT_ORDER
Sort order as either ASCENDING2  or DESCENDING3 .
TIME
Mid-point (not centroid) of data interval.
TIME_EXTRA_PREC
Extra time precision
ANTENNAn
Antenna identifier corresponding to the antenna number n giving a direct index into a row number in the ANTENNA  sub-table. For n > 2, triple product data are implied.
FEEDn
Feed number (> 0). For n > 2, triple product data are implied.
DATA_DESCRIPTION_ID
Data descriptor identifier (> 0) providing a direct index into the DATA_DESCRIPTION  sub-table row number.
PROCESSOR_ID
Processor identiufier (> 0) providing a direct index into the PROCESSOR  sub-table row number.
SWITCH_PHASE_ID
Switching phase identifier (> 0)
FIELD_ID
Field identifier (> 0)
INTERVAL
Data sampling interval. This is nominal data interval and does not include the effects of bad data or partial integration.
EXPOSURE
Effective data interval, including bad and partial averaging. In the ALMA context it is the integration time (or sub-integration time if STATE_IDis > 0)..
TIME_CENTROID
PULSAR_BIN
Pulsar bin number for the data record. Pulsar data may be measured for a limited number of pulse phase bins. The pulse phase bins are described in the PULSAR sub-table and indexed by this bin number.
PULSAR_GATE_ID
INTEG_NUMBER
Original name SCAN_NUMBER; renamed INTEG_NUMBER The enumeration is relative to the observation (ALMA glossary). The enumeration of the observations is implicit; each time INTEG_NUMBER is decrementing from one row to the next in the MAIN  table the observation number is implicitly incremented. N.B.: the observation intent is in the STATE  sub-table. If absolutely required an OBS_SUMMARY table could be created, referencing to the main via MAIN_IDprovided the MAIN sorted in ascending time, this for efficient access at the OBSERVATION level.    
SUBARRAY_NUM
Subarray number was (historicaly) ARRAY_ID. Renamed for clarity (see section 3.3 of the MS definition v2.0)  .
N.B. In case of a multi-configuration data set, note that CONFIG_NAME is added in the EXECUTE_SUMMARY  table; in that context it is possible to distinguish the case of several sub-arrays and the case of several array configurations.
EXECUTE_ID
This provides access to a row number in the EXECUTE_SUMMARY  table. This meta coordinate defines the data base in term of an association of data blocks.
STATE_ID
State identifier (> 0). Would be always 0 if the sub-integration are not considered.
BASELINE_REF
Flag to indicate the original correlator reference antenna for baseline-based correlators. (True for ANTENNA1, False for ANTENNA2)
UVW
uvw coordinates for the baseline between ANTENNA1 and ANTENNA2. This is defined at the centroid time TIME_CENTROID . This could be reconsidered by providing uvw per antenna. This would become implicit if the UVW would be stored per antenna in a sub-table. 
(DATA) 
Cross-correlated data. Not mandatory.
FLOAT_DATA
Auto-correlated single-dish data For ALMA this will be always present 
(VIDEO_POINT) 
The video point for the spectrum, to allow the full reverse transform.
LAG_DATA
SIGMA
The estimated noise for a single channel, for each correlator.
SIGMA_SPECTRUM
The estimated noise for each channel.
WEIGHT
The weight for the whole data matrix for each correlator, as assigned by the correlator or processor.
WEIGHT_SPECTRUM
The weight for each channel in the data matrix, as assigned by the correlator or processor The weight spectrum should be used in preference to the weight, when available.
FLAG
An array of Boolean values with the same shape as DATA  representing the cumulative flags applying to this data matrix, as specified in FLAG_CATEGORY . Data are flagged bad if the FLAG  array element is True.
FLAG_CATEGORY
An array of flag matrices with the same shape as DATA , but indexed by category. The category identifiers are specified by a keyword CATEGORY , containing an array of string identifiers, attached to the FLAG_CATEGORY  column and thus shared by all rows in the MS. The cumulative effect of these flags is reflected in column FLAG . Data are flagged bad if the FLAG  array element is True.
FLAG_ROW
True if the entire row is flagged.

Comments:
DATA, FLOAT_DATA, LAG_DATA At least one of these columns should be present in a MeasurementSet. In special cases one or more could be present (e.g. single-dish data used in synthesis imaging or a mix of auto and cross-correlations on a multi-feed single-dish). If only correlation functions are store in the MS, then Nf* is the maximum number of lags (Nl) specified in the LAG table for this LAG_ID. If both correlation functions and frequency spectra are store in the same MS, then Nf* is the number of frequency channels and the weight information refers to the frequency spectra only. The units of these columns (eg. ’Jy’) specify whether the data are in flux density units or correlation coefficients.