JSON Descriptions

  1. Overview
  2. Sequences
  3. Assemblies
  4. Feature Tracks
  5. Features
  6. Syntenic Alignments

Overview

Medea makes requests to javascript functions for either a URI pointing to JSON or the JSON itself. Please read on for descriptions of key-value pair data structures that Medea requests and examples.

You may wish to use pretty printing to view the examples.

Sequences

The genome sequences and their structures are collected together in this JSON array. Each genome sequence is a row in the array.

Description:

  [ 
    { "id" : String ID of the Genome,
      "structuralFeatureType" : String feature type of this genome (this could be genome, chromosome, supercontig, contig), 
      "name" : String display name, 
      "length" : int total length of the genome sequence
      "structuralFeatures" : [ 
        { "start" : Int starting sequence position,
          "stop" : Int starting sequence position, 
          "description" : String display name } ]
        }
      ]
    }

Assemblies

The genomes and their structures are collected together in this JSON array. This differs from the sequences JSON data format in that it breaks the genome into sub-structure, such as chromosomes. Each genome is a row in the array.

Description:

  [ 
    { "id" : String ID of the Genome,
      "structuralFeatureType" : String feature type of this genome (this could be genome, chromosome, supercontig, contig), 
      "name" : String display name, 
      "sequenceType" : String feature type of the sequences in the genome,
      "sequences" : [ 
        { "id" : String ID of the sequence, 
          "structuralFeatures" : [ 
            { "start" : Int starting sequence position,
              "stop" : Int starting sequence position } ], 
          "name" : String display name, 
          "length" : Int total length of this sequence }
      ] }
    ]

Feature Tracks

Feature tracks represent a collection of features. For example, this might be genes found using blast. Each feature track will go as a new entry in a JSON array.

Description:

  [ 
    { "id" : String ID of the feature track,
      "defaultSelected" : Boolean default display option,
      "color" : Hex color of track,
      "link" : String URI,
      "name" : String display name }
  ]

Features

Features represent a genome annotation on a sequence.

Description:

  [ 
    { "id" : String ID of this feature, 
      "frameId" : String ID of the sequence structure this feature is on, 
      "frameStart" : Int start sequence position of the sequence,
      "frameStop" : Int stop sequence position of the sequence, 
      "start" : Int start sequence position of the feature, 
      "stop" : Int stop sequence position of the feature, 
      "strand" : String strand this feature is on ("+" or "-" ),
      "description" : String display name of the feature }
  ]

Syntenic Alignments

Syntenic alignments represent genome similarities between a reference sequence and a query sequence. Each row of the JSON array represent an alignment.

Description:

  [
    { "refId" : String ID of the reference sequence the alignment is mapped to,
      "start" : Int start sequence position of the alignment mapped to the reference,
      "stop" : Int stop sequence position of the alignment mapped to the reference,
      "altId" : String ID of the aligned query sequence,
      "altStart" : Int start sequence position of the alignment mapped to the query,
      "altStop" : Int stop sequence position of the alignment mapped to the query,
      "orientation" : Int strand orientation (1 is positive and -1 is negative),
    }
  ]

Last Updated: January 15, 2009
Contact: Reinhard Engels, Dennis Jen
medea-support@broad.mit.edu