alignment = {
query_template_name: string;
flags: Flags.t;
reference_sequence: [ `reference_sequence of reference_sequence
| `none
| `name of string ];
position: int option;
mapping_quality: int option;
cigar_operations: cigar_op array;
next_reference_sequence: [`qname | `none | `name of string
| `reference_sequence of reference_sequence ];
next_position: int option;
template_length: int option;
sequence: [ `string of string | `reference | `none];
quality: Phred_score.t array;
optional_content: optional_content;
}