Skip to content

gff.pm has problemas when parsing Target attribute #7

@arremb

Description

@arremb

gff.pm in 1.6 decodes strings in the wrong place, resulting in exception even if valid values.

GFF3 specification:

Target

Indicates the target of a nucleotide-to-nucleotide or protein-to-nucleotide alignment. The format of the value is "target_id start end [strand]", where strand is optional and may be "+" or "-". If the target_id contains spaces, they must be escaped as hex escape %20.

However, line 636 from gff.pm assigns a DECODED value to attr Target, converting valid %20 into spaces
So, Target='A%20B 1 23 +;' will be converted to $attr{'Target'} = 'A B 1 23 +' when it should keep the original value.
This brings problems when the value is parsed at line 706 (my ($t_id,$tstart,$tend,$strand,$extra) = split /\s+/, $target_string; ), resulting in an exception 'The value in the Target string, $target_string, does not conform to the GFF3 specification'

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions