[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

4. Annotation Codes

Application programs that deal with annotations should include the line

#include <wfdb/ecgcodes.h>

which provides the symbolic definitions of annotation codes given in the first column of the table below. (The second column of the table shows the strings returned by annstr and ecgstr.)

Beat annotation codes:
NORMAL   N   Normal beat
LBBB     L   Left bundle branch block beat
RBBB     R   Right bundle branch block beat
BBB      B   Bundle branch block beat (unspecified)
APC      A   Atrial premature beat
ABERR    a   Aberrated atrial premature beat
NPC      J   Nodal (junctional) premature beat
SVPB     S   Supraventricular premature or ectopic beat (atrial or nodal)
PVC      V   Premature ventricular contraction
RONT     r   R-on-T premature ventricular contraction
FUSION   F   Fusion of ventricular and normal beat
AESC     e   Atrial escape beat
NESC     j   Nodal (junctional) escape beat
SVESC    n   Supraventricular escape beat (atrial or nodal) [1]
VESC     E   Ventricular escape beat
PACE     /   Paced beat
PFUS     f   Fusion of paced and normal beat
UNKNOWN  Q   Unclassifiable beat
LEARN    ?   Beat not classified during learning

Non-beat annotation codes:
VFON     [   Start of ventricular flutter/fibrillation
FLWAV    !   Ventricular flutter wave
VFOFF    ]   End of ventricular flutter/fibrillation
NAPC     x   Non-conducted P-wave (blocked APC) [4]
WFON     (   Waveform onset [4]
WFOFF    )   Waveform end [4]
PWAVE    p   Peak of P-wave [4]
TWAVE    t   Peak of T-wave [4]
UWAVE    u   Peak of U-wave [4]
PQ       ‘   PQ junction
JPT      ’   J-point
PACESP   ^   (Non-captured) pacemaker artifact
ARFCT    |   Isolated QRS-like artifact [2]
NOISE    ~   Change in signal quality [2]
RHYTHM   +   Rhythm change [3]
STCH     s   ST segment change [1,3]
TCH      T   T-wave change [1,3,4]
SYSTOLE  *   Systole [1]
DIASTOLE D   Diastole [1]
MEASURE  =   Measurement annotation [1,3]
NOTE     "   Comment annotation [3]
LINK     @   Link to external data [5]


  1. Codes SVESC, STCH, and TCH were first introduced in WFDB library version 4.0. Codes SYSTOLE, DIASTOLE, and MEASURE were first introduced in WFDB library version 7.0.
  2. In MIT and ESC DB ‘atr’ files, each non-zero bit in the subtyp field indicates that the corresponding signal contains noise (the least significant bit corresponds to signal 0).
  3. The aux field contains an ASCII string (with prefixed byte count) describing the rhythm, ST segment, T-wave change, measurement, or the nature of the comment. By convention, the character that follows the byte count in the aux field of a RHYTHM annotation is ‘(’. See the MIT-BIH Arrhythmia Database Directory for a list of rhythm annotation strings.
  4. Codes WFON, WFOFF, PWAVE, TWAVE, and UWAVE were first introduced in DB library version 8.3. The ‘p’ mnemonic now assigned to PWAVE was formerly assigned to NAPC, and the ‘t’ mnemonic now assigned to TWAVE was formerly assigned to TCH. The obsolete codes PQ (designating the PQ junction) and JPT (designating the J-point) are still defined in ‘<wfdb/ecgcodes.h>’, but are identical to WFON and WFOFF respectively.
  5. The LINK code was first introduced in WFDB library version 9.6. The aux field of a LINK annotation contains a URL (a uniform resource locator, in the form ‘http://machine.name/some/data’, suitable for passing to a Web browser such as Netscape or Mosaic). LINK annotations may be used to associate extended text, images, or other data with an annotation file. If the aux field contains any whitespace, text following the first whitespace is taken as descriptive text to be displayed by a WFDB browser such as WAVE.

The annotation codes in the table above are the predefined values of the anntyp field in a WFDB_Annotation. Other values in the range of 1 to ACMAX (defined in ‘<wfdb/ecgcodes.h>’) are legal but do not have preassigned meanings. The constant NOTQRS, also defined in ‘<wfdb/ecgcodes.h>’, is not a legal value for anntyp, but is a possible output of the macros discussed below.

[ < ] [ > ]   [ << ] [ Up ] [ >> ]

George B. Moody (george@mit.edu)