D356 Nucleic Acids Research, 2007, Vol. 35, Database issue Table 1. Methods available in the Data Retrieval Service Methods getDatabases getProteinSequencesbyDb getReportbyDbCodeandContig areCodesUniqueWithinDb getRawHitsbyDbCodeandMethod getRawHitsbyDbCodeContigandMethod getProteinCodesbyDb getProteinCodesandContigsbyDb getMethodsbyDb Description Returns a string array of the pedant2 databases available for data retrieval Takes the database name as a parameter and returns all protein codes and sequences in the db as a 2D string array Takes the database name, protein code and contig as parameters and returns the report data as a ReportItem bean Takes the database name as a parameter and returns a Boolean Takes the database name, protein code and method as parameters and returns the code and raw output for that method as a 2D string array Takes the database name, protein code, contig and method as parameters and returns the code and raw output for that method as a 2D string array Takes the database name as a parameter and returns the protein codes as a string array Takes the database name as a parameter and returns the protein codes and contigs as a 2D string array Takes the database name as a parameter and returns the available methods as a string array programs interact with the Web Service using messages based on the Simple Object Access Protocol (SOAP). As with WSDL, SOAP messages are XML based, permitting the interoperability of Web Services. For the transport layer itself, Web Services typically use the Hypertext Trans- fer Protocol (HTTP), preventing problems sending the SOAP messages through ﬁrewalls. Bioinformatics users can avoid keeping local copies of databases and software and use a client program instead to access remote databases and software via Web Services. The PEDANT Web Service allows the user to query the data- base in an automated way from client programs and work- ﬂows. We provide a number of data retrieval methods in our Data Retrieval Service (Table 1). For example, to fetch the functional and structural annotations of a particular pro- tein, the client program can call the getReportbyDbCodeand- Contig method. All these methods are described in the WSDL ﬁle: http://mips.gsf.de/webservice/pedant2retrieval/services/ DataRetrievalService?wsdl. Currently this Web Service only retrieves data from PEDANT2 analyses; the PEDANT3 Web Service is in pre- paration. The raw (unparsed) output from various bioinfor- matics methods can be obtained using the methods getRawHitsbyDbCodeandMethod and getRawHitsbyDbCode- ContigandMethod. For completely sequenced genomes, a protein can be uniquely identiﬁed with just the database name and protein code. For unﬁnished genomes, where the proteins were predicted using Orpheus (6), it is necessary to provide the database name, protein code and contig name to uniquely identify a protein. A list of the bioinformatics methods available for each genome can be obtained by call- ing the getMethodsbyDb method. We have generated a java client program using the Apache Axis software (WSDL2Java) which has an example class demonstrating how to make calls to the DataRetrievalService. The jar ﬁle is available at http://pedant.gsf.de/webservices. jsp. We have also included PEDANT Web Service client functionality in our PROMPT workbench as a use case to demonstrate the various advantages of the Web Services. PROMPT is a standalone application which enables a user to compare protein sequence sets, revealing statistically sig- niﬁcant differences in their annotation features (7); (http:// webclu.bio.wzw.tum.de/prompt). Improving PEDANT annotation quality by data mining Genome annotation produced by automatic pipelines such as PEDANT is notoriously prone to various kinds of errors (8). While every effort is being made to select the most reli- able, carefully benchmarked bioinformatics tools and to avoid spurious similarity hits by setting conservative similarity thresholds, automatically produced function predictions are still not on a par with the results of manual curation of sequence data in high-quality databases such as UniProt (2). We estimate that only 5% of all known proteins have been manually annotated and, given the progress in superfast sequencing technologies (9), it is becoming increasingly clear that the overwhelming majority of sequence data will not be processed by human experts. We have recently developed a technology to improve the quality of automatically generated annotation using data min- ing techniques (10). The entire body of annotation available in the PEDANT database can be considered as a collection of records of variable length, one for each gene product, con- taining functional and structural attributes, such as predicted functional categories, domain assignments and the like. Using a large collection of PEDANT records as input, we apply an unsupervised learning algorithm called association rule mining (11) to derive protein features that occur frequently together. Speciﬁcally, implications in the form ‘A&B > C’ are derived which mean that the majority of proteins possess- ing features A and B also possess C. Some rules have the strength 1.0 which means that they are always fulﬁlled, while other rules may be true only in a certain percentage of cases. An exception from a reasonably strong rule will have features A and B, but not C, which may be caused either by over-annotation (features A or B ascribed erroneously), or by under-annotation (feature C missed). We have shown that 70% of exceptions from strong asso- ciation rules found in PEDANT data point to incompatible or missing annotation and thus may be instrumental in identify- ing annotation errors. However, since strong association rules detect not annotation errors as such but only incompatible feature combinations, it is not possible to automatically correct errors. Instead, we highlight suspicious features and add the features which were putatively missed in a separate section at the bottom of the report page (Figure 1). In a recent pilot project we applied this approach to analyze the PEDANT annotation of 10 model genomes—Arabidopsis thaliana, Aeropyrum pernix, Bacillus subtilis, Escherichia coli, Helicobacter pylori, Mycobacterium tuberculosis, Parachlamydia, Saccharomyces cerevisiae, Synechocystis and Thermoplasma acidophilum—containing a total of 55 123 protein entries. In the course of 2007 we intend on providing rule-based correction for all PEDANT genomes.