You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
using GFF3
r = GFF3.Record("Ga0225945_11\timg_core_v400\tCDS\t350909\t352399\t.\t-\t0\tID=2800905551;locus_tag=Ga0225945_11352;product=respiratory nitrite reductase (cytochrome; ammonia-forming) precursor")
Expected Behavior
Expect product attribute to be ["respiratory nitrite reductase (cytochrome; ammonia-forming) precursor"]
This is an interesting issue. I had to check the specification for column 9. The semicolon is a reserved character that delimits the attributes. However, the specification stipulates that URL escaped semicolons may be used as part of an attribute tag or value. The URL encoding for a semicolon is %3B.
A possible solution is to URL encode your tags or values with HTTP.
using GFF3
using HTTP
str ="Ga0225945_11\timg_core_v400\tCDS\t350909\t352399\t.\t-\t0\tID=2800905551;locus_tag=Ga0225945_11352;product="*HTTP.escapeuri("respiratory nitrite reductase (cytochrome; ammonia-forming) precursor")
r = GFF3.Record(str)
When reading data back, HTTP.unescapeuri(str) is available if needed.
Thank you, Ciaran. I found the record is not stick to the specification, so it is possible OK to throw an error. Because the data is downloaded from JGI, so I cannot escape it unless I parse it manually.
It would be nice if GFF3.jl can hint the user when the data provided is not valid.
The code:
Expected Behavior
Expect product attribute to be
["respiratory nitrite reductase (cytochrome; ammonia-forming) precursor"]
Current Behavior
Possible Solution / Implementation
Treat
;
in()
,[]
and{}
as a non separator.Your Environment
Thank you.
The text was updated successfully, but these errors were encountered: