<html><body><div style="color:#000; background-color:#fff; font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:16px"><div id="yui_3_16_0_1_1423819171766_44692">Hi Peter</div><div id="yui_3_16_0_1_1423819171766_44693"><br></div><div id="yiv8110779401"><div id="yui_3_16_0_1_1423819171766_44279" style="color:#000;background-color:#fff;font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:16px;"><div id="yiv8110779401yui_3_16_0_1_1423819171766_42825"><div id="yui_3_16_0_1_1423819171766_44694" dir="ltr">you are right of course we were not talking of concatenated sequence(Strings), but of sequence records which are usually concatenated for large libraries. I was also used from BioPython to parse such files.</div><div id="yui_3_16_0_1_1423819171766_44695" dir="ltr"><br></div><div id="yui_3_16_0_1_1423819171766_44696" dir="ltr">The current discussion might be caused by a slightly ambiguous naming scheme. The sequence records in biojava are derived from the class AbstractSequence and are thus called DNASequence etc. Thus, when we were speaking of sequences, we were actually speaking of sequence records.&nbsp;</div><div id="yui_3_16_0_1_1423819171766_44776" dir="ltr"><br></div><div id="yui_3_16_0_1_1423819171766_44774" dir="ltr">The different expectations of Paolo and me might also have been cause by the fact that it is hard to distinguish between actual sequence readers/proxys (which would read exactly one sequence) and sequence record readers/parsers (which would read as many as there are). In an ideal world this could be resolved into:<br></div><div id="yui_3_16_0_1_1423819171766_44773" dir="ltr"><br></div><div id="yui_3_16_0_1_1423819171766_44697" dir="ltr">-Sequences which only hold the actual sequence<br></div><div id="yui_3_16_0_1_1423819171766_44698" dir="ltr">&nbsp;&nbsp;&nbsp; --SequenceFactory which contains the sequence readers/writers.&nbsp;</div><div id="yui_3_16_0_1_1423819171766_44840" dir="ltr">-SequenceRecord which holds the sequence and all features<br></div><div id="yui_3_16_0_1_1423819171766_44699" dir="ltr">&nbsp;&nbsp;&nbsp; --SequenceRecordFactory contains the sequence record readers/writers.<br></div><div id="yui_3_16_0_1_1423819171766_44700" dir="ltr"><br></div><div id="yui_3_16_0_1_1423819171766_44701" dir="ltr">such an organization would certainly improve readability and understandability of the library. Unfortunately this probably represents an unspecified amount of coding...<br></div><div id="yui_3_16_0_1_1423819171766_44702" dir="ltr"><br></div><div id="yui_3_16_0_1_1423819171766_44703" dir="ltr">Cheers</div><div id="yui_3_16_0_1_1423819171766_44704" dir="ltr">Stefan</div><div id="yui_3_16_0_1_1423819171766_44705" dir="ltr"><br></div><div id="yui_3_16_0_1_1423819171766_44905" dir="ltr"><br></div><div id="yui_3_16_0_1_1423819171766_44906" dir="ltr"> <br></div><div id="yui_3_16_0_1_1423819171766_44907" dir="ltr"><br></div><div id="yui_3_16_0_1_1423819171766_44908" dir="ltr"><br></div><div id="yui_3_16_0_1_1423819171766_44909" dir="ltr"><br></div><div id="yui_3_16_0_1_1423819171766_44910" dir="ltr"> which 'in an ideal world' and maybe even in the biojava future could be resolved.<br></div><div id="yui_3_16_0_1_1423819171766_44911" dir="ltr"><br></div><div id="yui_3_16_0_1_1423819171766_44912"><br></div>I would be very surprised if BioJava's earlier contributors would<br style="" class="" clear="none">*concatenate* multiple separate sequences in a file into one<br style="" class="" clear="none">long sequence.<br style="" class="" clear="none"><br style="" class="" clear="none">Rather, much like the BioPerl and Biopython SeqIO libraries, surely<br style="" class="" clear="none">the design is to allow multiple separate sequence records to be<br style="" class="" clear="none">parsed from most sequence file formats? e.g. FASTA, FASTQ,<br style="" class="" clear="none">GenBank, etc can all hold zero or more records.<br style="" class="" clear="none"><br style="" class="" clear="none">For Biopython at least, we have an iterator approach for all our<br style="" class="" clear="none">SeqIO sequence parsers, with a helper function for when you<br style="" class="" clear="none">expect the file to contain one and only one record (in which case<br style="" class="" clear="none">the for loop style used with an iterator is cumbersome).<br style="" class="" clear="none"><br style="" class="" clear="none">Perhaps we are understanding different meanings from "concatenate"?<br style="" class="" clear="none"><br style="" class="" clear="none">Regards,<br style="" class="" clear="none"><br style="" class="" clear="none">Peter</div><div style="" class="" id="yiv8110779401yui_3_16_0_1_1423819171766_42825"><br style="" class=""></div></div></div></div></body></html>