pantherdb / pango

BSD 3-Clause "New" or "Revised" License
0 stars 0 forks source link

Change "qualifiers" field name to "relation" #7

Closed dustine32 closed 1 year ago

dustine32 commented 1 year ago

For the human functionome site, "qualifiers" is kind of an awkward term since the displayed values are relations in RO. The field is also not an array so it should be singular.

@dustine32 will change the field name in the annotation JSON file. @tmushayahama will change the field in the UI unless this is just automatically pulled from the input JSON field name.

tmushayahama commented 1 year ago

Also while you on it, shouldn't there be one qualifier?

thomaspd commented 1 year ago

I can't remember if the prototype was showing a qualifier for all the annotations, or just some of them. What are the unique values of this field?

dustine32 commented 1 year ago

Here's the list of distinct qualifiers/relations in the input GAF 2.2 file: enables part_of contributes_to colocalizes_with is_active_in involved_in

Since this is from GAF 2.2 there will always be some relation. The only case where there's more than one relation is in a NOT annotation (e.g., NOT|enables), but we're filtering out all NOTs here, so there will only ever be one relation in this field.

dustine32 commented 1 year ago

From 2022-11-21 call - Only show contributes_to, colocalizes_with qualifiers. Do not show or load standard relations. Change field name to "qualifier". Cardinality will be 0 or 1.

If there is no qualifier for an annotation, the annotation JSON will look like:

    {
        "gene": "UniProtKB:P15036",
        "gene_symbol": "ETS2",
        "gene_name": "Protein C-ets-2",
        "term": "GO:0030154",
        "slim_terms": [
            "GO:0030154"
        ],
        "qualifier": null,
        "evidence": [
            ...
        ]
    }

Where qualifier key is still present but has value of null. @tmushayahama Let me know if this doesn't look right.

dustine32 commented 1 year ago

Closing as fixed