Next Previous Up Contents
Next: Parquet
Up: Supplied Input Handlers
Previous: ECSV

#### 3.6.5 Machine-Readable Table

The so-called "Machine-Readable Table" format is used by AAS journals, and based on the format of readMe files used by the CDS. There is some documentation at https://journals.aas.org/mrt-standards/, which mostly builds on documentation at http://vizier.u-strasbg.fr/doc/catstd.htx, but the format is in fact quite poorly specified, so this input handler was largely developed on a best-efforts basis by looking at MRT tables actually in use by AAS, and with assistance from AAS staff. As such, it's not guaranteed to succeed in reading all MRT files out there, but it will try its best.

It only attempts to read MRT files themselves, there is currently no capability to read VizieR data tables which provide the header and formatted data in separate files; however, if a table is present in VizieR, there will be options to download it in more widely used formats that can be used instead.

An example looks like this:

    Title: A search for multi-planet systems with TESS using a Bayesian
           N-body retrieval and machine learning
    Author: Pearson K.A.
    Table: Stellar Parameters
    ================================================================================
    Byte-by-byte Description of file: ajab4e1ct2_mrt.txt
    --------------------------------------------------------------------------------
       Bytes Format Units   Label   Explanations
    --------------------------------------------------------------------------------
       1-  9 I9     ---     ID      TESS Input Catalog identifier
      11- 15 F5.2   mag     Tmag    Apparent TESS band magnitude
      17- 21 F5.3   solRad  R*      Stellar radius
      23- 26 I4     K       Teff    Effective temperature
      28- 32 F5.3   [cm/s2] log(g)  log surface gravity
      34- 38 F5.2   [Sun]   [Fe/H]  Metallicity
      40- 44 F5.3   ---     u1      Linear Limb Darkening
      46- 50 F5.3   ---     u2      Quadratic Limb Darkening
    --------------------------------------------------------------------------------
    231663901 12.35 0.860 5600 4.489  0.00 0.439 0.138
    149603524  9.72 1.280 6280 4.321  0.24 0.409 0.140
    336732616 11.46 1.400 6351 4.229  0.00 0.398 0.140
    231670397  9.85 2.070 6036 3.934  0.00 0.438 0.117
    ...

The handler behaviour may be modified by specifying one or more comma-separated name=value configuration options in parentheses after the handler name, e.g. "`mrt(checkmagic=false,errmode=FAIL)`". The following options are available:

`checkmagic = true|false`
  Determines whether an initial test is made to see whether the file looks like MRT before attempting to read it as one; the test is that it starts with the string "`Title:` ". Setting this true is generally a good idea to avoid attempting to parse non-MRT files, but you can set it false to attempt to read an MRT file that starts with the wrong sequence.
`errmode = IGNORE|WARN|FAIL`
  Indicates what action should be taken if formatting errors are detected in the file at read time.

This format can be automatically identified by its content so you do not need to specify the format explicitly when reading MRT tables, regardless of the filename.

The handler class for files of this format is `MrtTableBuilder`.

Next Previous Up Contents
Next: Parquet
Up: Supplied Input Handlers
Previous: ECSV

STIL - Starlink Tables Infrastructure Library
Starlink User Note252
STIL web page: http://www.starlink.ac.uk/stil/
Author email: m.b.taylor@bristol.ac.uk