This is a test version of Biostars. For the public version, visit https://www.biostars.org.
Blast Xml Document Iterations

When running BLAST with one sequence against a sequence database there is only one iteration in the <Iteration> element, as in the value of Iteration_iter-num is one. For example:


http://www.ncbi.nlm.nih.gov/dtd/NCBI_BlastOutput.dtd">
<BlastOutput>
  <BlastOutput_program>blastn</BlastOutput_program>
  <BlastOutput_version>BLASTN 2.2.28+</BlastOutput_version>
  <BlastOutput_reference>Zheng Zhang, Scott Schwartz, Lukas Wagner, and Webb Miller (2000), "A greedy algorithm for aligning DNA sequences", J     Comput Biol 2000; 7(1-2):203-14.</BlastOutput_reference>
  <BlastOutput_db>nr</BlastOutput_db>
  <BlastOutput_query-ID>42945</BlastOutput_query-ID>
  <BlastOutput_query-def>No definition line</BlastOutput_query-def>
  <BlastOutput_query-len>1440</BlastOutput_query-len>
  <BlastOutput_param>
    <Parameters>
      <Parameters_expect>10</Parameters_expect>
      <Parameters_sc-match>1</Parameters_sc-match>
      <Parameters_sc-mismatch>-2</Parameters_sc-mismatch>
      <Parameters_gap-open>0</Parameters_gap-open>
      <Parameters_gap-extend>0</Parameters_gap-extend>
      <Parameters_filter>L;m;</Parameters_filter>
     </Parameters>
   </BlastOutput_param>
<BlastOutput_iterations>
<Iteration>
  <Iteration_iter-num>1</Iteration_iter-num>
  <Iteration_query-ID>42945</Iteration_query-ID>
  <Iteration_query-def>No definition line</Iteration_query-def>
  <Iteration_query-len>1440</Iteration_query-len>
<Iteration_hits> 
.
.
.
</Iteration_hits>
   <Iteration_stat>
        <Statistics>
          <Statistics_db-num>20073013</Statistics_db-num>
          <Statistics_db-len>50708408902</Statistics_db-len>
          <Statistics_hsp-len>0</Statistics_hsp-len>
          <Statistics_eff-space>0</Statistics_eff-space>
          <Statistics_kappa>0.46</Statistics_kappa>
          <Statistics_lambda>1.28</Statistics_lambda>
          <Statistics_entropy>0.85</Statistics_entropy>
        </Statistics>
      </Iteration_stat>
    </Iteration>
    </BlastOutput_iterations>
    </BlastOutput>

So again, when running 1 sequence against a database of n sequences, I've only seen one <Iteration> element. In what cases will there be multiple <Iteration> elements? If I am only parsing results in from 1:n runs, can I assume that there will always only be one element?

blast xml

1 answer

it happends where there is more than one query/subject sequence:

$ cat test.fa  test.fa  | blastp  -outfmt 5  -subject test.fa  | grep -B 2 -A 5 "<Iteration>"
  </BlastOutput_param>
<BlastOutput_iterations>
<Iteration>
  <Iteration_iter-num>1</Iteration_iter-num>
  <Iteration_query-ID>Query_1</Iteration_query-ID>
  <Iteration_query-def>tr|A0MD49|A0MD49_9REOV NSP1 OS=Bovine rotavirus GN=NSP1 PE=4 SV=1</Iteration_query-def>
  <Iteration_query-len>486</Iteration_query-len>
<Iteration_hits>
--
  </Iteration_stat>
</Iteration>
<Iteration>
  <Iteration_iter-num>2</Iteration_iter-num>
  <Iteration_query-ID>Query_2</Iteration_query-ID>
  <Iteration_query-def>tr|A0MD49|A0MD49_9REOV NSP1 OS=Bovine rotavirus GN=NSP1 PE=4 SV=1</Iteration_query-def>
  <Iteration_query-len>486</Iteration_query-len>
<Iteration_hits>

So then yes, if I have one only one query sequence, I can assume that there will always be one <Iteration> object.

Log in to answer this question.