-
Notifications
You must be signed in to change notification settings - Fork 112
Coordinate between MatchMaker Patient and GA Individual? #234
Comments
Dear Orion, thanks for getting back to us with this. Some comments (which may or may not represent the consensus opinion of the MTT):
There is an example in the metadata-team area https://github.com/ga4gh/metadata-team/blob/master/usecases/diseasesStages.json , and a simplification in a new PR:
Especially regarding the "disorders" annotation, I would be very glad if we could coordinate this. We are about to refactor things, and having this done in an application-ready way with Matchmaker as use case would be great! Best, Michael. |
Dear Michael, Thank you very much for your feedback. I'll submit a pull request to the MME to see if we can get some of these suggestions integrated into the upcoming version. The term "patient" is not necessarily the best one, but it is used frequently in our discourse, since at the end of the day we're almost always trying to match patients. I agree that "contact" is ambiguous; I'll try to get that renamed along with "features". I completely agree that we should have a more complete representation of each ontology term, but we had settled into using prefixed IDs everywhere. We should probably break out of this and start using "ontologySource"/"id" objects (with optional "name" and "version"). Do you think that would be adequate? I'm sorry if this is a naive question, but I'm a little confused about your use of "ontologySource", "id", and "ontologyCode" (which you just mentioned). In your examples, "ontologySource" is sometimes a descriptive name ("Ontology for Biomedical Investigation"), sometimes a code ("WHO:ICD"), and sometimes a purl ("http://purl.obolibrary.org/obo/NCBITaxon_9606"). Similarly, the "id" is sometimes an ID within that ontologySource ("C18.5"), sometimes a purl ("http://purl.obolibrary.org/obo/OBI_0001271"), and sometimes a prefixed ID ("NCBITaxon:9606"). Just trying to decide what we should do. Thus far, we've been using prefixed IDs for everything, so I'm tempted to keep doing that. Similarly, what's the difference between "name", "text", and "ontologyText"? They seem to be used interchangeably. I'd like to try to synchronize our efforts with the GA4GH, but it looks like the discussion of this stalled a while ago: #165 The "genes" object is intended to store candidate genes, a compromise from our earlier attempt at storing all the varying levels of genotypic information in a single object. I'm still not sure what's best, but the idea is that occasionally all that can be specified is that a certain gene is a likely cause. In other cases, you might want to specify the causal variant, or at least that the causal variant is a stopgain mutation in a particular gene. We wanted to be able to capture this variable level of specificity, but we're still working on the best way to do this. We separated the candidate genes from the precise variants to make it easier to integrate with the GA4GH variant API eventually, but that might not have been the best approach. We should really get the Variant Annotation Team's input on this. The placement of ageOfOnset and inheritanceMode has been the subject of quite a bit of discussion. The idea is that ageOfOnset is the overall age of onset of the patient's symptoms, though we allow specifying it per-term as well for additional resolution. We could use inheritanceMode in a similar fashion, and we have discussed potentially adding it per-variant, but this seemed like overkill so we left it at the root. As one suggestion for the metadata team, we've found it useful to think about phenotypes that explicitly aren't present, and so have a separate true/false/na field for representing this. Best, |
Also, if we wanted to synchronize on our disorder representations, it sounds like just splitting the "id" field (e.g. "id":"MIM:123456") out into "ontologySource" and "id" fields (e.g. "ontologySource":"MIM", "id":"123456") would be the easiest way to unify our representations. Is that correct? |
There is an OntologyTerm record in metadata.avdl. It would be Orion Buske notifications@github.com writes:
|
@diekhans Agreed, but it looked like the metadata representation for these is in flux: #165. The examples are inconsistent and confuse me, though that might be because of how flexible the fields are. We've been using prefixed IDs since the beginning, so I'm a bit hesitant to propose drastic changes in this version. Also, just realized that it seemed like 'MIM' was the preferred ontology prefix for OMIM, but 'OMIM' is used by purl. Seems like we should switch? @cmungall? |
Oh, yes, don't derail anything making forward progress to Orion Buske notifications@github.com writes:
|
It should be MIM. |
@diekhans :) Okay, I commented on that PR asking for an update. It seems like things are already compatible at a very rudimentary level since we're using prefixed IDs in an "id" field, and we'll see if we can synchronize a bit more before the next version @fschiettecatte 10-4 |
@diekhans I agree we should converge on a single way to reference ontologies! I see currently that an ontology version field is present in the linked meta-data commit. Is that a manditory field? It's not especially useful in the case of HPO where the version is the date of the last change (There's no long term release / stable release). |
No; the only required attribute would be id, which could be rich. All others are in the form of
So the only point to adhere to is really using "id". And regarding the probable heterogeneity of use cases, there is no way to make this specific to a certain format.
|
See also thread on #165 (comment) |
After discussion, it seems that |
Is there a general agreement about how to name lists (plural vs. singular)? "phenotype(s)" clearly needs list context, since in common use a phenotype => interpreted/codified observation (and not the individual's overall manifestation). |
It looks like in the linked MME issue comments, that the agreement is to stick with |
Closing due to lack of activity. Thank you all for your input! |
Dear Metadata Task Team,
I wanted to extend an offer to coordinate between your representation of an Individual and our representation of a Patient:
https://github.com/MatchMakerExchange/mme-apis/blob/refactor/search-api.md#example
We're hoping to finalize the first major version of our API very soon, so now would be the best time to make any adjustments.
Here's a summary of the differences I spotted:
phenotypes
anddiseases
fields use objects with anid
field instead of just a list of terms to allow metadata (e.g. ageOfOnset, presence) to be easily added.The text was updated successfully, but these errors were encountered: