glygener / glygen-issues

Repository for public GlyGen tickets
GNU General Public License v3.0
0 stars 0 forks source link

Missing Glycan names #1100

Open ReneRanzinger opened 3 months ago

ReneRanzinger commented 3 months ago

Motifs have many names and synonyms:

https://www.glygen.org/motif/GGM.000022

But if I go the name section of the corresponding GlyTouCan ID the name section is empty:

https://www.glygen.org/glycan/G00054MO

rykahsay commented 2 months ago

Fixed on tst:

image image
sujeetvkulkarni commented 2 months ago

Change the display to make it look like protein name section with domain as top headlines and names as bullet points. Group them by domain. name: [ { name : something, domain: motifname }, { name : something2, domain: motifsynonym } , { name : something3, domain: motifsynonym } ]

sujeetvkulkarni commented 2 months ago

@rykahsay add motif synonyms to the names list. domain should be something like motifsynonym for all synonyms.

rykahsay commented 2 months ago

Here is what it looks like now. I think you need to use labels instead of the values of the "domain" prop ... unless you want me to values such as "Motif Name(s)" and "Motif Synonym(s)" instead of "motifname" and "motifsynonym"

image
sujeetvkulkarni commented 2 months ago

@rykahsay thanks, we plan to make it look something similar to protein name, each synonym on different line. And name and synonym under different category. (https://tst.glygen.org/protein/P14210-1#Names).

Can you please send name, synonyms as array, like below. So that we can group them together based on domain in the frontend.

name: [
{
name : "Sialyl Lewis x",  domain: motifname
},
{
name : "Le^x", domain: "motifsynonym"
}
,
{
name : "Lex", domain: "motifsynonym"
},
{
name : "SSEA-1", domain: "motifsynonym"
}
]
rykahsay commented 2 months ago
image
sujeetvkulkarni commented 2 months ago

@ReneRanzinger @rykahsay

Apart from motifname and motifsynonym as agreed earlier "Semantic Name" is coming in below case (G01614ZM).

How we should handle this?

  1. Should backend not send anything other than motifname and motifsynonym? Or
  2. Can we get a list of domain names backend will be sending so that frontend can create a mapping? Or
  3. Frontend needs to handle this dynamically - have mapping for motifname and motifsynonym and then for all other domains use whatever backend is sending as heading?

Currently we are only showing motifname and motifsynonym in frontend. In this case both "Semantic Name" and "motifname" have same name ("Di-sialyl T antigen").

Screenshot 2024-03-15 at 5 18 32 PM

Screenshot 2024-03-15 at 5 27 37 PM

API : https://api.tst.glygen.org/glycan/detail/G01614ZM

  "names": [
    {
      "name": "Di-sialyl T antigen",
      "domain": "Semantic Name"
    },
    {
      "name": "Di-sialyl T antigen",
      "domain": "motifname"
    }
  ],
ReneRanzinger commented 2 months ago

Where does semantic name come from?

rykahsay commented 2 months ago

It comes from Nathan's export (downloads/glytoucan/current/export/names.tsv)

GlyTouCanAccession  Name    Domain
G01614ZM    Di-sialyl T antigen SemanticName

And ends up in the dataset glycan_names.csv

"glytoucan_ac","glycan_name","glycan_name_domain"
"G01614ZM","Di-sialyl T antigen","Semantic Name"