Background Chronic granulomatous disease (CGD) is a rare disorder of phagocytes in which absence of superoxide and hydrogen peroxide production in phagocytes predisposes patients to bacterial and fungal infections. The most common fungal infections in these patients are caused by  Aspergillus  species.
Background
Chronic granulomatous disease (CGD) is a rare disorder of phagocytes in which absence of superoxide and hydrogen peroxide production in phagocytes predisposes patients to bacterial and fungal infections. The most common fungal infections in these patients are caused by  Aspergillus  species.AspergillusCase presentation Here, we describe  Aspergillus  osteomyelitis of the ribs and hepatic abscess in a 5-year-old boy. The patient was successfully treated with Amphotericin B and INF-γ.
Case presentation
Here, we describe  Aspergillus  osteomyelitis of the ribs and hepatic abscess in a 5-year-old boy. The patient was successfully treated with Amphotericin B and INF-γ.AspergillusConclusion With respect to the high frequency of aspergillosis in the CGD patient, immune deficiency should be investigated in patients with invasive aspergillosis. Moreover, using antifungal drugs as prophylaxis can improve the quality of life in these patients.
Conclusion
With respect to the high frequency of aspergillosis in the CGD patient, immune deficiency should be investigated in patients with invasive aspergillosis. Moreover, using antifungal drugs as prophylaxis can improve the quality of life in these patients.

Background Chronic granulomatous disease (CGD) is a rare inherited disorder of nicotinamide adenine dinucleotide phosphate (NADPH) oxidase complex of phagocytic cells resulting in failure to generate reactive oxidants and the absence of a respiratory burst [ 1 ]. The disease is characterized by recurrent or persistent intra-cellular bacterial and fungal infections. Approximately, the incidence of fungal infections in CGD patients has been reported up to 20% of infections [ 2 ].  Aspergillus spp  are ubiquitous saprophytic fungi and are considered as the major causative fungal agent in these patients [ 2 , 3 ]. The spectrum of infection caused by  Aspergillus  species varies from flu-like pneumonia to life-threatening invasive aspergillosis [ 4 ]. The most common form of the aspergillosis in CGD patients is  Aspergillus  pneumonia which can be accompanied by dissemination to the ribs, chest wall and soft tissues [ 1 , 2 ]. Here, we describe a case of invasive aspergillosis in CGD patient with hepatic abscesses and osteomyelitis.
Background
Chronic granulomatous disease (CGD) is a rare inherited disorder of nicotinamide adenine dinucleotide phosphate (NADPH) oxidase complex of phagocytic cells resulting in failure to generate reactive oxidants and the absence of a respiratory burst [ 1 ]. The disease is characterized by recurrent or persistent intra-cellular bacterial and fungal infections. Approximately, the incidence of fungal infections in CGD patients has been reported up to 20% of infections [ 2 ].  Aspergillus spp  are ubiquitous saprophytic fungi and are considered as the major causative fungal agent in these patients [ 2 , 3 ]. The spectrum of infection caused by  Aspergillus  species varies from flu-like pneumonia to life-threatening invasive aspergillosis [ 4 ]. The most common form of the aspergillosis in CGD patients is  Aspergillus  pneumonia which can be accompanied by dissemination to the ribs, chest wall and soft tissues [ 1 , 2 ]. Here, we describe a case of invasive aspergillosis in CGD patient with hepatic abscesses and osteomyelitis.Aspergillus sppAspergillusAspergillusCase Presentation A 5-year-old male patient was admitted to Children Medical Center (CMC) with inflammation and swelling in his left mandible and wrist without a history of trauma. In the past, he had suffered from several episodes of pneumonia which started at the age of seven months. On admission, laboratory findings included erythrocyte sedimentation rate (ESR) 84 mm/h, WBC count 12100/mm3 (61% neutrophils, 39% lymphocytes), hemoglobin 11.3 gr/dl and thrombocyte 386000/mm3. As the CRP analysis displayed 20 mg/dl, cephalexin (150 mg/kg/day) was initiated. In his roentgenogram, osteolytic lesions in the distal metaphase of hand and maxillary bone were observed. Considering history of several infections and multifocal osteomyelitis, bone biopsy was performed and his immune system function was evaluated. In the bone biopsy, non-necrotizing granulomatoid lesions were seen. The induration of purified protein derivative reaction was 10 mm diameter. Besides, HIV, hepatitis B surface antigen (HBs), rheumatoid factor and brucella agglutination tests were all negative. The serum IgG level was 1650 mg/dl (normal: 441–1135 mg/dl). IgM and IgA were in high normal range at 250 and 175 mg/dl, respectively. Because no defect was found in his humeral and cellular immunity, the phagocytic cells function was tested with a nitroblue-tetrazolium (NBT) slide test. Based on his hematological and immunological tests (NBT = 0), CGD was considered as underlying disease in this case. Regarding his NBT test, antibiotic therapy was changed from cephalexin to co-trimoxazole (20 mg/kg/day, iv) plus (along with) interferon-γ (50 microgram/m 2  every other day). After two weeks of treatment, the patient's condition improved and he was discharged with prescription of both cephalexin (100 mg/kg/day) and co-trimoxazole (10 mg/kg/day) to be taken orally as prophylaxis. The patient was readmitted to our center after eight months with a tender mass in his right upper quadrant (RUQ) (Fig  1 ). On admission, his major complaint was severe dyspnea, a persistent cough and also chest and abdominal pain in epigastric area which was started 10 days ago. He was placed on antibiotic therapy including cephalexin (100 mg/kg/day). A computerized tomography (CT) scan of the chest and abdomen was performed which revealed the hypodense area in liver (Fig  2 ). Adjacent to this opacity, involvement of lower right ribs and reaction to soft tissue were also observed, indicating ribs osteomyelitis. After sonography guided drainage of the above-mentioned hepatic abscess, a sample was sent to the Mycology Department in Tehran University of Medical Sciences. The microscopic examination of clarified specimen with KOH 10% indicated the branched, septated and dichotomous mycelia (Fig.  3 ). The remaining specimen was also cultured on Brain Heart Infusion agar (BHI), Sabouraud's dextrose agar (S) and Sabouraud's containing 0.005% chloramphenicol (Sc). The S and Sc culture media were incubated at 25°C and BHI at 37°C. The colonies grew rapidly, attaining the diameter of 5 cm within 5 days and their color was bluish green. Cellophane tape preparations and slide cultures demonstrated septated, branched and hyaline hyphae with rough-walled conidiophores and radiated conidial heads. Based on these microscopic and macroscopic findings,  Aspergillus fumigatus  was determined as causative agent in this case. Deoxycholate Amphotericin B (1 mg/kg/day, iv), interferon-γ (50 microgeram/m 2  every other day, sc) and rifampicin (10 mg/kg/day) were administered with diagnosis of invasive aspergillosis. The only adverse event observed during treatment was hypokalemia, which was adjusted by administration of potassium chloride 15%. One month after initiation of antifungal therapy, his follow-up CT scan of the abdominal and thoracal region demonstrated relative resolution of hepatic abscess. After four weeks of intravenous treatment, the patient's clinical condition improved. He was discharged upon his parents' responsibility while continuing taking rifampicin (10 mg/kg/day) for two more weeks as a treatment in addition to co-trimoxazole (5 mg/kg/day) and itraconazole (4 mg/kg/day) as long term prophylaxis. Figure 1 Subcutaneous swelling and granuloma formation in right upper quadrant. Figure 2 Computerized tomography showed a hypodense area in right lobe of liver with peripheral enhancement Figure 3 KOH 10% preparation of hepatic abscess showing dichotomous septated hyaline hyphae.
Case Presentation
A 5-year-old male patient was admitted to Children Medical Center (CMC) with inflammation and swelling in his left mandible and wrist without a history of trauma. In the past, he had suffered from several episodes of pneumonia which started at the age of seven months. On admission, laboratory findings included erythrocyte sedimentation rate (ESR) 84 mm/h, WBC count 12100/mm3 (61% neutrophils, 39% lymphocytes), hemoglobin 11.3 gr/dl and thrombocyte 386000/mm3. As the CRP analysis displayed 20 mg/dl, cephalexin (150 mg/kg/day) was initiated. In his roentgenogram, osteolytic lesions in the distal metaphase of hand and maxillary bone were observed. Considering history of several infections and multifocal osteomyelitis, bone biopsy was performed and his immune system function was evaluated. In the bone biopsy, non-necrotizing granulomatoid lesions were seen. The induration of purified protein derivative reaction was 10 mm diameter. Besides, HIV, hepatitis B surface antigen (HBs), rheumatoid factor and brucella agglutination tests were all negative. The serum IgG level was 1650 mg/dl (normal: 441–1135 mg/dl). IgM and IgA were in high normal range at 250 and 175 mg/dl, respectively. Because no defect was found in his humeral and cellular immunity, the phagocytic cells function was tested with a nitroblue-tetrazolium (NBT) slide test. Based on his hematological and immunological tests (NBT = 0), CGD was considered as underlying disease in this case. Regarding his NBT test, antibiotic therapy was changed from cephalexin to co-trimoxazole (20 mg/kg/day, iv) plus (along with) interferon-γ (50 microgram/m 2  every other day). After two weeks of treatment, the patient's condition improved and he was discharged with prescription of both cephalexin (100 mg/kg/day) and co-trimoxazole (10 mg/kg/day) to be taken orally as prophylaxis.The patient was readmitted to our center after eight months with a tender mass in his right upper quadrant (RUQ) (Fig  1 ). On admission, his major complaint was severe dyspnea, a persistent cough and also chest and abdominal pain in epigastric area which was started 10 days ago. He was placed on antibiotic therapy including cephalexin (100 mg/kg/day). A computerized tomography (CT) scan of the chest and abdomen was performed which revealed the hypodense area in liver (Fig  2 ). Adjacent to this opacity, involvement of lower right ribs and reaction to soft tissue were also observed, indicating ribs osteomyelitis. After sonography guided drainage of the above-mentioned hepatic abscess, a sample was sent to the Mycology Department in Tehran University of Medical Sciences. The microscopic examination of clarified specimen with KOH 10% indicated the branched, septated and dichotomous mycelia (Fig.  3 ). The remaining specimen was also cultured on Brain Heart Infusion agar (BHI), Sabouraud's dextrose agar (S) and Sabouraud's containing 0.005% chloramphenicol (Sc). The S and Sc culture media were incubated at 25°C and BHI at 37°C. The colonies grew rapidly, attaining the diameter of 5 cm within 5 days and their color was bluish green. Cellophane tape preparations and slide cultures demonstrated septated, branched and hyaline hyphae with rough-walled conidiophores and radiated conidial heads. Based on these microscopic and macroscopic findings,  Aspergillus fumigatus  was determined as causative agent in this case. Deoxycholate Amphotericin B (1 mg/kg/day, iv), interferon-γ (50 microgeram/m 2  every other day, sc) and rifampicin (10 mg/kg/day) were administered with diagnosis of invasive aspergillosis. The only adverse event observed during treatment was hypokalemia, which was adjusted by administration of potassium chloride 15%. One month after initiation of antifungal therapy, his follow-up CT scan of the abdominal and thoracal region demonstrated relative resolution of hepatic abscess. After four weeks of intravenous treatment, the patient's clinical condition improved. He was discharged upon his parents' responsibility while continuing taking rifampicin (10 mg/kg/day) for two more weeks as a treatment in addition to co-trimoxazole (5 mg/kg/day) and itraconazole (4 mg/kg/day) as long term prophylaxis.Aspergillus fumigatusDiscussion CGD is a rare inherited immune disorder whose prevalence is estimated to be about 1/1,100,000 – 1/1,300,000 individuals worldwide [ 1 ]. Similar to the presented case, the most common form of CGD is X-linked recessive that consists of about two thirds of cases and the rest are autosomal recessive [ 5 ]. In the absence of minimal oxidative metabolism in CGD which can be ascertained easily using nitro blue tetrazolium (NBT) slide test, other immune mechanisms are triggered [ 6 ]. The relative evaluated immunoglobulin levels in the above-mentioned case might be due to persistent antigenic stimulation and it is a common phenomenon in all chronic infections. This defect is characterized by recurrent or persistent infections due to catalase-positive fungal and bacterial agents despite aggressive antibiotic therapy [ 1 , 6 ]. The incidence of aspergillosis in these patients has been reported to be 78% of all fungal infections [ 2 ]. Among  Aspergillus spp ,  Aspergillus fumigatus  is considered to be the predominant cause of invasive aspergillosis in CGD patients [ 1 , 7 ]. Pulmonary aspergillosis has been reported in CGD patients infected with  Aspergillus fumigatus . As shown in this case,  Aspergillus  might spread from lungs to the bones of thoracic wall and cause osteomyelitis [ 7 - 9 ]. Although  Aspergillus fumigatus  is considered to be the most isolated species,  Aspergillus nidulans  osteomyelitis is reported to have a higher incidence and more mortality rate in these patients [ 7 , 9 ]. The treatment of infections in CGD patients is not easy. Since the underlying immunodeficiency is the most important factor with respect to the outcome of treatment, these patients should be treated either with immunomudulative agents such as recombinant INF-γ or with stimulating factors [ 10 ]. Recently, on the basis of cytochrome b (558) expression and NADPH oxidase activity, three different sub-type of X-linked chronic granulomatous disease were described [ 11 ]. Therefore, therapeutic response to INF-γ in this case and other X-linked CGD patients might be elucidated. Besides, similar to other systemic fungal infections, antifungal drugs such as amphotericin B should be added to therapeutic regimen of CGD patients with established invasive aspergillosis. Our patient responded to the above-mentioned therapeutic protocol and was discharged with long term anti-microbial and immunomudulatory prophylactic treatment as well as anti fungal drug [ 12 ] to enhance the quality of life and lessen the risk of re-infection.
Discussion
CGD is a rare inherited immune disorder whose prevalence is estimated to be about 1/1,100,000 – 1/1,300,000 individuals worldwide [ 1 ]. Similar to the presented case, the most common form of CGD is X-linked recessive that consists of about two thirds of cases and the rest are autosomal recessive [ 5 ].In the absence of minimal oxidative metabolism in CGD which can be ascertained easily using nitro blue tetrazolium (NBT) slide test, other immune mechanisms are triggered [ 6 ]. The relative evaluated immunoglobulin levels in the above-mentioned case might be due to persistent antigenic stimulation and it is a common phenomenon in all chronic infections.This defect is characterized by recurrent or persistent infections due to catalase-positive fungal and bacterial agents despite aggressive antibiotic therapy [ 1 , 6 ]. The incidence of aspergillosis in these patients has been reported to be 78% of all fungal infections [ 2 ]. Among  Aspergillus spp ,  Aspergillus fumigatus  is considered to be the predominant cause of invasive aspergillosis in CGD patients [ 1 , 7 ]. Pulmonary aspergillosis has been reported in CGD patients infected with  Aspergillus fumigatus . As shown in this case,  Aspergillus  might spread from lungs to the bones of thoracic wall and cause osteomyelitis [ 7 - 9 ]. Although  Aspergillus fumigatus  is considered to be the most isolated species,  Aspergillus nidulans  osteomyelitis is reported to have a higher incidence and more mortality rate in these patients [ 7 , 9 ].Aspergillus sppAspergillus fumigatusAspergillus fumigatusAspergillusAspergillus fumigatusAspergillus nidulansThe treatment of infections in CGD patients is not easy. Since the underlying immunodeficiency is the most important factor with respect to the outcome of treatment, these patients should be treated either with immunomudulative agents such as recombinant INF-γ or with stimulating factors [ 10 ]. Recently, on the basis of cytochrome b (558) expression and NADPH oxidase activity, three different sub-type of X-linked chronic granulomatous disease were described [ 11 ]. Therefore, therapeutic response to INF-γ in this case and other X-linked CGD patients might be elucidated. Besides, similar to other systemic fungal infections, antifungal drugs such as amphotericin B should be added to therapeutic regimen of CGD patients with established invasive aspergillosis. Our patient responded to the above-mentioned therapeutic protocol and was discharged with long term anti-microbial and immunomudulatory prophylactic treatment as well as anti fungal drug [ 12 ] to enhance the quality of life and lessen the risk of re-infection.


Background Capillary DNA sequencing machines allow the generation of vast amounts of data with little hands-on time. With this expansion of data generation, there is a growing need for automated data processing. Most available software solutions, however, still require user intervention or provide modules that need advanced informatics skills to allow implementation in pipelines.
Background
Capillary DNA sequencing machines allow the generation of vast amounts of data with little hands-on time. With this expansion of data generation, there is a growing need for automated data processing. Most available software solutions, however, still require user intervention or provide modules that need advanced informatics skills to allow implementation in pipelines.Results Here we present POSA, a pair of new perl objects that describe DNA sequence traces and  Phrap  contig assemblies in detail. Methods included in POSA include basecalling with quality scores (by  Phred ), contig assembly (by  Phrap ), generation of primer3 input and automated SNP annotation (by  PolyPhred ). Although easily implemented by users with only limited programming experience, these objects considerabily reduce hands-on analysis time compared to using the Staden package for extracting sequence information from raw sequencing files and for SNP discovery.
Results
Here we present POSA, a pair of new perl objects that describe DNA sequence traces and  Phrap  contig assemblies in detail. Methods included in POSA include basecalling with quality scores (by  Phred ), contig assembly (by  Phrap ), generation of primer3 input and automated SNP annotation (by  PolyPhred ). Although easily implemented by users with only limited programming experience, these objects considerabily reduce hands-on analysis time compared to using the Staden package for extracting sequence information from raw sequencing files and for SNP discovery.PhrapPhredPhrapPolyPhredConclusions The POSA objects allow a flexible and easy design, implementation and usage of perl-based pipelines to handle and analyze DNA sequencing data, while requiring only minor programming skills.
Conclusions
The POSA objects allow a flexible and easy design, implementation and usage of perl-based pipelines to handle and analyze DNA sequencing data, while requiring only minor programming skills.

Background Today, many genetics laboratories have access to modern capillary DNA sequencing machines, such as the ABI PRISM 3100, 3700 or 3730. These machines generate vast amounts of raw sequence data with little user intervention. Consequently, the amount of data to be analyzed has expanded and the bottleneck now is the analysis capacity. Data analysis capacity can be increased by higher levels of automation. Investments in infrastructures to process the raw sequencing data in sophisticated but rigid pipelines might be justified for larger laboratories and larger projects but might be too costly for smaller laboratories. In addition, rigid pipelines are too impractical if different projects share run-time on the same machine while requiring (slightly) different analysis procedures (e.g. vector trimming is needed in plasmid sequencing, but needless when sequencing PCR products). Nucleotide sequence analysis can be performed with a variety of software tools. Although the number of console and web-based software tools has grown rapidly, the routine use of data input, output and storage may be inconvenient. Furthermore, for performing a series of analyses with different software tools, the sequence data need to be reformatted to the required data structure. Alternatively, sophisticated software suites that provide an integrated environment often are expensive. Several of the available software solutions are designed to facilitate automated DNA sequence analysis at low cost. Well-known solutions are the Staden package and Bioperl. The Staden Package contains  pregap4  and  gap4 , full-featured applications with an intuitive graphical user interface [ 1 ]. These programs handle a list of raw sequence reads method-by-method. The programs in the Staden Package typically require a degree of user intervention and thus hands-on time. Alternatively, Bioperl is a group of perl modules describing many genetics and genomics concepts [ 2 ]. For example, it includes the Bio::Seq::SeqWithQuality object that provides some of the basic properties of a raw sequence (i.e. its nucleotide sequence and quality values); the Bio::Tools::Primer3 object provides methods to work with primer3 input and output. However, to build custom DNA sequencing data pipelines, basic programming skills are needed to combine all these modules. Smaller laboratory sites, however, often need to implement versatile pipelines that can be adjusted for any research question that suits the project best; at the same time, they often also do not have dedicated programmers available. Although (semi-)automated procedures have been published by other groups [ 3 , 4 ], these are mostly focused on one particular pipeline and environment. Here, we present POSA, a set of two new perl objects (Read.pm and Contig.pm) that describe a raw sequence and a  Phrap  contig in detail and are easily implemented in perl-based pipelines. Because these objects provide building blocks for sequencing data analysis pipelines and the actual pipelines are built using perl-scripts, the POSA objects can be used in very diverse settings.
Background
Today, many genetics laboratories have access to modern capillary DNA sequencing machines, such as the ABI PRISM 3100, 3700 or 3730. These machines generate vast amounts of raw sequence data with little user intervention. Consequently, the amount of data to be analyzed has expanded and the bottleneck now is the analysis capacity. Data analysis capacity can be increased by higher levels of automation. Investments in infrastructures to process the raw sequencing data in sophisticated but rigid pipelines might be justified for larger laboratories and larger projects but might be too costly for smaller laboratories. In addition, rigid pipelines are too impractical if different projects share run-time on the same machine while requiring (slightly) different analysis procedures (e.g. vector trimming is needed in plasmid sequencing, but needless when sequencing PCR products).Nucleotide sequence analysis can be performed with a variety of software tools. Although the number of console and web-based software tools has grown rapidly, the routine use of data input, output and storage may be inconvenient. Furthermore, for performing a series of analyses with different software tools, the sequence data need to be reformatted to the required data structure. Alternatively, sophisticated software suites that provide an integrated environment often are expensive.Several of the available software solutions are designed to facilitate automated DNA sequence analysis at low cost. Well-known solutions are the Staden package and Bioperl.The Staden Package contains  pregap4  and  gap4 , full-featured applications with an intuitive graphical user interface [ 1 ]. These programs handle a list of raw sequence reads method-by-method. The programs in the Staden Package typically require a degree of user intervention and thus hands-on time.pregap4gap4Alternatively, Bioperl is a group of perl modules describing many genetics and genomics concepts [ 2 ]. For example, it includes the Bio::Seq::SeqWithQuality object that provides some of the basic properties of a raw sequence (i.e. its nucleotide sequence and quality values); the Bio::Tools::Primer3 object provides methods to work with primer3 input and output. However, to build custom DNA sequencing data pipelines, basic programming skills are needed to combine all these modules.Smaller laboratory sites, however, often need to implement versatile pipelines that can be adjusted for any research question that suits the project best; at the same time, they often also do not have dedicated programmers available.Although (semi-)automated procedures have been published by other groups [ 3 , 4 ], these are mostly focused on one particular pipeline and environment.Here, we present POSA, a set of two new perl objects (Read.pm and Contig.pm) that describe a raw sequence and a  Phrap  contig in detail and are easily implemented in perl-based pipelines. Because these objects provide building blocks for sequencing data analysis pipelines and the actual pipelines are built using perl-scripts, the POSA objects can be used in very diverse settings.PhrapImplementation The POSA source code is entirely coded in object-oriented Perl and consists of two objects: Read.pm and Contig.pm. In general, there are two important concepts associated with objects: methods (built-in procedures that can be performed on the object) and properties (describing some of the characteristics of the object). Most methods in the objects rely on the availability of other third-party programs (see Dependencies). Basically, POSA provides a wrapper around these programs and provides easy design and implementation of these programs in automated data analysis. The Read.pm object describes a DNA sequence trace and includes methods for data import from a variety of formats. It relies on  Phred  [ 5 , 6 ] for import and interpretation of raw sequence data. The original trace data are stored in binary ( scf ) format within the object. Other methods of Read.pm use modules of the Staden Package [ 1 ], such as  qclip  and  vector_clip  (if installed). Properties of Read.pm include e.g. the DNA sequence, quality scores, template and vector names and read direction. The Contig.pm object contains a method to assemble contigs of reads using the  Phrap  program [ 6 ]. The object typically is created based on a list of Read.pm objects and can be exported as alignments or screened for polymorphisms using  PolyPhred  [ 7 ]. Both the Read.pm and Contig.pm objects were designed with flexibility in mind. To allow a (virtually) unlimited amount of data to be processed, the perl scripts using these objects work sequence-by-sequence rather than method-by-method. Typically, these objects are called from straightforward perl scripts that outline the analysis steps to be performed. Example scripts using the objects can be accessed from the download website. An example of a script and output using the two objects to process a set of reads and annotate sequence polymorphisms from the assembled contig is given in Figure  1  and Figure  2 . Figure 1 A typical script that takes a list of ab1 files for analysis and assembly, reports the contig, and lists the putative SNP positions and SBE primers. Figure 2 Typical output as generated by the script in Figure 1. POSA was developed with perl 5.6.1 and tested on a SuSE linux 8.1 system for  abi -files from the ABI PRISM 377 DNA Sequencer and 3100 Genetic Analyzer (Applied Biosystems).  Phred ,  Phrap  and  PolyPhred  versions were 0.000925.c, 0.990329 and 4.05, respectively.
Implementation
The POSA source code is entirely coded in object-oriented Perl and consists of two objects: Read.pm and Contig.pm. In general, there are two important concepts associated with objects: methods (built-in procedures that can be performed on the object) and properties (describing some of the characteristics of the object). Most methods in the objects rely on the availability of other third-party programs (see Dependencies). Basically, POSA provides a wrapper around these programs and provides easy design and implementation of these programs in automated data analysis. The Read.pm object describes a DNA sequence trace and includes methods for data import from a variety of formats. It relies on  Phred  [ 5 , 6 ] for import and interpretation of raw sequence data. The original trace data are stored in binary ( scf ) format within the object. Other methods of Read.pm use modules of the Staden Package [ 1 ], such as  qclip  and  vector_clip  (if installed). Properties of Read.pm include e.g. the DNA sequence, quality scores, template and vector names and read direction.Phredscfqclipvector_clipThe Contig.pm object contains a method to assemble contigs of reads using the  Phrap  program [ 6 ]. The object typically is created based on a list of Read.pm objects and can be exported as alignments or screened for polymorphisms using  PolyPhred  [ 7 ].PhrapPolyPhredBoth the Read.pm and Contig.pm objects were designed with flexibility in mind. To allow a (virtually) unlimited amount of data to be processed, the perl scripts using these objects work sequence-by-sequence rather than method-by-method. Typically, these objects are called from straightforward perl scripts that outline the analysis steps to be performed. Example scripts using the objects can be accessed from the download website. An example of a script and output using the two objects to process a set of reads and annotate sequence polymorphisms from the assembled contig is given in Figure  1  and Figure  2 .POSA was developed with perl 5.6.1 and tested on a SuSE linux 8.1 system for  abi -files from the ABI PRISM 377 DNA Sequencer and 3100 Genetic Analyzer (Applied Biosystems).  Phred ,  Phrap  and  PolyPhred  versions were 0.000925.c, 0.990329 and 4.05, respectively.abiPhredPhrapPolyPhredResults and Discussion Functionality POSA provides an interface to design and implement automated sequencing data analysis. Sequencing data may be used in a variety of formats and originate from a variety of sources, e.g. data in  fasta, abi/ab1  or  scf  format retrieved from websites or from newly generated traces. In addition, new objects can be initiated from a text file or can be opened from previous stored objects. Subsequently, a variety of methods can be applied, including basecalling and assessment of quality codes (by  Phred ), quality clipping, vector clipping, screening for  E. coli  (or other) sequence, contig assembly (by  Phrap ) and analysis. The method  asPrimer3  can automatically generate input for the primer3 program [ 8 ] and is available in both objects. To facilitate automated SNP discovery or typing, the  SearchSnp s method will generate output as shown in Figure  2 . This method is based on the  PolyPhred  program and uses the 'rank' argument to set the stringency. Finally, data can be stored in objects, or in files in either  exp ,  scf  or  fasta  format. In addition, the data can be saved in a  primer3  input file to allow automated PCR primer design, or data can be saved in MIPE format (i.e. an XML format to store information on PCR experiments; see  ). Data on assembled contigs can be exported as a list of reads in a contig, as consensus sequence, as alignment, as putative SNPs, as SBE primers for SNP genotyping or as  gff  file for visualization in Gbrowse [ 9 ]. Combinations of the diversity of input, analysis and output options allow for a wide spectrum of possible implementations. Examples of possible analysis pipelines include (but are not limited to) BAC-end sequencing with automated PCR primer design for chromosome walking and resequencing of PCR products with SNP annotation either for SNP genotyping or for SNP discovery and SBE primer design. Examples of scripts are provided on the web site  . Performance Although it represents only one of the numerous possible POSA-based pipelines, performance of POSA was validated by comparison of SNP discovery with the data after analysis using the Staden package. To do so, 5 PCR products were resequenced from a panel of 16 individuals to identify SNPs. Manual editing using the Staden Package revealed a total of 48 SNPs. Automated analysis using POSA also yielded a total of 48 SNPs with SNP ranking codes 1-3. Together, 41 SNPs were assigned with both manual editing and POSA. The remaining 7 SNPs assigned in manual editing corresponded to SNPs with ranks 4-6 in the POSA analysis. The 7 SNPs that were only assigned by POSA all originated from regions with lower quality sequence. While analysis time was reduced from several hours to a few minutes, POSA assigned SNPs in a way that was highly consistent with manual editing. This was expected because POSA provides options for an integrated analysis pipeline, but essentially is a wrapper around well-established sequence analysis tools like  Phred ,  Phrap  and  PolyPhred . Intended use and benefits for users POSA is a tool that provides easy and highly automated DNA sequence and contig data analysis using popular analysis tools. Automated sequence analysis reduces analysis time from several hours to a few minutes. Pipelines can easily be expanded or adapted through perl scripts. Writing or altering the perl scripts is straightforward to do for people with only basic computer skills, although more linux/unix experience might be necessary to install the required software (e.g.  Phred  and  Phrap ). Overall, this guaranties easy implementation of highly automated quality pipelines in combination with high flexibility in setup and design. The perl objects are released under an open source license, allowing code improvements by the user community.
Results and Discussion
Functionality POSA provides an interface to design and implement automated sequencing data analysis. Sequencing data may be used in a variety of formats and originate from a variety of sources, e.g. data in  fasta, abi/ab1  or  scf  format retrieved from websites or from newly generated traces. In addition, new objects can be initiated from a text file or can be opened from previous stored objects. Subsequently, a variety of methods can be applied, including basecalling and assessment of quality codes (by  Phred ), quality clipping, vector clipping, screening for  E. coli  (or other) sequence, contig assembly (by  Phrap ) and analysis. The method  asPrimer3  can automatically generate input for the primer3 program [ 8 ] and is available in both objects. To facilitate automated SNP discovery or typing, the  SearchSnp s method will generate output as shown in Figure  2 . This method is based on the  PolyPhred  program and uses the 'rank' argument to set the stringency. Finally, data can be stored in objects, or in files in either  exp ,  scf  or  fasta  format. In addition, the data can be saved in a  primer3  input file to allow automated PCR primer design, or data can be saved in MIPE format (i.e. an XML format to store information on PCR experiments; see  ). Data on assembled contigs can be exported as a list of reads in a contig, as consensus sequence, as alignment, as putative SNPs, as SBE primers for SNP genotyping or as  gff  file for visualization in Gbrowse [ 9 ]. Combinations of the diversity of input, analysis and output options allow for a wide spectrum of possible implementations. Examples of possible analysis pipelines include (but are not limited to) BAC-end sequencing with automated PCR primer design for chromosome walking and resequencing of PCR products with SNP annotation either for SNP genotyping or for SNP discovery and SBE primer design. Examples of scripts are provided on the web site  .
Functionality
POSA provides an interface to design and implement automated sequencing data analysis. Sequencing data may be used in a variety of formats and originate from a variety of sources, e.g. data in  fasta, abi/ab1  or  scf  format retrieved from websites or from newly generated traces. In addition, new objects can be initiated from a text file or can be opened from previous stored objects. Subsequently, a variety of methods can be applied, including basecalling and assessment of quality codes (by  Phred ), quality clipping, vector clipping, screening for  E. coli  (or other) sequence, contig assembly (by  Phrap ) and analysis. The method  asPrimer3  can automatically generate input for the primer3 program [ 8 ] and is available in both objects. To facilitate automated SNP discovery or typing, the  SearchSnp s method will generate output as shown in Figure  2 . This method is based on the  PolyPhred  program and uses the 'rank' argument to set the stringency.fasta, abi/ab1scfPhredE. coliPhrapasPrimer3SearchSnpPolyPhredFinally, data can be stored in objects, or in files in either  exp ,  scf  or  fasta  format. In addition, the data can be saved in a  primer3  input file to allow automated PCR primer design, or data can be saved in MIPE format (i.e. an XML format to store information on PCR experiments; see  ). Data on assembled contigs can be exported as a list of reads in a contig, as consensus sequence, as alignment, as putative SNPs, as SBE primers for SNP genotyping or as  gff  file for visualization in Gbrowse [ 9 ]. Combinations of the diversity of input, analysis and output options allow for a wide spectrum of possible implementations. Examples of possible analysis pipelines include (but are not limited to) BAC-end sequencing with automated PCR primer design for chromosome walking and resequencing of PCR products with SNP annotation either for SNP genotyping or for SNP discovery and SBE primer design. Examples of scripts are provided on the web site  .expscffastaprimer3gffPerformance Although it represents only one of the numerous possible POSA-based pipelines, performance of POSA was validated by comparison of SNP discovery with the data after analysis using the Staden package. To do so, 5 PCR products were resequenced from a panel of 16 individuals to identify SNPs. Manual editing using the Staden Package revealed a total of 48 SNPs. Automated analysis using POSA also yielded a total of 48 SNPs with SNP ranking codes 1-3. Together, 41 SNPs were assigned with both manual editing and POSA. The remaining 7 SNPs assigned in manual editing corresponded to SNPs with ranks 4-6 in the POSA analysis. The 7 SNPs that were only assigned by POSA all originated from regions with lower quality sequence. While analysis time was reduced from several hours to a few minutes, POSA assigned SNPs in a way that was highly consistent with manual editing. This was expected because POSA provides options for an integrated analysis pipeline, but essentially is a wrapper around well-established sequence analysis tools like  Phred ,  Phrap  and  PolyPhred .
Performance
Although it represents only one of the numerous possible POSA-based pipelines, performance of POSA was validated by comparison of SNP discovery with the data after analysis using the Staden package. To do so, 5 PCR products were resequenced from a panel of 16 individuals to identify SNPs. Manual editing using the Staden Package revealed a total of 48 SNPs. Automated analysis using POSA also yielded a total of 48 SNPs with SNP ranking codes 1-3. Together, 41 SNPs were assigned with both manual editing and POSA. The remaining 7 SNPs assigned in manual editing corresponded to SNPs with ranks 4-6 in the POSA analysis. The 7 SNPs that were only assigned by POSA all originated from regions with lower quality sequence. While analysis time was reduced from several hours to a few minutes, POSA assigned SNPs in a way that was highly consistent with manual editing. This was expected because POSA provides options for an integrated analysis pipeline, but essentially is a wrapper around well-established sequence analysis tools like  Phred ,  Phrap  and  PolyPhred .PhredPhrapPolyPhredIntended use and benefits for users POSA is a tool that provides easy and highly automated DNA sequence and contig data analysis using popular analysis tools. Automated sequence analysis reduces analysis time from several hours to a few minutes. Pipelines can easily be expanded or adapted through perl scripts. Writing or altering the perl scripts is straightforward to do for people with only basic computer skills, although more linux/unix experience might be necessary to install the required software (e.g.  Phred  and  Phrap ). Overall, this guaranties easy implementation of highly automated quality pipelines in combination with high flexibility in setup and design. The perl objects are released under an open source license, allowing code improvements by the user community.
Intended use and benefits for users
POSA is a tool that provides easy and highly automated DNA sequence and contig data analysis using popular analysis tools. Automated sequence analysis reduces analysis time from several hours to a few minutes. Pipelines can easily be expanded or adapted through perl scripts. Writing or altering the perl scripts is straightforward to do for people with only basic computer skills, although more linux/unix experience might be necessary to install the required software (e.g.  Phred  and  Phrap ). Overall, this guaranties easy implementation of highly automated quality pipelines in combination with high flexibility in setup and design.PhredPhrapThe perl objects are released under an open source license, allowing code improvements by the user community.Conclusions POSA describes a DNA sequence read and a  Phrap  contig assembly in detail. These objects allow a flexible and easy setup of perl-based pipelines to handle DNA sequencing data, including generating primer3 input and automated SNP discovery, while requiring only little programming skills.
Conclusions
POSA describes a DNA sequence read and a  Phrap  contig assembly in detail. These objects allow a flexible and easy setup of perl-based pipelines to handle DNA sequencing data, including generating primer3 input and automated SNP discovery, while requiring only little programming skills.PhrapAvailability and requirements Project name: POSA Project home page:  Operating system: platform independent Programming language: Perl 5.6.1 License: Artistic License (Open Source) Requirements • Perl modules: Carp; Statistics::Descriptive; Tie::File; IO::File; POSIX:: Storable. • Phred, Phrap, PolyPhred • Pregap4, gap4 (Staden Package (optional)) • Primer3 (optional)
Availability and requirements
Project name: POSAProject home page:Operating system: platform independent Programming language: Perl 5.6.1License: Artistic License (Open Source)Requirements • Perl modules: Carp; Statistics::Descriptive; Tie::File; IO::File; POSIX:: Storable. • Phred, Phrap, PolyPhred • Pregap4, gap4 (Staden Package (optional)) • Primer3 (optional)
Requirements
• Perl modules: Carp; Statistics::Descriptive; Tie::File; IO::File; POSIX:: Storable.• Phred, Phrap, PolyPhred• Pregap4, gap4 (Staden Package (optional))• Primer3 (optional)List of abbreviations POSA Perl objects for DNA sequencing data analysis SNP single nucleotide polymorphism abi/ab1ABI PRISM trace file format scf standard chromatogram format exp experiment file format, developed by Staden (see  ) MIPE minimum information on PCR experiments (see  ) BAC bacterial artificial chromosome PCR polymerase chain reaction SBE single base extension
List of abbreviations
POSA Perl objects for DNA sequencing data analysisSNP single nucleotide polymorphismabi/ab1ABI PRISM trace file formatscf standard chromatogram formatexp experiment file format, developed by Staden (see  )MIPE minimum information on PCR experiments (see  )BAC bacterial artificial chromosomePCR polymerase chain reactionSBE single base extensionAuthors' contributions JA programmed the Perl objects and participated in development of concept and architecture of the software; BJ participated in development of concept and architecture and wrote the manuscript; MG supervised the project. All authors read and approved the final manuscript.
Authors' contributions
JA programmed the Perl objects and participated in development of concept and architecture of the software; BJ participated in development of concept and architecture and wrote the manuscript; MG supervised the project. All authors read and approved the final manuscript.