TransgeneOme import

From WormBaseWiki
Revision as of 13:20, 17 March 2016 by Janosch (talk | contribs) (→‎Transgeneome DB Data model: added info about the genes)
Jump to navigationJump to search

WormBase will import expression data (Images, constructs, and annotations) from the TransgeneOme project -Sarov et al., Cell, 2012. WBPaper00041419. The original data is always present on the Max Planck Institute (MPI) website. WormBase will fetch the data periodically (daily? Release-basis?) to have the collection up-to-date. WormBase does not provide means of annotating the patterns, hence community curation will happen on the TransgeneOme MPI site.

Data we want to import

What we want to have for each gene that has <Explore localization> data, is a table with Gene Strain image_name life_stage Annotations_by Anatomy_annotations Subcellular_annotations Construct

Ideally a tab delimited file with pipe separated entries for multiple entries, for example: WBGene00000095\tOP124\tL4larva\tMihail Sarov\tintestine|gonadal primordium|head\tnucleus\t7842083679062579 H01

JSON format is also good

Image format

We would like to have the images in JPG format

Image naming convention

  • Daniela: Do the images have permanent IDs? If you replace the image with a higher resolution version, does that get a new ID that gets assigned to the gene while the previous image ID association gets removed?
  • Stephan: The imaging works in our DB like this. We have imaging data. It has some metadata (created, creator, width, height) and a list of imaging data

channels (can be one of ZVI, DIC, GREEN, RED, BLUE, OTHER). The channel need to have same resolutions. Generally all entities in our DB get unique IDs. So if you replace a low resolution version of a DIC image in a imaging data (set), the imaging data ID stays the same, but the single imaging data ID changes.

  • Stephan: The filenames for the overlays are not the real ones. These are generated on the fly. A real imaging data channel filename looks like

that: imagingdata-59891682-DIC-1.tiff So we store the original uploaded file renamed having the imaging data ID in it. The ID for that image would be 59891683.

Transgeneome DB API

The goal is an API for the Transgeneome DB in order to provide information about

  • constructs
  • strains
  • images
  • image annotations.

Export format will be JSON by default. For images it will be JPEG.

Things to consider:

  • different species in TRG DB (request parameter)
 * c.ele and d.mel
  • genome (assembly versions)
  • export image format, jpeg by default
  • only provide public data

Transgeneome DB Data model

Here is a part of our class diagram without attributes. Excluded is the relation strain - well - feature - tag, which connects a strain to a gene.

TRG Imaging ClassDiagram.png

Showing also the attributes helps to decode the json below immensely. Excluded is the relation strain - well - feature - tag, which connects a strain to a gene.

TRG imaging extended class diagram.png


I could provide a complete export of my imagingData including all relevant information. Below an example of 1 imagingData. -- Janosch (talk) 09:00, 17 March 2016 (UTC)

curl  localhost:8080/transgeneomics/api/imagingData.json | jsonpp  > ~/Documents/transgenomics/wormbase_export/imagingData.json 


    "lifeStageTerm": {
      "termId": "WBls:0000027",
      "name": "L2 larva",
      "id": 7130
    "strain": {
      "well": {
        "selectedFeature": {
          "tags": [
              "field": "id",
              "value": "1010233",
              "id": 49474598
              "field": "identifier",
              "value": "WBGene00023497",
              "id": 49474599
              "field": "name",
              "value": "lin-15B",
              "id": 49474601
              "field": "alias",
              "value": "ZK662.4",
              "id": 49474600
          "id": 1010233
        "id": 31860568
      "creator": {
        "firstName": "TransgeneOmics Facility",
        "lastName": "",
        "name": "",
        "id": 45762821
      "dateCreated": "Feb 6, 2011",
      "integrated": true,
      "allele": "wgIs184",
      "alleleBackground": "unc-119(ed3)",
      "name": "OP184",
      "id": 31872734
    "annotations": [],
    "width": 1300,
    "height": 1030,
    "creator": {
      "firstName": "TransgeneOmics Facility",
      "lastName": "",
      "name": "",
      "id": 45762821
    "dateCreated": "Feb 6, 2011",
    "imagingDataChannels": [
        "channelType": "OTHER",
        "filename": "imagingdata-31872898-OTHER-1.tif",
        "id": 31906316
    "id": 31872898


Having the imaging data channel id from the json, would allow a call like


which would result in a file like