monarch-initiative / loinc2hpo

Java library to map LOINC-encoded test results to Human Phenotype Ontology
http://loinc2hpo.readthedocs.io/en/latest/
Other
30 stars 8 forks source link

termMap has omissions #8

Closed kingmanzhang closed 6 years ago

kingmanzhang commented 6 years ago

Class "Model" builds a <name, HpoTerm> hash map. But it has omissions (e.g. Hypoglycemia is not in the final termMap, though it is a legit HPO term). The reason could be the filters used(?--why ignore terms that had >1 occurrence?). In addition, better use <id, HpoTerm> (?--name is NOT unique in ontology, id IS, at least theoretically).

kingmanzhang commented 6 years ago

"HP_0025196 Increased total iron binding capacity@en" is not in term map.

kingmanzhang commented 6 years ago

same for "HP_0025020 Elevated prostate-specific antigen level@en". Problem might be the last "@en".

-yes, removing "@en" solves the mapping issue.

pnrobinson commented 6 years ago

For the most part, we have not specified the language of the HPO labels, and probably just a few terms have the @en annotation. We could just remove the annotations from the OWL file or perhaps just programmaticaly delete them in the LOINC code.

kingmanzhang commented 6 years ago

For now, we strip "@en" from the key when searching for the hpo term from the hash map. The best way is to address the difference of hp.owl (used for query) and hp.obo (used for generating <name, hpoTerm> map.