高级检索

帮助文档

GenBase质量控制系统的错误类型和修正方案

在预览页面,GenBase会输出质控报错,需要对其进行逐一修改,并重新提交文件到GenBase。下面总结了可能遇到的报错类型和修正方案。下载PDF版本
SEQ_FEAT.InternalStop和SEQ_INST.StopInProtein
解释:序列的蛋白质翻译区内包含终止密码子。
建议:
1. 是否核酸序列有误,如有误可考虑改正核酸序列。
2. 是否细胞器类型选择有误,叶绿体、线粒体和核基因组使用不同的遗传密码子表,使用错误的密码子表可能会存在出现不适用的终止密码子的问题,如是可考虑更正细胞器类型。
3. 是否存在CDS间隔的情况,即由多段不连续的CDS组成,不连续的位置上恰好存在终止密码子,如有多段CDS则需要分别标注出每段的CDS位置。
4. 是否存在codon_start变化的情况,即编码时阅读框的移位,或指下一个密码子相对于当前CDS特征的5'端开始的位置。这里更有可能的是CDS的5' 端不完整(partial)的情况,如是则应具体指出5' 端不完整的位置,并且需要添加一个codon_start限定符,分别表示将阅读框移动一个或两个碱基。对于GFF文件,codon_start的值为1或2表示将阅读框移动一个或两个碱基;对于TBL文件,codon_start的值为2或3表示将阅读框移动一个或两个碱基。
5. 是否为假基因(pseudogene),如果确定为假基因并且无法找到终止密码子,可以在GFF文件对应的gene行(第三列为gene的那行)的第九列添加pseudo=true属性值,代表该序列无法被正常翻译。
6. 是否为特殊的基因编码机制,如后生动物线粒体基因中经常存在的不完全终止密码子现象,如是则需要对CDS序列标记transl_except属性,并明确标记出具体的位置和对应的氨基酸信息。
SEQ_FEAT.NoStop
解释:CDS在其3 ' 端不以终止密码子结束。
建议:
1. 是否CDS位置标记错误,如是则考虑延长CDS序列位置,直至出现终止密码子。
2. 是否序列在3' 端存在不完整情况,如是则可以将3' 端标记为不完整(partial)。
3. 是否为假基因(pseudogene),如果确定为假基因并且无法找到终止密码子,可以在GFF文件对应的gene行(第三列为gene的那行)的第九列添加pseudo=true属性值,代表该序列无法被正常翻译。
SEQ_FEAT.StartCodon和SEQ_INST.BadProteinStart
解释: CDS 在其 5' 端不以起始密码子开头。
建议:
1.是否CDS位置标记错误,如是则考虑延长CDS序列位置,将 CDS 延伸到出现起始密码子。
2. 是否序列在5' 端存在不完整情况,如是则将 5' 端标记为不完整(partial)。
3. 是否为假基因(pseudogene),如果确定为假基因并且无法找到终止密码子,可以在GFF文件对应的gene行(第三列为gene的那行)的第九列添加pseudo=true属性值,代表该CDS 无法被正常翻译。
4. 是否细胞器类型选择有误,叶绿体、线粒体和核基因组使用不同的遗传密码子表,使用错误的密码子表可能会存在出现不适用的起始密码子的问题,如是可考虑更正细胞器类型。
5. 是否存在codon_start变化的情况,即编码时阅读框的移位,或指下一个密码子相对于当前CDS特征的5'端开始的位置。这里更有可能的是CDS的5' 端不完整(partial)的情况,如是则应具体指出5' 端不完整的位置,并且需要添加一个codon_start限定符,分别表示将阅读框移动一个或两个碱基。对于GFF文件,codon_start的值为1或2表示将阅读框移动一个或两个碱基;对于TBL文件,codon_start的值为2或3表示将阅读框移动一个或两个碱基。
SEQ_FEAT.ShortIntron
解释:CDS包含一个短于11bp的内含子。
建议:
1. 是否intron的位置标记错误,如是可考虑修正intron的位置使它长于11bp。
2. 是否为假基因(pseudogene),如果确定为假基因并且无法找到终止密码子,可以在GFF文件对应的gene行(第三列为gene的那行)的第九列添加pseudo=true属性值,代表该CDS 无法被正常翻译,可参考https://www.insdc.org/submitting-standards/pseudogene-qualifier-vocabulary/。
3. 是否基因发生移码但不是假基因,如是则需要在整个范围内注释单个基因特征,并包含pseudo限定符以指示该基因已损坏并且无法按预期翻译(在gene那行的第九列添加pseudo=true属性值)。
SEQ_FEAT.SuspiciousFrame
解释:CDS有一个大于1的frame值。每个基因区域内,第一个CDS 的frame值应该为1。在GFF文件的第八列被标注为0,在TBL文件中codon_start被标记为1。
建议:此注释需要标记为5' 不完整(partial)。以GFF文件为例,如果不是partial,则第一个CDS区间的frame值必须为0,即GFF文件的第八列被标注为0,后续的CDS的frame值根据实际数据的编码来决定;如果是partial,则第一个CDS区间、后续的CDS的frame值根据实际数据的编码来决定,但注释需要标记上5' 不完整(partial)。
SEQ_FEAT.AbuttingIntervals
解释:当GFF文件注释的一个基因的exons位置相邻时。
建议:是否可以合并两个相邻的exons,更改exons位置。
SEQ_FEAT.SeqLocOrder
解释:当GFF文件的exon/CDS间的位置有重叠时,坐标位置乱序。
建议:是否可以参考mRNA和CDS序列的位置,更改重叠的exon/CDS位置,删除多余的exon/CDS;exons的边界和mRNA一致,数量和CDS一致;如果多个CDS在负链,多个CDS的坐标值应该是从大到小。
SEQ_FEAT.CDSmRNAXrefLocationProblem
解释:GFF文件注释CDS和exon的位置或数量不一致。
建议:是否可以更改exon或CDS位置和数量,理论上只能唯一的分组标准。
SEQ_FEAT.CDSwithMultipleMRNAs
解释:GFF文件注释CDS和exon的位置不一致。
建议:是否可以更改exon或CDS位置和数量。实践发现有时与SEQ_FEAT.CDSmRNAmismatchCount一同出现,且数量一致。
SEQ_FEAT.TransLen
解释:蛋白质长度与预测的蛋白质长度不匹配。这通常会引发连串报错。
SEQ_FEAT.BadInternalCharacter
解释:GFF文件第9列的属性值attributes中包含不符合规范的字符,例如“|”符号。
建议:删除GFF文件第9列属性值中不规范的字符。
SEQ_FEAT.BadTrailingHyphen
解释:GFF文件第9列的属性值attributes中以连字符“-”结尾时。
建议:删除GFF文件第9列属性值中不规范的连字符。
SEQ_FEAT.BadTrailingCharacter
解释:物种名称或特征标签中不应包含下划线、句号、逗号、冒号或分号。
建议:删除不规范的字符。
SEQ_FEAT.SeqFeatXrefNotReciprocal
解释:exon和CDS的位置或数量不一致且有中间终止密码子导致,也可能引入SEQ_FEAT.InternalStop 和 SEQ_INST.StopInProtein 或 SEQ_FEAT.ShortIntron 错误。
建议:
1. 是否可以调整exon和CDS的位置和数量。
2. 是否为假基因(pseudogene),如果确定为假基因,可以在GFF文件对应的gene行(第三列为gene的那行)的第九列添加pseudo=true属性值,代表该CDS 无法被正常翻译。(在gene行的第九列添加pseudo=true属性值后,SEQ_FEAT.SeqFeatXrefNotReciprocal和CDSmRNAMismatchLocation消失并转化成SEQ_FEAT.CDSwithMultipleMRNAs报错,数量与SEQ_FEAT.CDSmRNAmismatchCount一致)
SEQ_FEAT.DuplicateFeat
解释:同一坐标位置注释到多个基因。
建议:
1. 需要查看错误的位置信息,根据位置信息查找GFF文件的重复注释位置,是否可以删除其中一个基因注释。
2. 是否可以把重复基因的注释变成一个基因的多个可变剪切注释,即删除重复基因的gene注释,把重复基因的mRNA注释的parent属性改为另一个基因。
SEQ_FEAT.GeneXrefStrandProblem
解释:基因的CDS或exon位置信息不一致。
建议:
1. 是否可以修改位置信息为一致。
2. 是否为假基因(pseudogene),如果确定为假基因,可以在GFF文件对应的gene行(第三列为gene的那行)的第九列添加pseudo=true属性值,代表该CDS 无法被正常翻译。
SEQ_FEAT.BadProteinName
解释:“Unknown protein”或“hypothetical protein”不应有EC编号,产物名称为“hypothetical protein”时,存在了EC编号。
建议:如果确实是“hypothetical protein”,需删除 EC 编号。 如果 EC 编号正确,请使用它来提供有效的产物名称。
SEQ_FEAT.FeatureBeginsOrEndsInGap
解释:特征以gap开始或结束。
建议:
1. 删除该特征。
2. 是否可以将其位置调整为partial,并紧邻gap区域。
SEQ_FEAT.GenCodeInvalid和SEQ_FEAT.GenCodeMismatch
解释:遗传密码无效或不正确。
建议:
1. 如果该序列的物种不是原核生物,那么您可以忽略此错误。
2. 是否细胞器类型选择有误,叶绿体、线粒体和核基因组使用不同的遗传密码子表,使用错误的密码子表可能会存在出现不适用的起始密码子的问题,如是可考虑更正细胞器类型。
SEQ_FEAT.IllegalDbXref
解释:db_xref 中的数据库有缩写或者不是允许的数据库之一 ()。
建议:如果您使用的数据库不是允许的数据库之一,请更改 db_xref。
SEQ_FEAT.InvalidQualifierValue
解释:rRNA 特征必须有产物名称,此处缺失rRNA 特征的产物名称。
建议:是否可以为每个rRNA特征指定产物名称,例如 “16S ribosomal RNA”。
SEQ_FEAT.MisMatchAA
解释:所提供的蛋白质序列与编码区翻译不完全相同,在这两个序列之间发现不匹配的氨基酸。常为其他错误引发的连锁错误。
建议:如果它不是从起始密码子开始并延伸到序列的末端,则为不完整的原核序列,考虑是否可以将 CDS设定不完整(partial)。
SEQ_FEAT.MissingTrnaAA
解释:tRNA携带的氨基酸未包含产物名称。
建议:将氨基酸作为 tRNA 的产物。 如果 tRNA 的氨基酸未知,请使用 “tRNA-Xxx” 作为产物名称。参考示例 https://www.ncbi.nlm.nih.gov/genbank/genomesubmit_annotation/#RNAhttps://www.ncbi.nlm.nih.gov/genbank/eukaryotic_genome_submission_annotation/#rRNA
SEQ_FEAT.UnparsedtRNAAnticodon
解释:tRNA中存在未解析的反密码子限定符。
建议:参考正确写法,anticodon=(pos:complement(26429..26431))。
SEQ_FEAT.RNA_NO_PRODUCT
解释:每个rRNA和tRNA都应该有产物名称;注释文件中未包含CDS信息。
建议:如果不知道该产物名称,则使用“Xxx”或“tRNA-Xxx”;例如在GFF文件中,tRNA产物必须写为:product=tRNA-Leu才合理;一般情况下,注释文件中应包含CDS信息。
SEQ_FEAT.PartialProblem PartialLocation: Start does not include first/last residue of sequence
解释:由于原核生物很少存在可变剪接情况,因此它们的特征通常是完整(complete)的,或是延伸到序列末端且被标记为不完整(partial)。在真核生物中,如果partial位于内含子/外显子边界,则可以忽略此错误。
建议:
1. 将特征延伸一个或几个碱基至序列末尾。
2. 如果该特征是完整(complete)的,请删除partial符号。
3. 如果这只是一个片段或一个无功能的基因,请将特征的位置更改为complete,并向该基因添加 /pseudo 限定符。
SEQ_INST.ShortSeq
解释:少于10个氨基酸的蛋白质。
建议:如果它们很多,并且它们只是注释工具短的ORF调用,那么建议删除它们,除非它们是真实存在的。
SEQ_INST.TerminalNs
解释:序列的开头或结尾存在有N。
建议:
1. 是否可以删除序列开头和结尾的Ns。
2. 如果此序列为环状,是否可以标记序列为环状(circular)。
SEQ_FEAT.UnknownFeatureQual: orig_protein_id
建议:修改GFF 文件,使其标记上pseudo=true 或pseudogene=true。
SEQ_FEAT.WrongQualOnImpFeat
解释:特征中包含有非法限定符。
建议:可以在特征表 (https://www.insdc.org/documents/feature-table#7.2) 中查找每个特征的合法限定符。
SEQ_DESCR.OrganismIsUndefinedSpecies
解释:该物种是一种未定义的物种。
建议:对于非宏基因组数据、来自传统来源(如培养物)但尚未被确定为已定义物种的基因组,目前的方案是将菌株(strain)名称添加到生物体名称中,以形成新的生物体名称。例如,物种名称为Marinobacter sp. ,需要更改物种名称为: Marinobacter sp. strain XYZ,此处的XYZ为strain的名称。请邮件联系gsa@big.ac.cn修改该biosample对应的物种名称,可参照上述的Marinobacter sp. strain XYZ格式。
SEQ_DESCR.LatLonFormat
解释:纬度-经度latitude-longitude (lat-lon)的格式应为dd.dd N|S ddd.dd E|W。
建议:使用带有方向(N、S、E、W)的十进制度格式坐标来修正纬度-经度(lat-lon)的。例如:39.7 N 42.1 W。如果错误来自通过fasta提交创建的基因组,那么信息来源于BioSample,需要对其进行更新。请将正确的源信息发送至gsa@big.ac.cn,我们将更新基因组和BioSample。请确保提供基因组提交的SUBid和BioSample的访问号(如果已分配,格式为SAMCxxxxxxxx)。
FATAL:SUSPECT_PRODUCT_NAMES
解释:GFF文件中的product属性值中有错误格式会报错,比如含有不完整的括号,会显示“FATAL: SUSPECT_PRODUCT_NAMES: XXX features contain unbalanced brackets or parentheses”;或者产物名称中包含了物种名称;或者是解析到了错误或不正确的格式。
建议:

1. 需要做相应处理,例如添加括号或者删除括号。
2. 如果是产物名称中包含了物种名称organism,应当删除其中的物种名称。
3. 如果是解析到了错误或不正确的格式,应当删除不合理的符号类别。
GENES_OPPOSITE_STRANDS
解释:有基因重复注释到了相同位置的相反链上。
建议:删除重复的注释,或者修改重复的注释,变为一个基因的多个可变剪切的注释。
Multiparented features are not supported in GenBase mode
解释:此特征不支持多个父特征,形如"Parent=Puss.000012.2,Puss.000012.3,Puss.000012.1"的格式。
建议:可考虑修改为“Parent=Puss.000012.2”。
MissingGeneXref
解释:存在2个长度相同的基因区域,例如misc_RNA和tRNA都指定的是同一区域,并且是相同的父本标记。
建议:是否可以删除或者修改其中一个特征。
EXTRA_GENES
解释:仅标记基因特征,没有标记蛋白质等相关产物。
建议:是否可以补充相关产物。
EC_NUMBER_ON_UNKNOWN_PROTEIN
解释:蛋白质产物同时具有EC编号和"unknown protein"或"hypothetical protein"的蛋白质名称。例如,在gff文件中不能同时出现,eC_number=3.1.3.-;product=putative protein。
建议:修改蛋白质产物名称。
BadSeqIdFormat
解释:核苷酸序列中的seqid长度超过50个字符。
建议:修改核苷酸序列文件(fasta文件)中的seqid名称。
CDSwithNoMRNA
解释:CDS特征没有匹配的mRNA,匹配是通过xref标记或重叠区域来识别。
建议:增加相关mRNA注释。
Exon/CDS extends beyond parent feature
解释:外显子或CDS的坐标范围超出了其父本特征的坐标范围,一般是因为特征ID值不唯一导致的。
建议:是否可以修改外显子或CDS的坐标范围或者ID值。
CDS record with bad parent assignments
解释:CDS被标记重复的Parent信息,一般是因为特征ID值不唯一导致的。
建议:是否可以修改外显子或CDS的ID值。
mRNA record with bad parent assignment or Record references non-existent Parent
解释:mRNA对应的Parent信息不存在。
建议:是否可以补充对应的Parent信息。
MultipleGeneOverlap
解释:基因特征内包含了两个或更多的其他基因。
建议:是否可以对多余的基因进行修改或者删除。
ShortExon
解释:内部外显子太短。
建议:是否外显子坐标标注错误,如是则建议修改坐标信息。
SeqDataNotFound
解释:该bioseq未发现对应的序列数据。
建议:在序列文件中补充该条序列,或者在GFF文件或者TBL文件中删除该条序列的注释信息。
SEQ_SHORTER_THAN_200bp
解释:提交的序列长度少于200bp。我们预计的基因组草图的contig长度至少为200bp。如果你认为你需要保持一个短的contig,请联系GenBase基因组的工作人员解释情况。
建议:删除长度小于200 bp的序列。
TerminalGap
解释:Bioseq的3端有一个不应该存在的gap区域。
建议:是否是因为序列错误导致,如是则建议删除该gap区域。
FeatureProductInconsistency
解释:CDS特征内有多个重叠的mRNA特征,如果没有其他识别其将会被分配到不同的编码区。一般是因为特征ID值不唯一导致的。
建议:是否可以删去重叠的mRNA特征,或者对mRNA特征的ID 进行唯一性的标注。
MissingCDSproduct
解释:CDS特征缺少产物描述。Pseudo的CDSs、短的CDSs(小于6个氨基酸)、标记有重排的CDSs除外,他们不需要产物。
建议:是否可以补充CDS特征的产物描述信息。
UnindexedFeature
解释:特征的位置不允许将其映射到单个 Bioseq,或者在一个或多个部分 Bioseq 上映射到分段的父本信息。
建议:是否可以删除该特征。
IntronIsStopCodon
解释:3端碱基的内含子上包含了一个终止密码子。
建议:是否存在内含子标记错误,如是则考虑延长CDS序列至终止密码子处。
CScope_Impl::GetSeq_featHandle: Seq-feat location is empty
解释:GFF文件引起的问题,特征缺少ID属性。
建议:是否可以补充对应的ID信息。
Others
1. 如果物种不是细菌和古细菌则可以忽略BACTERIAL_开头的报错信息。

2. GFF文件中的product属性不符合蛋白产物名称规定时,会把不符合规定的product属性值改为hypothetical protein。product值的不规范情况:
1) 包含逗号,(因为逗号是分隔符)
2) 包含竖杠|
3) 短横杠-开头或结尾
4) 冒号:开头或结尾
5) 斜杠/开头或结尾
6) 不包含字母
7) 不完整的括号(包括圆括号、中括号和大括号)
参考文献
1. Validation and Discrepancy Report Error Explanations:https://www.ncbi.nlm.nih.gov/genbank/validation/
2. Validation Error Explanations for Genomes:https://www.ncbi.nlm.nih.gov/genbank/genome_validation/
3. Discrepancy Report:https://www.ncbi.nlm.nih.gov/genbank/asndisc/
4. MODULE valid:https://github.com/genome-vendor/sequin/blob/master/errmsg/valid.msg
5. Annotating genomes with gff3:https://www.ncbi.nlm.nih.gov/genbank/genomes_gff/
6. Common Discrepancy Reports:https://www.ncbi.nlm.nih.gov/genbank/new_asndisc_examples/
7. Validation Error Explanations :https://www.ncbi.nlm.nih.gov/IEB/ToolBox/CPP_DOC/doxyhtml/ValidErrItem_8cpp_source.html
8. https://yanzhongsino.github.io/2022/03/22/omics_genome_submit/
9. genomes submission guide:https://www.ncbi.nlm.nih.gov/genbank/genomesubmit/
10. table2asn:https://www.ncbi.nlm.nih.gov/genbank/table2asn/
11. table2asn documentation:https://ftp.ncbi.nlm.nih.gov/asn1-converters/by_program/table2asn/DOCUMENTATION/