Variant Classification
Introduction
Illumina Connected Annotation follows the VCF Specification when parsing the VCF files. VCF files classify the variants based on alleles and certain INFO fields.
While the VCF variant type does not depend on the size of the variant, (both a ATG->A and A-><DEL> are deletion) for the purpose of annotation, it is useful to classify variants into small and structural (large) variants. This is due to the realization that reporting annotations for a deletion like 1-1000-ATG-A from ClinVar for a 20kbp <DEL> at that same location is not helpful and vice versa. Following guidelines are used by Illumina Connected Annotations.
Structural variants are treated as intervals when providing supplementary annotations such as ClinVar, gnomAD etc.
Non-Informative Alleles
Before classification, the following non-informative ALT alleles are filtered out and skipped entirely:
<NON_REF>
GATK gVCF reference block
<*>
Symbolic non-ref
*
Missing due to upstream deletion
<M>
Missing allele
Classification Overview
The primary boundary between small and structural variants is the 50bp threshold applied to nucleotide-only alleles.
SmallVariant
Nucleotide-only allele AND length <= 50bp
G -> A SNV, T -> TAA insertion
SmallVariant
Non-symbolic allele with no SV metadata (SVTYPE, SVLEN, IMPRECISE all absent)
ACGT -> A without any INFO SV fields
SV_COMPLETE
Symbolic <INS> with SVINSSEQ or DUPSVINSSEQ+SVLEN in INFO
<INS> with SVINSSEQ=ACGTACGT...
SV_COMPLETE
Precise nucleotide allele exceeding the 50bp threshold
200bp explicit ALT with SVTYPE=DEL
SV_INCOMPLETE
Breakend notation ([ or ] in ALT)
N[chr10:1234567[
SV_INCOMPLETE
Symbolic allele without sufficient sequence information
<DEL> with SVTYPE=DEL
CNV
SVTYPE=CNV or SVTYPE=LOH, or LOHTYPE present
<DEL> with SVTYPE=CNV
RepeatExpansion
ALT starts with <STR (repeat count embedded)
<STR12>
ROH
ALT is exactly <ROH>
<ROH> with SVTYPE=ROH
SINGLE_BND
SVTYPE=BND, or ALT uses dot notation
.G or G.
Reference
globalMajorAllele is non-null (ref-minor site)
Ref-minor position from population data
Variant Categories
SmallVariant
Trigger (either condition):
Alt allele is nucleotide-only (A/C/G/T) AND max allele length (
max(ref allele length, alt allele length)) is less than or equal to 50.No SV metadata:
SVTYPEis absent,SVLENis absent,IMPRECISEis false, and allele is not symbolic
The specific VariantType is determined after normalization (left-alignment and padding-base trimming):
ref and alt same length, length = 1
SNV
ref and alt same length, length > 1
MNV
ref longer than alt (alt is empty after trim)
deletion
alt longer than ref (ref is empty after trim)
insertion
Different lengths, neither is empty after trim
delins
SV_COMPLETE (Complete Structural Variants)
Trigger (any):
Symbolic
<INS>with non-emptySVINSSEQin INFOSymbolic
<INS>with non-emptyDUPSVINSSEQandSVLENin INFONon-symbolic (precise nucleotide sequence) alt allele that exceeds the 50bp threshold
Meaning: The exact breakpoint or inserted sequence is known. Full transcript annotation is performed.
Variant types resolved from SVTYPE:
DEL
deletion (or copy_number_loss if CN field present)
INS
insertion
DUP
tandem_duplication (or copy_number_gain if CN field present)
DUP:TANDEM / TDUP
tandem_duplication
INV
inversion
BND
translocation
ALU / LINE1 / SVA
mobile_element_insertion
UPD
UPD
SV_INCOMPLETE (Incomplete Structural Variants)
Trigger:
Alt allele contains
[or](breakend notation, e.g.G]17:198982])Symbolic allele (e.g.
<DEL>,<DUP>) without sufficient sequence information to classify as complete
Meaning: Imprecise or incomplete structural variant. Reduced transcript annotation is applied because exact boundaries are uncertain.
CNV
Trigger (any):
SVTYPEis"CNV"or"LOH"LOHTYPEfield is non-empty
Sub-type resolution:
<LOH> + LOHTYPE=CNLOH
copy_number_neutral
<LOH> + LOHTYPE=GAINLOH
copy_number_gain
<LOH> + LOHTYPE=LOSSLOH
copy_number_loss
<DEL> or copyNumber < 1
copy_number_loss
<DUP> or copyNumber > 1
copy_number_gain
Otherwise
copy_number_variation
RepeatExpansion
Trigger: Alt allele starts with <STR (e.g. <STR12>). The repeat count is parsed from the digits following STR.
Variant type: short_tandem_repeat_variation.
ROH (Run of Homozygosity)
Trigger: Alt allele is exactly <ROH>.
Variant type: run_of_homozygosity.
SINGLE_BND (Single Breakend)
Trigger (either):
SVTYPEis"BND"Alt allele starts or ends with
.(dot notation, e.g.G.or.G)
Variant type: translocation.
Reference (Ref-Minor)
Trigger: globalMajorAllele is non-null (ref-minor site where the reference allele is the minor allele in the population).
Handled by delegating to SmallVariantCreator with isRefMinor = true.
Annotation Behavior
Each variant category is assigned an annotation behavior that determines the scope of transcript and supplementary annotations applied.
SmallVariant
SmallVariants
Reference (Ref-Minor)
SmallVariants
SV_COMPLETE
CompleteStructuralVariants
SV_INCOMPLETE
IncompleteStructuralVariants
CNV
IncompleteStructuralVariants
ROH
RunsOfHomozygosity
SINGLE_BND
BreakendVariants
RepeatExpansion
IncompleteStructuralVariants
Annotation Behavior Descriptions
SmallVariants
Full annotation including transcript consequences, CDS/protein positions, HGVS notation, and supplementary data sources (ClinVar, gnomAD, etc.)
CompleteStructuralVariants
Full annotation including transcript consequences, CDS/protein positions, HGVS notation. Supplementary annotations are matched by interval overlap (e.g. gnomAd SV, ClinVar SV)
IncompleteStructuralVariants
Reduced transcript annotation because exact boundaries are uncertain. Supplementary annotations are matched by interval overlap (e.g. gnomAd SV, ClinVar SV)
RunsOfHomozygosity
Minimal annotation since ROH is a zygosity observation, not a sequence change
BreakendVariants
Breakend-specific annotation
Alt Allele Resolution
Before categorization, symbolic <INS> alleles are resolved to concrete sequences when possible:
SVINSSEQ present -- ALT becomes
refAllele[0] + SVINSSEQ(anchoring base + inserted sequence).DUPSVINSSEQ + SVLEN present -- Represents a tandem duplication followed by novel insertion:
Duplication length =
SVLEN - DUPSVINSSEQ.LengthDuplicated sequence fetched from the reference at POS
ALT =
refAllele[0] + duplicatedSequence + DUPSVINSSEQ
If neither field is available, <INS> remains symbolic and categorizes as SV_INCOMPLETE.
Normalization
After categorization, variants are normalized (left-aligned and padding bases trimmed) against the reference sequence.
Exception: SINGLE_BND variants skip normalization. Since single breakends use dot notation (.G or G.), trimming the padding base would make it impossible to reconstruct the original allele.
For SmallVariant and Reference categories, the end position is recalculated after normalization as shiftedStart + shiftedRef.Length - 1.
Examples
Small Variants
SNP
Input Data:
Classification:
This is a single nucleotide polymorphism (SNP)
It does not contain breakend notation or symbolic alleles
It does not contain
SVTYPEorSVLENin theINFOfield
Short Indel
Input Data:
Classification:
This is an insertion of 2 base pairs
The length of change is small (3bp), so it falls under small variant
It does not contain
SVTYPEorSVLENin theINFOfield
Multiallelic SNP
Input Data:
Classification:
This represents a multiallelic SNP, where two different alternative alleles exist (
AandC)Each allele is processed independently through the classification pipeline
It does not contain
SVTYPEorSVLENin theINFOfield
Structural Variants
Deletion (symbolic)
Input Data:
Classification:
The alternate allele (
<DEL>) is symbolicThe
SVTYPE=DELconfirms it is a structural variantCategory:
SV_INCOMPLETE(no precise sequence available)
Deletion with explicit alleles
Input Data:
Classification:
The alternate and reference alleles are precise but
SVTYPE=DELindicates it is a structural variantCategory:
SV_COMPLETE(precise nucleotide allele exceeding 50bp)
Run Of Homozygosity
Input Data:
Classification:
The alternate allele (
<ROH>) is symbolicCategory:
ROH
Repeat Expansion
Input Data:
Classification:
The alternate allele
<STR12>indicates a repeat expansion with 12 repeatsCategory:
RepeatExpansion
Copy Number Variation
Input Data:
Classification:
The alternate allele
<DEL>is symbolicSVTYPE=CNVconfirms it is a copy number variant (copy_number_loss)Category:
CNV
Translocation
Input Data:
Classification:
The alternate allele contains
[and], signifying a breakendSVTYPE=BNDconfirms this is a structural variant (translocation)Category:
SV_INCOMPLETE
Last updated
Was this helpful?

