ncbo / ontologies_api

Hypermedia API for NCBO's ontology-related projects
http://data.bioontology.org
Other
25 stars 10 forks source link

Modify the mapping controller to be able to accept/create external mappings #17

Closed jonquet closed 7 years ago

jonquet commented 9 years ago

This is a request to modify the mapping controller to make it capable of creating a mapping between two different BioPortal appliances.

For instance, we want to add in our SIFR appliance triple store some multilingual mappings for French ontologies that map to English ontologies in the NCBO BioPortal. For instance:

HTTP POST http://data.bioportal.lirmm.fr/mappings { "creator" : "http://data.bioportal.lirmm.fr/users/jonquet", "source_contact_info": "jonquet@lirmm.fr", "relation" : "http://purl.org/net/translation/#directEquivalent", "source" : "UMLS", "source_name" : "Unified Medical Language System (UMLS) Matathesaurus", "comment" : "Code based mappings extracted from UMLS 2015aa MRCONSO table betweem MTHMSTFRE and MTHMST", "terms" : [ { "ontology" : "MTHMSTFRE", "term" : [ "http://purl.bioportal.lirmm.fr/ontology/MTHMSTFRE/MT010038" ] }, { "ontology" : "MSTDE", "term" : [ "http://purl.bioontology.org/ontology/MTHMST/MT010038" ] } ] }

The first ontology, MTHMSTFRE is in our appliance. The second, MSTDE, is in the main BioPortal.

We don't see any "logical reason" about why this would not be possible. We have looked a little bit in how doing it. Vincent to complete the tracker. We are interested in your feebback on this issue. And we can eventually code it.

msalvadores commented 9 years ago

@jonquet could you explain a bit more the use case ? Why not uploading both ontologies to the same appliance ?

Create mappings between two different appliances should be easy. The problem is how to make use of that data since one of the ontologies is not the in the appliance.

jonquet commented 9 years ago

The idea is to host French monolingual ontologies (e.g., Mesh-fr) in our appliance and English monolingual ontologies (e.g. Mesh) in the main NCBO BioPortal. We don't want to "copy" the content of the NCBO BioPortal. What is there should stay there, as this is the reference place for it.

As discussed in the MSW4 paper (http://www.lirmm.fr/~jonquet/publications/documents/Article_MSW4_MultilingualBioPortal.pdf) we then need to reconcile the multilingual mappings between the monolingual ontologies (e.g. Mesh/Melanoma - Mesh-fr/Mélanome) and host them somewhere.

Because, we plan to implement multilingualism in our appliance, we like to have the multilingual mappings nextby, in the same appliance.

Concerning the use of those multilingual mappings (identified by specific relation like gold:translation):

Let me know if you like more details.

jonquet commented 9 years ago

Any news or advices on this ?

msalvadores commented 9 years ago

@jonquet I am discussing this with the team to get feedback. I will get back to you soon.

msalvadores commented 9 years ago

@jonquet This approach need substantial changes in the mapping models and the controllers. The current mapping infrastructure assumes all classes participating in the mapping to be in the same store.

Our take on this would be to sync the two bioportal instances and make the english ontologies private in the french repository. Then for the user clicking part some changes would need to be made but I believe this would be easier.

jonquet commented 9 years ago

Thanks. We had the same idea about having the english ontologies being private in our local instance. We are looking into it (and compare this to changing the controllers and model). We will let you now.

jonquet commented 7 years ago

Forgot about this one ;) It has been implemented on the SIFR BioPortal / AgroPortal side: https://github.com/agroportal/documentation/wiki/Mappings#agroportal-specific-implementation

@vemonet Could you point briefly to the main chnage in the code.