<div dir="ltr">Hi João,<div><br></div><div>VEP does not currently support N as a valid REF or ALT allele. As you point out, in theory it's possible to make some deductions in some cases, but currently our code does not support this.</div><div><br></div><div>If you have N as your REF allele, then you should be able to correct this by looking up the reference allele at each position. The --check_ref flag in VEP will report the correct REF allele for you.</div><div><br></div><div>If you have N as your ALT allele, you could spoof the annotation you might expect by substituting N for the remaining non-REF alleles e.g. if you have REF=A, then you could set ALT=C,G,T.</div><div><br></div><div>The VCF spec does not necessarily exist to support annotation tools, merely the reporting of variants, so I don't believe it's a valid conclusion to say this feature should be dropped from the spec.<br><div><br></div><div>Regards</div><div><br></div><div>Will McLaren</div><div>Ensembl Variation</div><div><br></div><div class="gmail_extra"><br><div class="gmail_quote">On 27 September 2016 at 02:59, João Eiras <span dir="ltr"><<a href="mailto:joao.eiras@gmail.com" target="_blank">joao.eiras@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi.<br>
<br>
The VCF spec [1] mentions that the REF and ALT fields can contain the<br>
N nucleotide.<br>
<br>
I was checking the COSMIC data, and the VCF files do have a bit of<br>
N-content in some variants.<br>
<br>
I've checked how VEP handles N-content.<br>
<br>
If the N-content is in the REF field, VEP will just report<br>
"coding_sequence_variant" as consequence term and that's it.<br>
<br>
Example (not from cosmic) with the GRCm38 genome, on transcript<br>
ENSMUST00000086738, codon at position 6:<br>
#CHROM POS ID REF ALT QUAL FILTER INFO FORMAT<br>
chr1 99772780 . N G 5000 . . .<br>
chr1 99772781 . N G 5000 . . .<br>
chr1 99772782 . N G 5000 . . .<br>
<br>
I would expect for N to be handled as a wildcard when comparing REF<br>
with the sequence in the database, so N would always match, and would<br>
just tell the annotation tool how long REF is.<br>
<br>
Then, if N is in the ALT column, VEP will not produce any annotations<br>
at all  (transcript_consequences is empty).<br>
<br>
#CHROM POS ID REF ALT QUAL FILTER INFO FORMAT<br>
chr1 99772780 . A N 5000 . . .<br>
chr1 99772781 . G N 5000 . . .<br>
chr1 99772782 . A N 5000 . . .<br>
<br>
I think even with N-content most variants can be called (small indels,<br>
frameshifts, stop codon change or gain), but the main issue is that<br>
amino-acid changes may not be callable, so VEP should just output X<br>
when translating the codons affect by N, which VEP already does for<br>
incomplete codons (tip of transcript or frameshifts). Looking at the<br>
genetic code table, the amino-acids Alanine (GCN), Arginine (CGN),<br>
Glycine (GGN), Leucine (CTN), Proline (CCN), Serine (TCN), Threonine<br>
(ACN) and Valine(GTN) can all be unambiguously called if there is N in<br>
the 3rd nucleotide of their respective codons.<br>
<br>
If annotations tools do not produce usable output with N-content, then<br>
the spec should be changed.<br>
<br>
Thank you.<br>
<br>
[1] <a href="https://samtools.github.io/hts-specs/VCFv4.2.pdf" rel="noreferrer" target="_blank">https://samtools.github.io/<wbr>hts-specs/VCFv4.2.pdf</a>, page 4<br>
<br>
______________________________<wbr>_________________<br>
Dev mailing list    <a href="mailto:Dev@ensembl.org">Dev@ensembl.org</a><br>
Posting guidelines and subscribe/unsubscribe info: <a href="http://lists.ensembl.org/mailman/listinfo/dev" rel="noreferrer" target="_blank">http://lists.ensembl.org/<wbr>mailman/listinfo/dev</a><br>
Ensembl Blog: <a href="http://www.ensembl.info/" rel="noreferrer" target="_blank">http://www.ensembl.info/</a><br>
</blockquote></div><br></div></div></div>