Version 27 (modified by akinjo, 10 years ago)


Description of services

  • DDBJ
  • PDBj
  • KEGG
  • CBRC


  • data retrieve
  • sequence search and analysis
  • derived DBs
  • other DBs



first concentrate on sequence + alignment

functional annotations

a given structure with unknown function -> BLAST at DDBJ / KEGG -> no homologs then -> struct-navi

  • accession number -> fasta
  • PDB ID <-> KEGG GENES ID get_linkdb_between_databases(string:from_db, string:to_db, int:offset, int:limit)

proposed workflow(s)

functional (or structural) annotation of a protein sequence.

Let's call this "funcanot" workflow.

let hits = BLAST_DAD(fasta) @DDBJ

if func_known(hits) then

send_to_KEGG( hits ) ;; annotation obtained from KEGG


let new_hits = BLAST_PDBj(fasta): @DDBJ

if exists(new_hits) then

foreach hit in new_hits do

let shits = struct_navi(hit) :@PDBj

if exists(shits) then

send_to_KEGG( shits );; annotation obtained from KEGG

input amino acid sequence with unknown function
outputfunctionally annotated homologs


  • SOAP isn't good at huge data (e.g., big XML file) <-> No problem with REST.
  • REST requires more coding on the client side. User must handle output data (XML or flat text...) <-> SOAP can give you the object right away.
  • REST cannot do complicated stuffs? (no datatypes, only 4 verbs, etc.)
  • No language supports the full SOAP spec.
  • Only a few languages have SOAP libraries.

Prototyping funcanot

finally got to real work.... (14:00; 2008-02-12) Prototyping using Taverna.

  • Taverna can be used with REST-based WS? -> YES!

Continuing funcanot 2008-02-13

  • Taverna cannot really handle conditional branches: workflow just flows but not fork.
  • added simple list format option to strnavi REST API.
  • Have a Moby lecture?

Continuing funcanot 2008-02-14

Actually, 2onkI has no structural homologs but for some reason, 2onkI domains 1 and 2 have hits. Why?