# CBMDB: A Database for Accessing, Analyzing, and Mining CBM Information
## 3 Results and Discussion
### Analysis Tools  
The CBMDB integrates five web-based tools for performing further analyses, including sequence similarity searches, pairwise alignment, multiple sequence alignment, structure similarity searches, domain annotation, and phylogenetic visualization (Figure 2a). Sequence similarity searches and pairwise alignment are performed by the \"blastp\" or \"blastv\" search against sequences deposited in the CBMDB and searched for sequences in the database that have a high similarity with the query sequence; these are then extracted (Figure 2b). Sequence similarity searches and pairwise alignments are implemented using \"blastp\" and \"blastx\", two search applications in the sequence alignment software BLAST+ [14]. \"Blastp\" is a general amino acid sequence identification and similarity search application. It is suitable for aligning protein sequences in protein databases. \"Blastx\" is an application for identifying potential protein products encoded by a nucleotide query. It is suitable for aligning nucleic acid sequences in protein databases; therefore, when the query sequence entered by the user is a nucleic acid sequence, the user should select the blastx option for alignment. Both of these applications are based on the Needleman-Wunsch algorithm [19], which is an algorithm used in bioinformatics to align protein or nucleotide sequences. The algorithm assigns a score to every possible alignment and finds all possible alignments that have the highest score. In the Structure Similarity Search module, these sequences are applied as a parameter of the PDB application programming interface (API) for searching the structural information  
Figure 2: Tools and output pages of the CBMDB. (**a**) Pages for each analysis tool, including sequence similarity alignment, pairwise alignment, multiple sequence alignment, structure similarity searches, domain annotation, and phylogenetic visualization; (**b**) analysis output pages for each analysis tool. of the protein with the highest sequence similarity to the query sequence (Figure 2b). PDB API is a web application programming interface [17]. A client device can send a request as a Hypertext Transfer Protocol (HTTP) request via web application programming interfaces and receives a response message, usually in JavaScript object notation (JSON) or extensible markup language (XML) format. The PDB API can provide access to information about PDB structures. The multiple sequence alignment tool is used to align three or more sequences together in a computationally efficient and accurate manner. Sequences in FASTA format can be entered directly into the box on the web page. Additionally, files containing valid sequences in FASTA format can be uploaded and used as the input for multiple sequence alignments (Figure 2b). Multiple sequence alignments are achieved with the Clustal Omega package, which can align virtually any number of protein sequences quickly and accurately. Clustal Omega uses a modified version of mBed [20] to produce guide trees. The vectors generated by the mBed method are then clustered extremely fast (compared to standard methods such as K-Means or UPGMA), and then, Clustal Omega computes the comparison using the very accurate HHalign package [21]. The Domain Annotation module, which is based on the algorithmic principles of hidden Markov models, is applied to annotate and analyze domains in proteins. To annotate CBM and other domains in the query sequence, the module uses the hmmscan program in the HMMER package to compare query sequences with the CBMDB and PFAM databases. The input data required are amino acid sequences in FASTA format. The type and scoring of the comparison results for these domains are then obtained (Figure 2b). Hidden Markov models (HMMs) are Markov chains with implicitly unknown parameters [22]. HMMs consist of a finite number of states, each of which appears with a certain probability, and the transitions between states are determined by a table of transition probabilities, each of which can produce an observed state.