[Bioperl-l] EUtilities term handling
bix at sendu.me.uk
Thu Oct 5 11:28:55 EDT 2006
Chris Fields wrote:
> On Oct 5, 2006, at 9:44 AM, Sendu Bala wrote:
>> Chris Fields wrote:
>>> The bug is in the query and not in the code, i.e. is is a
>>> user-generated bug, not an EUtilities bug. And it shouldn't be
>>> unexpected, as NCBI has very specific rules for building queries for
>>> Entrez (just like any other database).
>> So I guess this comes down to something Hilmar mentioned and I never
>> even considered before. You consider your EUtilities stuff as a
>> frontend to entrez, and therefore consider valid queries as queries
>> that are valid for entrez and not eutils?
> The eutils tools access the same databases as the web page, in the same
> way, using the same search terms.
It doesn't. The eutils interface behaves differently with +s than does
the entrez website interface. In eutils + means space, whilst in entrez,
+ means the plus symbol.
>> If that's the case, fine. I understand why you don't think this is a
>> bug. Again, something that might warrant a mention in the POD.
>> Currently the naming of the modules and the explicit references to
>> eutils (and me knowing the implementation uses eutils) got me confused.
> I'll note that in there is URI encoding in POD, but that should be a
Just that it is URI encoded isn't the problem. The problem is the
difference in behaviour outlined above.
> I don't think every Bio::DB* class specifies this, mainly
> because it is taken for granted. Pretty much anything that builds URL
> strings needs to encode based on the URI standard, and any server that
> accepts URLs is expected to decode using the same standard.
> So, again, why does that have to be specifically outlined in POD?
Because they're different. If I construct a valid eutils query it might
not work. You ought to explain why.
"EUtilities takes any valid entrez query and transforms it into a valid
eutils query for submission. Do not try and provide a valid eutils query
of your own, or the extra transformation will result in no results"
More information about the Bioperl-l