October 1st, 2011

Перевод фрагмента HOWTO Module::Bio::SearchIO

Bio::SearchIO Истоки и дизайн:
Одна из самых общих и необходимых задач биоинформатики - это анализ и разбор отчётов чтобы было можно написать программы, помогающие интерпретировать огромные объёмы информации, получемые из обработки множеств последовательностей. Пакет BLAST от NCBI популярный инструмент для сравнения последовательностей. Разборщики BLAST являются являются частью Bio::SearchIO.
Замысел образов, называемых Factory (фабрикой), используемых в объектно-ориентированном программировании - разделение объекта, который обрабатывает данные, и объекта, который будет держать выдаваемую информацию. В том-же порядке, что и модуль Bio::SearchIO используется для разбора файлов разных форматов и порождения объектов, которые cовместимы с Bio::PrimarySeqI, мы написали Bio::SearchIO, порождающий Bio::Search объекты. Последовательности это чуть менее совместимые, чем только первичные (Bio::PrimarySeqI) объекты, пока Bio::Search необходимо 3 главных компонента для представления обработанных данных в файл:
Система Bio::SearchIO была спроектироваса со следующими допущениями: что все отчёты, разбираемые ей, могут быть разделены по иерархии компонентов. Result является полным анализом для одного запроса последовательности, и множество Result могут быть сращены вместе в один файл (т.е. работающий blastall с базой данных формата fasta как входящим файлом вместо одной последовательности). Каждый Result это набор Hit (попаданий) для запрашиваемой последовательности. Hit это последовательность в поисковой базе данных, которая может быть выровнена с запрашиваемой последовательностью и иметь минимальные поисковые параметры, такие как порог E-уровня. Каждый Hit содержит один, или более, HSP (высокосовпадающие сегмены пар), которые являются выравниваниями запроса и попавшей последовательности. Каждый Result имеет один или больше Hit и каждый Hit имеет один, или больше, HSP и эти взаимосвязи могут быть использованы для описания результатов всех попарных выравниваний с помощью программ, включающих BLAST, FastA, применений алгоритмов Смита-Вальтермана и Нидлемана-Ванша.
    Bio::Search::Result::ResultI (результаты высокого уровня)
    Bio::Search::Hit::HitI (попадания)
    Bio::Search::HSP::HSPI (высокосовпадающие сегменты пар)
Объект Bio::SearchIO затем фабрика, которая получает объекты Bio::Search::Result::ResultI, которые содержат информацию о запросе, поисковой базе данных и полный сбор всех Hit, найденных в запросе.
Основной подход Bio::SearchIO демонстрирует на большом числе поддерживаемых форматов отчётов. Они приведены в таблице:
blast BLAST (BLAST, PSIBLAST, PSITBLASTN, RPSBLAST, WUBLAST, bl2seq, WU-BLAST, BLASTZ, BLAT, Paracel BTK )
fasta FASTA -m9 и -m0
blasttable BLAST табличный -m9 или -m8 (NCBI) и -mformat 2 или -mformat 3 (WU-BLAST)
blastxml NCBI BLAST XML и WU-BLAST XML
erpin ERPIN версии 4.2.5 и выше
infernal infernal версии 0.7 и выше
megablast MEGABLAST
psl UCSC форматов PSL
waba WABA
axt AXT
sim4 Sim4
hmmer HMMER hmmpfam и hmmsearch
exonerate Exonerate CIGAR
wise Genewise -genesf
rnamotif raw rnamotif выход для RNAMotif версий 3.0 и выше