[Bioperl-l] EMBL file with space before quoted, multi-line qualifier value

Fields, Christopher J cjfields at illinois.edu
Thu Apr 9 15:18:32 UTC 2015


On Apr 9, 2015, at 8:03 AM, Adam Sjøgren <adsj at novozymes.com> wrote:
> 
> Adam writes:
> 
>> -        my( $qualifier, $value ) = m{^/([^=]+)(?:=(.+))?}
>> +        my( $qualifier, $value ) = m{^/([^=]+)*(?:=\s*(.+))?}
>                                                 |
> I got a '*' to many there -----------------------'
> 
> I (only) meant to add the '\s*' after the '=':
> 
> +        my( $qualifier, $value ) = m{^/([^=]+)(?:=\s*(.+))?}
> 
> Sorry!
> 
> -- 
>                                                          Adam Sjøgren
>                                                    adsj at novozymes.com

As long as this passes current tests I don’t have a problem with adding it in.  I would suggest adding a simple test case for it; you could modify a current EMBL file in the data directory if needed for a test case, probably no need to add a new file.

I’ve long felt there's a fine line between having a parser being a strict validation tool and having it be flexible enough to allow for idiosyncrasies from various tools (e.g. see any GenBank output from anywhere).  I tend to veer in the direction of flexibility within reason; having a test suite helps quite a bit.

chris



More information about the Bioperl-l mailing list