Users of Cytoscape can now natively retrieve interaction networks from STRING !
During a recent workshop at the EBI, a common web service API to query interaction databases (called PSICQUIC) was finalized. Once all interaction databases have implemented this interface, it will be possible to use a single client (a Cytoscape plugin for example) to interact with all of them. We are committed to this initiative, and look forward to the implementations.
In the interim, we have decided to also release a small, custom-made plugin for Cytoscape called StringWSClient, which interacts only with the STRING database.
This allows us to offer users the full range of features that the STRING API allows (e.g. to show all available species, or to resolve ambiguous inputs). Version 1.0 (1.1) supports only the import of interaction networks; upcoming versions will be able to extend existing networks, filter them using STRING specific criteria, etc. The 1.0 version works only with Cytoscape 2.6.1, and 1.1 was released to support the whole 2.6.x branch.
To install it, fire up Cytoscape, open Plugins/Manage Plugins dialog and pick StringWSClient v1.0 from "Network and Attribute I/O" section. You may have to restart Cytoscape to load the plugin. See Cytoscape documentation for details.
Once you have the plugin installed, open File/Import/Network from web services... dialog and
pick the String plugin.
The plugin resembles STRING's web user interface: a field to type queries and the organisms selector. In the background, the query is sent to the STRING database and the resulting interaction network is fetched and displayed.
We're looking forward to your feedback !
Milan Simonovic and the STRING team.
Tuesday, July 21, 2009
STRING Cytoscape plugin
Wednesday, June 24, 2009
New Release of STRING: Version 8.1
We are happy to announce that STRING 8.1 has just been released. We have updated the interaction data, fixed a number of bugs and greatly improved the web interface. As always, we keep older versions around to guarantee reproducibility of earlier work (see here).
The interactive network viewer has been re-implemented (it's now based on Adobe Flash version 10), and it gives users the new opportunity to "play around" with the network while keeping the same look and feel as previously.
The proteins in the network can now also be clustered, 'live', via two different methods: k-means and markov chain clustering. The topology can be relaxed after clustering, or in real time by turning on "relaxation" and "cooling". The graph layouting is done by force-directed placement (see here), and the cooling is done by gradually lowering the relaxation variable hat determines the strength of node movements, to zero. Of course, this is merely a first version of the interactive viewer and future versions may well have additional features (in particular in case our users have specific requests).
We have also extended the protein structure previews. These are now not only based on PDB, but we also incorporate homology models from the SWISS-MODEL Repository. And, structure previews are finally shown in the proper context of the protein's domain architecture.
Lastly, we fixed several 'known issues' (i.e., bugs) - such as missing minor chromosomes for some species, and viewer problems with the textmining predictions.
To start playing with the new release, visit STRING 8.1 - and please don't hesitate to send us any feedback, criticism or suggestions...
Have Fun !
The STRING team
Thursday, February 19, 2009
Known Issues in STRING version 8.0
For each STRING version so far, only when we released it to the users did we find the last remaining bugs. Users often email us with their problems, and sometimes we are indeed to blame because there is an error. This is good (we think), because each bug found is a bug fixed - albeit only in the next release, usually.
So far, this is what we have found in release 8.0:
a) Some of our text-mining links do not show up in the corresponding evidence viewer. They are still correct, but the underlying text cannot be recovered and shown, for technical reasons. This happens because we developed a new feature that recognizes generic 'family' names for gene groups (like 'WNTs' for the various, homologous Wnt proteins). Within reasonable limits, such ambiguous names are now expanded to the individual protein members. However, we forgot to update the code of the text-viewer to reflect this ... we will do so in the next version.
b) Unfortunately, some of the prokaryotic genomes in this release are incomplete - in 43 cases we're missing a second (or third) minor chromosome. This was caused by a misunderstanding when parsing files from the RefSeq database: RefSeq provides an overview file that only lists one chromosome for each prokaryote, and we mistook that file for the full listing. Again, this will be fixed in the next release of STRING (on which we are already working). Obviously, we're now writing a new entry in our test suite that will prevent this type of error in the future - we will be checking the final gene counts of all organisms for consistency and also compare these counts against an external reference. Below is a list of affected organisms in the current release; if you're working with any of these, we recommend you continue using version 7.1 of STRING for now.
Luckily, no major model organisms are affected !!
Agrobacterium tumefaciens str. C58
Brucella abortus biovar 1 str. 9-941
Brucella melitensis 16M
Brucella melitensis biovar Abortus 2308
Brucella ovis ATCC 25840
Brucella suis 1330
Burkholderia ambifaria AMMD
Burkholderia cenocepacia AU 1054
Burkholderia cenocepacia HI2424
Burkholderia mallei ATCC 23344
Burkholderia mallei NCTC 10229
Burkholderia mallei NCTC 10247
Burkholderia mallei SAVP1
Burkholderia pseudomallei 1106a
Burkholderia pseudomallei 1710b
Burkholderia pseudomallei 668
Burkholderia pseudomallei K96243
Burkholderia sp. 383
Burkholderia thailandensis E264
Burkholderia vietnamiensis G4
Burkholderia xenovorans LB400
Deinococcus radiodurans R1
Haloarcula marismortui ATCC 43049
Leptospira borgpetersenii serovar Hardjo-bovis JB197
Leptospira borgpetersenii serovar Hardjo-bovis L550
Leptospira interrogans serovar Copenhageni str. Fiocruz L1-130
Leptospira interrogans serovar Lai str. 56601
Ochrobactrum anthropi ATCC 49188
Paracoccus denitrificans PD1222
Photobacterium profundum SS9
Pseudoalteromonas haloplanktis TAC125
Ralstonia eutropha H16
Ralstonia eutropha JMP134
Ralstonia metallidurans CH34
Rhodobacter sphaeroides 2.4.1
Rhodobacter sphaeroides ATCC 17029
Vibrio cholerae O1 biovar eltor str. N16961
Vibrio cholerae O395
Vibrio fischeri ES114
Vibrio harveyi ATCC BAA-1116
Vibrio parahaemolyticus RIMD 2210633
Vibrio vulnificus CMCP6
Vibrio vulnificus YJ016
That's it for known issues so far. But, do keep those emails coming - the feedback is very valuable !!
Wednesday, January 14, 2009
New Year - New Major Release
Looks like 2009 will bring a lot of changes for both STRING and STITCH - and to lead the way, STRING has now been upgraded to version 8.0 !
This has been a major upgrade, and it has been some time in the making. We have almost doubled the number of organisms (again), and re-imported all the various pathways, protein-complexes and text-collections. We've also worked a lot behind the scenes, solidifying the API, further automating our data import and updating the way we display orthologous groups, to name just a few examples. All this has been possible only, really, because of our new sponsor - the Swiss Institute of Bioinformatics (SIB). Thanks guys !
More info about this new release is also available from here.
Monday, July 21, 2008
High-resolution images
We recently implemented a way to export high-res images (300 dpi, click the image below to see an example). This feature will go public with STRING 8 / STITCH 2, but if you're now using STRING or STITCH and want to prepare an image for publication, please get in touch with us (mkuhn embl de) and we can send you the image.
Monday, March 3, 2008
Scope of the API and current plans
When I announced the API, I didn't devote much space to the intended scope of the API. To make things clearer:
- REST/SOAP: We'll only provide a REST API plus a Soaplab2 wrapper for Taverna. Perhaps later dedicated programmers can add a SOAP interface if the demand is sufficiently high.
- Queries for bulk data: For implementation and licensing reasons, we'll only provide methods to query by individual items, just like on the web site. If you need access to bulk data, you can download it.
- Miscellaneous records: We want to add more query options later for retrieving information from the freely available files. For example: What are the synonyms of this item? To which orthologous group does this protein belong?
Tuesday, February 19, 2008
We have an API!
I went to the BioHackathon 2008 in Tokyo and worked on an API for STRING and STITCH. If you think about using STRING or STITCH with an API, and miss features, please get in touch with us either via the comments or e-mail (e.g. mkuhn//embl.de).
Here's what we have to offer so far:
REST interface
The URL patterns are: http://stitch.embl.de/api/[format]
http://string.embl.de/api/[format]
Possible formats:
- tsv: tab-separated values, with a header line
- tsv-no-header: as above, but no header
- json: JSON format either as a list of hashes/dictionaries, or as a plain list (if there is only one value to be returned per record)
- psi-mi: the interaction network is available in PSI-MI 2.5 XML format
- psi-mi-tab: there is also a tab-delimited form, modeled after the IntAct specification. This is easier to parse, but contains less information than the XML format.
- url: return the URL of the network image
- abstracts: return a list of abstracts that contain the query item
- abstractsList: return a list of abstracts that contain any of the query items
- interactions: return an interaction network in PSI-MI 2.5 format (PSI-MI is currently the only format for interactions. Perhaps the PSI-MI tab-delimited form would also make sense? I don't know how a JSON form should look like.)
- interactionsList: same as above, but for list of identifiers
- interactors: return a list of interaction partners for the query item
- interactorsList: return a list of interaction partners for any of the query item
- resolve: return the list of items that match (in name or identifier) the query item
- network / networkList: in conjunction with the "url" format, return the URL to the network
Examples
To find out which proteins match the description "dopamine receptor" in human, you can use this query:
http://stitch.embl.de/api/tsv/resolve?identifier=dopamine%20receptor&species=9606
http://string.embl.de/api/tsv/resolve?identifier=dopamine%20receptor&species=9606
This gives you a lot of additional info. If you just want to get the list of STRING identifiers, you can alter the query a bit:
http://stitch.embl.de/api/tsv-no-header/resolve?identifier=dopamine%20receptor&species=9606&format=only-ids
http://string.embl.de/api/tsv-no-header/resolve?identifier=dopamine%20receptor&species=9606&format=only-ids
Now, you'll only receive a bare list of ids that you could pipe into other STRING API functions.
To illustrate the difference between normal and "list" queries:
http://stitch.embl.de/api/tsv/interactors?identifier=DRD1_HUMAN
http://stitch.embl.de/api/tsv/interactorsList?identifiers=DRD1_HUMAN%0DDRD2_HUMAN
http://string.embl.de/api/tsv/interactors?identifier=DRD1_HUMAN
http://string.embl.de/api/tsv/interactorsList?identifiers=DRD1_HUMAN%0DDRD2_HUMAN
In the second case, the identifiers parameter contains a list of items separated by new line characters (%0A or %0D).
SOAP / Taverna
In a separate post, I've described an example Taverna workflow. As for SOAP integration, I hope that the Soaplab interface works...
Obligatory beta notice
As all good things these days, this is still in beta (internally, everything in fact runs on our beta server, I'm just making it accessible via the normal STITCH domain to expose it to the web). Therefore, the API might change, be down, ... until STITCH 2 / STRING 8 comes out.
Updates
03.03.2008: Added clarification – PSI-MI is currently the only interactions format.
04.03.2008: Fixed typo – it's "interactorsList"
12.03.2008: Add psi-mi-tab format
19.05.2008: Add STRING API (with same specification)
08.07.2008: Add API for generating network images
16.03.2009: Enabled interactionsList
Wednesday, February 6, 2008
Mea culpa: missing links from PDB
I intended to extract protein–chemical links from the PDB (and we wrote this in the paper), but somehow I didn't quite finish the import scripts before we finalized STITCH 1.0. I am sorry about this, and apologize if you are missing interactions.