BIRD Data Access Protocol

From Wikili
Revision as of 11:01, 26 May 2008 by Dkieffer (talk | contribs) (API JAVA - BIRDQL Client)
Jump to: navigation, search

BIRD Data Access Protocol

Data Browsing at Décrypthon Data Center

Database content can be browsed from BIRD System WEB (under construction) Node ENS-Lyon: [1] Node IGBMC: [2]

Data Selection by BIRDQL Service

Data can also be selected with BIRDQL queries; Expert users can however modify queries by hand. Three query service are available:

  1. curl -F upload=@your_bird.ql 'http://bird.u-strasbg.fr:8080/bird/bsearch?service=birdql'
    
  2. http://bird.u-strasbg.fr:8080/bird/bsearch?service=birdql&query=your_birdql
    
    • Example:
      •  http://bird.u-strasbg.fr:8080/bird/bsearch?service=birdql&query=ID * DB Uniprot--WH DE contains "histone"--LM 10--FD AC,DE--FM FLAT
        
      • http://bird.u-strasbg.fr:8080/bird/bsearch?service=birdql&query=ID * DB Uniprot--WH DE contains "Helianthinin"--LM 10--FM FASTA
        
  3. BIRD-QL Editor (in pres).
    • User can use this engine for intensive computation, download [birdql cmd].
    • Till then you can test your queries on the star3-8 in the program /groupes/poch/dkieffer/test_tools/BirdQlConsol/BirdQlConsol.sh ( or download here).

Simple Services-Bank ID

Service : http://bird.u-strasbg.fr:8080/bird/bsearch?db=<database>&accession=<ac or id>&field=<DE,OS..> &format=<fasta/flat>

Example 1: get EST

     http://bird.u-strasbg.fr:8080/bird/bsearch?db=gbest&accession=Cj133605&field=DE,OS,OC,TISSUE_TYPE,DEV_STAGE

Example 2: get Protein :

     http://bird.u-strasbg.fr:8080/bird/bsearch?db=uniprot&accession=Q23456

Example 3: get PDB :

    http://bird.u-strasbg.fr:8080/bird/bsearch?db=pdb&accession=1XDS

Example 4: get Fasta :

    http://bird.u-strasbg.fr:8080/bird/bsearch?db=pdb&accession=1XDS&format=fasta

WEB Server

 under construction:  http://bird.u-strasbg.fr:9080/BirdSystem/HomePage.do   (firefox)

API JAVA - BIRDQL Client

The API is an Interface of programming which defines the way in which a data-processing component can communicate with another. The API Java of BIRD contains useful reusable classes by external modules of access to the databases. It has functions (methods) returning the data selected under various formats. The user of high-level can use the API to develop new functionalities exploiting of the data. It can also be used to make personalized graphic interfaces and Web Services. The codes Java below illustrate the exploitation of BIRD API. BIRDQL Engine doesn’t return data but just OIDs of selected records. The content of the record must then be searched by the API.

API BIRD

Import org.igbmc.bird.* Class ExampleUtilisationAPI {

 InterfactDB birddb  = new InterfaceDB(“my-bird”)
 // BIRD-QL
     String birdql = ” ID * DB UniProt
                     --WH OS contains "Mus mus"
                     --WH OC contains "Eukaryota" & not "Metazoa"
                     --FM OID”
 Vector OID=birddb.queryengine.run(birdql);  
 For { i=1 to OID.size()   }
  { // result treatment
    UniProt obj=(UniProt)birddb.getObject(OID[i]);
            ….
  }


BIRDQL CLient

java org.igbmc.bird.datadiscovery.BirdQLClient birdql nameServer outFile

@birdql  : file name contains your bird-ql query

@nameServer: name of BIRD Server (d1.crihan.fr or bird.u-strasbg.fr)

@outFile  : file name, the result will be print to this file

BirdHttpClient

A fonctional API to use Bird with Java by HTTP. Available by subversion in svn/dkieffer/BirdHTTPClient.