Skip to content

Entity Viewer Sidebar Payload

Manoj Pandian Sakthivel edited this page Feb 27, 2020 · 19 revisions
type Option = {
    "value": string,
    "label": string
};

type ExternalLink = {
    "label": string | null,
    "url": string,
    "anchor_text": string
}

type Assembly = {
    "species_name": string,
    "assembly_name": string,
    "stable_id": string
}

type Allele = {
    "allele_name": string,
    "stable_id": string
}

enum DataSetType{
    "Current assembly",
    "Gene",
    "Protein"
}

type DataSet = {
    "type": DataSetType,
    "stable_id": string
}

type Homeologue = {
    "type": string,
    "stable_id": string
}

type Strain = {
    "strain_name": string,
    "stable_id": string
}

type AdditionalAttribute = {
    description,
    displayName,
    code
}


type EntityViewerSidebarResponse = {
    "gene_symbol": string,
    "gene_name": string,
    "stable_id" : string,
    "dbprimary_acc" : string, // HGNC:1101
    "synonyms": string[],
    "additional_attributes" : AdditionalAttribute[],
    "function": {
        "description": string | null,
        "provider" : ExternalLink
    },
    "sequence": {
        "transcripts" : Option[],
        "gene": Option[], // Find out if there is any indication to enable these options
        "tark_url" : ExternalLink
    },
    "other_data_sets": DataSet[],
    "other_assemblies": {
        "assemblies": Assembly[],
        "strains": Strain[]
    },
    "homeologues": Homeologue[],
    "alternative_alleles" : Allele[],
    "external_references" : ExternalLink[]

}

Query to GraphQL:

query Gene($id: String!) {
  gene(stable_id: $id) {
    name
    xref {
        dbprimary_acc
        display_label
        external_synonym {
            synonym
        }
        external_db { 
            db_name
            id ???
        }
    }
    gene_attrib {
        value,
        attribute_type
    }
    function {
        description,
        provider_id
    }
        assembly_name
    gene_archive {  // ??? - Other assemblies with this Gene & current assembly
        mapping_session {
            new_assembly
        }
    }
    alt_allele { 
        Gene
    }

    Strains ??? 

    Homeologues ???

    }
  }
}

Questions to ask Kieron:

  • Display name for biotypes
  • A way to retrieve alternative assemblies { assemblies -> gene_id => {species, name}}
  • Specifically retrieve all the external references from the metadata

Clone this wiki locally