From support at bioontology.org Mon Jun 1 07:34:31 2020 From: support at bioontology.org (support at bioontology.org) Date: Mon, 01 Jun 2020 07:34:31 -0700 Subject: [bioontology-support] [BioPortal] Feedback from Michal Lijowski Message-ID: <5ed511f7811f8_44822c253387470@ncbo-prd-app-09.stanford.edu.mail> An HTML attachment was scrubbed... URL: From support at bioontology.org Mon Jun 1 04:35:12 2020 From: support at bioontology.org (support at bioontology.org) Date: Mon, 01 Jun 2020 04:35:12 -0700 Subject: [bioontology-support] [BioPortal] Feedback from Samiulla Message-ID: <5ed4e7f037120_6e0620087947539a@ncbo-prd-app-09.stanford.edu.mail> An HTML attachment was scrubbed... URL: From jgraybeal at stanford.edu Mon Jun 1 10:08:10 2020 From: jgraybeal at stanford.edu (John Graybeal) Date: Mon, 1 Jun 2020 17:08:10 +0000 Subject: [bioontology-support] [BioPortal] Feedback from Samiulla In-Reply-To: <5ed4e7f037120_6e0620087947539a@ncbo-prd-app-09.stanford.edu.mail> References: <5ed4e7f037120_6e0620087947539a@ncbo-prd-app-09.stanford.edu.mail> Message-ID: <22F9F69B-FE0B-49CA-A1A6-C716D166FF00@stanford.edu> Hi Sami, I always end up searching 'bioportal api key', which finds this in the first link: https://bioportal.bioontology.org/help#Getting_an_API_key and this as the second link: http://data.bioontology.org/documentation I also just rediscovered the last link in that documentation page, which together with the material at the top of the page provides valuable context: http://data.bioontology.org/documentation#nav_content_types John On Jun 1, 2020, at 4:35 AM, support at bioontology.org wrote: Name: Samiulla Email: samiulla.mahammed at indegene.com Location: https%3A%2F%2Fbioportal.bioontology.org%2F Feedback: Hi Team, Can you suggest a procedure to access your APIs in bioportal or a way to get "apikey". Regards Sami _______________________________________________ bioontology-support mailing list bioontology-support at lists.stanford.edu https://mailman.stanford.edu/mailman/listinfo/bioontology-support ======================== John Graybeal Technical Program Manager Center for Expanded Data Annotation and Retrieval /+/ NCBO BioPortal Stanford Center for Biomedical Informatics Research 650-736-1632 | ORCID 0000-0001-6875-5360 -------------- next part -------------- An HTML attachment was scrubbed... URL: From jgraybeal at stanford.edu Mon Jun 1 14:53:08 2020 From: jgraybeal at stanford.edu (John Graybeal) Date: Mon, 1 Jun 2020 21:53:08 +0000 Subject: [bioontology-support] [BioPortal] Feedback from Michal Lijowski In-Reply-To: <5ed511f7811f8_44822c253387470@ncbo-prd-app-09.stanford.edu.mail> References: <5ed511f7811f8_44822c253387470@ncbo-prd-app-09.stanford.edu.mail> Message-ID: Michael, Sorry for this trouble, thanks for calling it to our attention. With respect to NCIT, it appears the ontology was re-parsed on May 26 but that the indexing failed. We are digging in to confirm that, and will index it and report back as soon as we have something more to report. I can't speak to the 'similar cases', not knowing what they are, but the two most significant sources of discrepancies are an error in parsing the most recent version, such as the indexing error above; or a different in ontology versions. For example, UMLS just came out with release 2020AA of their vocabularies; we have not yet installed this version although we will be doing so soon. (Sometimes the version discrepancy is in the other direction; if a term is removed or deprecated, it can still be in an older version of the ontology but not be served in the current BioPortal version.) We'll have a look at some of the other ontologies, but any specific citations you can offer about missing classes will help us zero in on the problem ontologies. John On Jun 1, 2020, at 7:34 AM, support at bioontology.org wrote: Name: Michal Lijowski Email: michal.lijowski at essential-soft.com Location: http%3A%2F%2Fbioportal.bioontology.org%2Fsearch%3Futf8%3D%25E2%259C%2593%26query%3Dtreatment%2Bvehicle%2Bvolume%26button%3D Feedback: I am very curious about some of the terms disappearing from Bioportal. For example, treatment vehicle volume http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#C93697. This term is in NCI Thesaurus but it does not show up when I query Bioportal for this term. There are more similar cases involving other ontologies. _______________________________________________ bioontology-support mailing list bioontology-support at lists.stanford.edu https://mailman.stanford.edu/mailman/listinfo/bioontology-support ======================== John Graybeal Technical Program Manager Center for Expanded Data Annotation and Retrieval /+/ NCBO BioPortal Stanford Center for Biomedical Informatics Research 650-736-1632 | ORCID 0000-0001-6875-5360 -------------- next part -------------- An HTML attachment was scrubbed... URL: From support at bioontology.org Mon Jun 1 10:33:51 2020 From: support at bioontology.org (support at bioontology.org) Date: Mon, 01 Jun 2020 10:33:51 -0700 Subject: [bioontology-support] [BioPortal] Feedback from Samiulla Message-ID: <5ed53bff5d0e2_50721fa8d58920ac@ncbo-prd-app-09.stanford.edu.mail> An HTML attachment was scrubbed... URL: From jgraybeal at stanford.edu Mon Jun 1 16:27:26 2020 From: jgraybeal at stanford.edu (John Graybeal) Date: Mon, 1 Jun 2020 23:27:26 +0000 Subject: [bioontology-support] [BioPortal] Feedback from Samiulla In-Reply-To: <5ed53bff5d0e2_50721fa8d58920ac@ncbo-prd-app-09.stanford.edu.mail> References: <5ed53bff5d0e2_50721fa8d58920ac@ncbo-prd-app-09.stanford.edu.mail> Message-ID: <5BF3814A-FD5B-42E4-B42C-7CFF600B374F@stanford.edu> Hi Sami, No,we're sorry. There is no way to download SNOMED CT ontology from BIoPortal. Like many ontologies from UMLS, they do not give permission for the ontology to be distributed. You can see the license is from UMLS in the License Information section, and the facts that there are no links and the REST API is throwing an error are due to the fact it can't be distributed. John On Jun 1, 2020, at 10:33 AM, support at bioontology.org wrote: Name: Samiulla Email: samiulla.mahammed at indegene.com Location: https%3A%2F%2Fbioportal.bioontology.org%2F Feedback: Hi Team, Is there a way to download Snomed CT ontology from bioportal. The Summary page of this ontology dint have any hyperlinks to download. Also the RestAPI is throwing error . Regards Sami _______________________________________________ bioontology-support mailing list bioontology-support at lists.stanford.edu https://mailman.stanford.edu/mailman/listinfo/bioontology-support ======================== John Graybeal Technical Program Manager Center for Expanded Data Annotation and Retrieval /+/ NCBO BioPortal Stanford Center for Biomedical Informatics Research 650-736-1632 | ORCID 0000-0001-6875-5360 -------------- next part -------------- An HTML attachment was scrubbed... URL: From jgraybeal at stanford.edu Mon Jun 1 16:40:28 2020 From: jgraybeal at stanford.edu (John Graybeal) Date: Mon, 1 Jun 2020 23:40:28 +0000 Subject: [bioontology-support] [BioPortal] Feedback from Michal Lijowski In-Reply-To: References: <5ed511f7811f8_44822c253387470@ncbo-prd-app-09.stanford.edu.mail> Message-ID: <460D6B1D-A133-490B-AD39-FAF66A4422A6@stanford.edu> Michal, We have re-indexed NCIT and you can now see 'treatment vehicle volume' when you do a search. (Note you can not search by the code or CUI, only by the text string): http://bioportal.bioontology.org/ontologies/NCIT/?p=classes&conceptid=http%3A%2F%2Fncicb.nci.nih.gov%2Fxml%2Fowl%2FEVS%2FThesaurus.owl%23C93697 is now fully visible and 'Treatment Vehicle Volume' is found in annotations. Thanks for your report and patience. John On Jun 1, 2020, at 2:53 PM, John Graybeal > wrote: Michael, Sorry for this trouble, thanks for calling it to our attention. With respect to NCIT, it appears the ontology was re-parsed on May 26 but that the indexing failed. We are digging in to confirm that, and will index it and report back as soon as we have something more to report. I can't speak to the 'similar cases', not knowing what they are, but the two most significant sources of discrepancies are an error in parsing the most recent version, such as the indexing error above; or a different in ontology versions. For example, UMLS just came out with release 2020AA of their vocabularies; we have not yet installed this version although we will be doing so soon. (Sometimes the version discrepancy is in the other direction; if a term is removed or deprecated, it can still be in an older version of the ontology but not be served in the current BioPortal version.) We'll have a look at some of the other ontologies, but any specific citations you can offer about missing classes will help us zero in on the problem ontologies. John On Jun 1, 2020, at 7:34 AM, support at bioontology.org wrote: Name: Michal Lijowski Email: michal.lijowski at essential-soft.com Location: http%3A%2F%2Fbioportal.bioontology.org%2Fsearch%3Futf8%3D%25E2%259C%2593%26query%3Dtreatment%2Bvehicle%2Bvolume%26button%3D Feedback: I am very curious about some of the terms disappearing from Bioportal. For example, treatment vehicle volume http://ncicb.nci.nih.gov/xml/owl/EVS/Thesaurus.owl#C93697. This term is in NCI Thesaurus but it does not show up when I query Bioportal for this term. There are more similar cases involving other ontologies. _______________________________________________ bioontology-support mailing list bioontology-support at lists.stanford.edu https://mailman.stanford.edu/mailman/listinfo/bioontology-support ======================== John Graybeal Technical Program Manager Center for Expanded Data Annotation and Retrieval /+/ NCBO BioPortal Stanford Center for Biomedical Informatics Research 650-736-1632 | ORCID 0000-0001-6875-5360 _______________________________________________ bioontology-support mailing list bioontology-support at lists.stanford.edu https://mailman.stanford.edu/mailman/listinfo/bioontology-support ======================== John Graybeal Technical Program Manager Center for Expanded Data Annotation and Retrieval /+/ NCBO BioPortal Stanford Center for Biomedical Informatics Research 650-736-1632 | ORCID 0000-0001-6875-5360 -------------- next part -------------- An HTML attachment was scrubbed... URL: From support at bioontology.org Wed Jun 3 12:53:44 2020 From: support at bioontology.org (support at bioontology.org) Date: Wed, 03 Jun 2020 12:53:44 -0700 Subject: [bioontology-support] [BioPortal] Feedback from Jay Franklin In-Reply-To: <5ed7ffc878f87_4b1424b1b1016544@ncbo-prd-app-08.stanford.edu.mail> Message-ID: <31bpa16fm2-1@m0102880.ppops.net> An HTML attachment was scrubbed... URL: From jgraybeal at stanford.edu Wed Jun 3 14:12:54 2020 From: jgraybeal at stanford.edu (John Graybeal) Date: Wed, 3 Jun 2020 21:12:54 +0000 Subject: [bioontology-support] [BioPortal] Feedback from Jay Franklin In-Reply-To: <31bpa16fm2-1@m0102880.ppops.net> References: <31bpa16fm2-1@m0102880.ppops.net> Message-ID: <871E9098-8C4C-41D1-A1B3-A2AB943AEEF9@stanford.edu> Hello Jay, Thank you for your query. You are correct that 1- and 2-character strings are not annotated, due to the problem with spurious matches for typical short words and abbreviations. So I would call this intentional rather than an error. Conceivably it could be partially fixed through stop words for common English words like 'a', 'no', 'in', and so on?even then you would lose annotations of many chemicals. I can't speak authoritatively about the difficulties posed by the remaining 1- and 2-character strings that have important meaning, but the fact I almost never see search support 1- and 2-letter strings makes me think it is a non-trivial problem to solve. John On Jun 3, 2020, at 12:53 PM, support at bioontology.org wrote: Name: Jay Franklin Email: frankj7 at rpi.edu Location: http%3A%2F%2Fbioportal.bioontology.org%2Fannotator Feedback: Hi, I was using the Annotator and noticed the following behavior, and was wondering if it was intentional. When annotating text such as "Meter," or synonyms for meter like "Metre," the units ontology concept for Meter is correctly matched to the text. However, the 'm' abbreviation for meter, which is listed as a synonym for meter in the units ontology, is not annotated with the meter concept. This seems to hold true with any abbreviation of one or two characters, so "kg" will not be annotated with "kilogram," but "mol" will be annotated with "mole." Is not annotating words of length two or one character(s) intentional behavior? Or is this an error in the annotator that could be fixed? Thanks very much, Jay Franklin Rensselaer Polytechnic Institute _______________________________________________ bioontology-support mailing list bioontology-support at lists.stanford.edu https://mailman.stanford.edu/mailman/listinfo/bioontology-support ======================== John Graybeal Technical Program Manager Center for Expanded Data Annotation and Retrieval /+/ NCBO BioPortal Stanford Center for Biomedical Informatics Research 650-736-1632 | ORCID 0000-0001-6875-5360 -------------- next part -------------- An HTML attachment was scrubbed... URL: From support at bioontology.org Thu Jun 4 00:32:14 2020 From: support at bioontology.org (support at bioontology.org) Date: Thu, 04 Jun 2020 00:32:14 -0700 Subject: [bioontology-support] [BioPortal] Feedback from janet.pinero In-Reply-To: <5ed8a37eb8fd3_4dcc20913c894078@ncbo-prd-app-09.stanford.edu.mail> Message-ID: <31bny6snya-1@m0102883.ppops.net> An HTML attachment was scrubbed... URL: From christiansjpark at gmail.com Thu Jun 4 16:44:46 2020 From: christiansjpark at gmail.com (Christian Park) Date: Thu, 4 Jun 2020 19:44:46 -0400 Subject: [bioontology-support] API usage Message-ID: Hello, I am trying to use your REST API but having difficulty. What is command I would put into my browser to input my api key? Additionally, I would like to do the following: setOfEnglishTerms = NULL foreach line in spreadsheet { setOfEnglishTerms += columnBT foreach synonym in columnCQ { // again, possibly multiple pipe-delimited synonyms setOfEnglishTerms += synonym } } RemoveAllDuplicatedTerms(setOfEnglishTerms) // i.e. remove all instances of anything occurring more than once foreach t in setOfEnglishTerms { g = GoogleTranslate(t) matchTargets = RadLexGermanNames(t) // i.e. columnBV plus, zero, one or more terms from columnCR if (g in matchTargets) then { result = success } else { result = failure } } How would I go about doing this? Thank you! Christian Park -------------- next part -------------- An HTML attachment was scrubbed... URL: From support at bioontology.org Thu Jun 4 20:08:22 2020 From: support at bioontology.org (support at bioontology.org) Date: Thu, 04 Jun 2020 20:08:22 -0700 Subject: [bioontology-support] [BioPortal] Feedback from rkleyner Message-ID: <5ed9b72695a48_7862225450608df@ncbo-prd-app-08.stanford.edu.mail> An HTML attachment was scrubbed... URL: From thomas.grivegnee at cogni.zone Fri Jun 5 02:01:59 2020 From: thomas.grivegnee at cogni.zone (=?UTF-8?Q?Thomas_Grivegn=C3=A9e?=) Date: Fri, 5 Jun 2020 11:01:59 +0200 Subject: [bioontology-support] Delay in implementing account creation or modifications of viewing/editing privileges Message-ID: Hello I am contacting you because we are experiencing a strange issue we are having a hard time diagnosing. We are using the RC 3.0.1 and we created an OVF (Open Virtualization Format) image that we deployed on an Azure environment . When we create an account, it' immediately recorded but when we login with this account, we get an error message when trying to navigate to the "Ontologies" tab. [image: image.png] This is already weird because some of the ontologies are public (like the default STY one. If we connect with the "admin" account and grant viewing permissions to the account, and reconnect with the account, we still see the error message. After some time, not sure how long, the changes are passed on but it is sometimes necessary to delete the cookies manually in order to see the ontologies having viewing permissions. We could actually not really point what triggers the passing on of the changes. Do you have any idea of what could be causing this error message in the first place (shouldn't we at least see the public ontologies)? And secondly do you know what might be causing the delay in having the viewing permissions updated? Thanks a lot Regards, [image: Cognizone_Logo_White.png] Thomas Grivegn?e Project Leader Phone+32 478 23 78 54 Mailthomas.grivegnee at cogni.zone Websitehttps://www.cogni.zone -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: image.png Type: image/png Size: 114511 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: Cognizone_Logo_White.png Type: image/png Size: 24179 bytes Desc: not available URL: From jgraybeal at stanford.edu Fri Jun 5 12:18:35 2020 From: jgraybeal at stanford.edu (John Graybeal) Date: Fri, 5 Jun 2020 19:18:35 +0000 Subject: [bioontology-support] [BioPortal] Feedback from janet.pinero In-Reply-To: <31bny6snya-1@m0102883.ppops.net> References: <31bny6snya-1@m0102883.ppops.net> Message-ID: <888B0CCD-2A56-4944-8DCC-98724D212DD7@stanford.edu> Hi Janet, I have added you as an administrator of this project. Let us know on the support list of any difficulties. John On Jun 4, 2020, at 12:32 AM, support at bioontology.org wrote: Name: janet.pinero Email: janet.pinero at upf.edu Location: https%3A%2F%2Fbioportal.bioontology.org%2Fprojects%2FDisGeNET-RDF Feedback: I am with the team of DisGeNET developers, is it possible for me to have edit privileges in this page https://bioportal.bioontology.org/projects/DisGeNET-RDF best regards, and thanks janet _______________________________________________ bioontology-support mailing list bioontology-support at lists.stanford.edu https://mailman.stanford.edu/mailman/listinfo/bioontology-support ======================== John Graybeal Technical Program Manager Center for Expanded Data Annotation and Retrieval /+/ NCBO BioPortal Stanford Center for Biomedical Informatics Research 650-736-1632 | ORCID 0000-0001-6875-5360 -------------- next part -------------- An HTML attachment was scrubbed... URL: From jgraybeal at stanford.edu Fri Jun 5 15:18:10 2020 From: jgraybeal at stanford.edu (John Graybeal) Date: Fri, 5 Jun 2020 22:18:10 +0000 Subject: [bioontology-support] API usage In-Reply-To: References: Message-ID: <87639F3D-E753-447B-A20C-46D76E953B92@stanford.edu> Christian, Information about using the API can be found at our documentation on the API: http://data.bioontology.org/documentation. The first row of the table contains 2 different ways you can use the API key from your browser. We are not able to provide coding recommendations for your second question, I'm sorry. There are a collection of code examples at https://github.com/ncbo/ncbo_rest_sample_code; for example https://github.com/ncbo/ncbo_rest_sample_code/blob/master/csharp/ncbo/GetLabels.cs gets labels from an ontology. You may be able to find some examples that do similar things to what you want. If you are trying to obtain some information from BioPortal using the UI, please describe in natural language what you are trying to do. Because different ontologies represent internationalizations differently (some use entirely separate ontologies, others use langage-identified labels for a single term); not all ontologies have translations and not all translations are in BioPortal; and BioPortal itself is not well-adapted to handle different languages, you may have to examine each ontology to determine how to use it to find cross-language synonyms for terms. john On Jun 4, 2020, at 4:44 PM, Christian Park > wrote: Hello, I am trying to use your REST API but having difficulty. What is command I would put into my browser to input my api key? Additionally, I would like to do the following: setOfEnglishTerms = NULL foreach line in spreadsheet { setOfEnglishTerms += columnBT foreach synonym in columnCQ { // again, possibly multiple pipe-delimited synonyms setOfEnglishTerms += synonym } } RemoveAllDuplicatedTerms(setOfEnglishTerms) // i.e. remove all instances of anything occurring more than once foreach t in setOfEnglishTerms { g = GoogleTranslate(t) matchTargets = RadLexGermanNames(t) // i.e. columnBV plus, zero, one or more terms from columnCR if (g in matchTargets) then { result = success } else { result = failure } } How would I go about doing this? Thank you! Christian Park _______________________________________________ bioontology-support mailing list bioontology-support at lists.stanford.edu https://mailman.stanford.edu/mailman/listinfo/bioontology-support ======================== John Graybeal Technical Program Manager Center for Expanded Data Annotation and Retrieval /+/ NCBO BioPortal Stanford Center for Biomedical Informatics Research 650-736-1632 | ORCID 0000-0001-6875-5360 -------------- next part -------------- An HTML attachment was scrubbed... URL: From jgraybeal at stanford.edu Fri Jun 5 15:27:24 2020 From: jgraybeal at stanford.edu (John Graybeal) Date: Fri, 5 Jun 2020 22:27:24 +0000 Subject: [bioontology-support] Delay in implementing account creation or modifications of viewing/editing privileges In-Reply-To: References: Message-ID: Thomas, I discussed a similar question with our DevOps yesterday. He suggested that there may be an internal cache whose timeout is not being retriggered when the change is made to the ontology. In this case, there may be a 30-minute (or even 120-minute) delay in the availability of resources. Though I agree, public ontologies should be visible?the issue may be in the updating of account information within the system. Also, sometimes the ontologies page fails to display if there is an ontology within it that has an internal inconsistency in BioPortal (so that the UI code thinks the ontology should display properly, but it does not). If this inconsistency resolves, for example by reparsing the ontology, the ontologies page displays properly again. It may be there is an internal condition that means the new user is not able to see the ontology but the UI thinks it should be visible. We can have a look to see if we can actively trigger the refresh of any related caches, but I'm not sure when we will get to this?I'll contact you out of band to discuss your needs. We'll also see if anyone else on the list has an idea of what might be happening. John On Jun 5, 2020, at 2:01 AM, Thomas Grivegn?e > wrote: Hello I am contacting you because we are experiencing a strange issue we are having a hard time diagnosing. We are using the RC 3.0.1 and we created an OVF (Open Virtualization Format) image that we deployed on an Azure environment . When we create an account, it' immediately recorded but when we login with this account, we get an error message when trying to navigate to the "Ontologies" tab. This is already weird because some of the ontologies are public (like the default STY one. If we connect with the "admin" account and grant viewing permissions to the account, and reconnect with the account, we still see the error message. After some time, not sure how long, the changes are passed on but it is sometimes necessary to delete the cookies manually in order to see the ontologies having viewing permissions. We could actually not really point what triggers the passing on of the changes. Do you have any idea of what could be causing this error message in the first place (shouldn't we at least see the public ontologies)? And secondly do you know what might be causing the delay in having the viewing permissions updated? Thanks a lot Regards, Thomas Grivegn?e Project Leader Phone+32 478 23 78 54 Mailthomas.grivegnee at cogni.zone Websitehttps://www.cogni.zone _______________________________________________ bioontology-support mailing list bioontology-support at lists.stanford.edu https://mailman.stanford.edu/mailman/listinfo/bioontology-support ======================== John Graybeal Technical Program Manager Center for Expanded Data Annotation and Retrieval /+/ NCBO BioPortal Stanford Center for Biomedical Informatics Research 650-736-1632 | ORCID 0000-0001-6875-5360 -------------- next part -------------- An HTML attachment was scrubbed... URL: From support at bioontology.org Tue Jun 9 02:59:46 2020 From: support at bioontology.org (support at bioontology.org) Date: Tue, 09 Jun 2020 02:59:46 -0700 Subject: [bioontology-support] [BioPortal] Feedback from Paola Roncaglia Message-ID: <5edf5d92e2432_4c2025d0f14483d3@ncbo-prd-app-08.stanford.edu.mail> An HTML attachment was scrubbed... URL: From support at bioontology.org Tue Jun 9 08:57:50 2020 From: support at bioontology.org (support at bioontology.org) Date: Tue, 09 Jun 2020 08:57:50 -0700 Subject: [bioontology-support] [BioPortal] Feedback from dnarganes Message-ID: <5edfb17ec7270_1b81ebffb888365@ncbo-prd-app-08.stanford.edu.mail> An HTML attachment was scrubbed... URL: From d.narganes at dundee.ac.uk Tue Jun 9 09:59:15 2020 From: d.narganes at dundee.ac.uk (David Narganes Carlon (PG Research)) Date: Tue, 9 Jun 2020 16:59:15 +0000 Subject: [bioontology-support] Access to RCD Message-ID: <4840CF75-7315-4DF0-8670-EF0CD3B53057@dundee.ac.uk> Hi, What should I do to download the following ontology? http://data.bioontology.org/ontologies/RCD/download?apikey=f7499aa0-89ee-44af-a8bb-46bd301346fc I get: { * * "errors": [ * "License restrictions on download for RCD" ], * "status": 403 } I have a UMLS license. Thanks, David The University of Dundee is a registered Scottish Charity, No: SC015096 -------------- next part -------------- An HTML attachment was scrubbed... URL: From vendetti at stanford.edu Tue Jun 9 10:22:52 2020 From: vendetti at stanford.edu (Jennifer Leigh Vendetti) Date: Tue, 9 Jun 2020 17:22:52 +0000 Subject: [bioontology-support] [BioPortal] Feedback from Paola Roncaglia In-Reply-To: <5edf5d92e2432_4c2025d0f14483d3@ncbo-prd-app-08.stanford.edu.mail> References: <5edf5d92e2432_4c2025d0f14483d3@ncbo-prd-app-08.stanford.edu.mail> Message-ID: <318D7C7A-ED73-4A29-A358-36AD3A4C2C02@stanford.edu> Hello Paola, On Jun 9, 2020, at 2:59 AM, support at bioontology.org wrote: I'd need to download the CSV file of the latest release of UBERON please. I looked at the Submissions panel in https://bioportal.bioontology.org/ontologies/UBERON/?p=summary, but I suspect there are some issues with version numbers and release dates (compare with https://uberon.github.io/). I contacted UBERON in case anything needs to be fixed at the source (https://github.com/obophenotype/uberon/issues/1617). In the meantime, would you please be able to confirm if the CSV file in the top line in the BioPortal page is indeed the version that was released on 2019-11-22? I downloaded the latest submission of UBERON and looked at the ontology source file. I can confirm that it?s the version you requested, i.e.: ? https://mailman.stanford.edu/mailman/listinfo/bioontology-support ======================== John Graybeal Technical Program Manager Center for Expanded Data Annotation and Retrieval /+/ NCBO BioPortal Stanford Center for Biomedical Informatics Research 650-736-1632 | ORCID 0000-0001-6875-5360 -------------- next part -------------- An HTML attachment was scrubbed... URL: From support at bioontology.org Mon Jun 22 08:37:50 2020 From: support at bioontology.org (support at bioontology.org) Date: Mon, 22 Jun 2020 08:37:50 -0700 Subject: [bioontology-support] [BioPortal] Feedback from hsiehjulien Message-ID: <5ef0d04e49c59_73b22278d6c7152f@ncbo-prd-app-08.stanford.edu.mail> An HTML attachment was scrubbed... URL: From jgraybeal at stanford.edu Mon Jun 22 09:00:43 2020 From: jgraybeal at stanford.edu (John Graybeal) Date: Mon, 22 Jun 2020 16:00:43 +0000 Subject: [bioontology-support] [BioPortal] Feedback from hsiehjulien In-Reply-To: <5ef0d04e49c59_73b22278d6c7152f@ncbo-prd-app-08.stanford.edu.mail> References: <5ef0d04e49c59_73b22278d6c7152f@ncbo-prd-app-08.stanford.edu.mail> Message-ID: Hello BioPortal reads the individuals and stores them, so you can see them via API requests: http://data.bioontology.org/ontologies/CSTD/instances Unfortunately, BioPortal does not provide a user interface for viewing these instances. John On Jun 22, 2020, at 8:37 AM, support at bioontology.org wrote: Name: hsiehjulien Email: hsiehjulien at gmail.com Location: https%3A%2F%2Fbioportal.bioontology.org%2Fsearch Feedback: Hi, I have uploaded our Clinical smell and taste ontology made on protege, but the individuals cannot be integrated into bioportal. Do you have any solution ? _______________________________________________ bioontology-support mailing list bioontology-support at lists.stanford.edu https://mailman.stanford.edu/mailman/listinfo/bioontology-support ======================== John Graybeal Technical Program Manager Center for Expanded Data Annotation and Retrieval /+/ NCBO BioPortal Stanford Center for Biomedical Informatics Research 650-736-1632 | ORCID 0000-0001-6875-5360 -------------- next part -------------- An HTML attachment was scrubbed... URL: From david.saylor at beyondlucid.com Wed Jun 24 08:52:59 2020 From: david.saylor at beyondlucid.com (David Saylor) Date: Wed, 24 Jun 2020 11:52:59 -0400 Subject: [bioontology-support] RXNORM Properties Message-ID: Hello, we are trying to use the BioPortal API to look up RXNORM codes. We are able to do the search via a query like below. What we really want to know is the more detailed properties of a particular Here is the page for Acetaminophen (link ). We would really like to get the additional RXNORM properties from a page like, such as Has ingredient or Has ingredients. Could you let me know the best way to pull out those properties? Thanks and best regards, David *Query* https://data.bioontology.org/search?q=Acetaminophen&ontologies=RXNORM&page=1&pagesize=2&roots_only=True *First Result* { "page": 1, "pageCount": 883, "totalCount": 1766, "prevPage": null, "nextPage": 2, "links": { "nextPage": " http://data.bioontology.org/search?q=Acetaminophen&ontologies=RXNORM&page=2&pagesize=2&roots_only=True ", "prevPage": null }, "collection": [ { "prefLabel": "Acetaminophen", "cui": [ "C0000970" ], "semanticType": [ "T109", "T121" ], "obsolete": false, "matchType": "prefLabel", "ontologyType": "ONTOLOGY", "provisional": false, "@id": "http://purl.bioontology.org/ontology/RXNORM/161", "@type": "http://www.w3.org/2002/07/owl#Class", "links": { "self": " http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161 ", "ontology": "http://data.bioontology.org/ontologies/RXNORM", "children": " http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/children ", "parents": " http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/parents ", "descendants": " http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/descendants ", "ancestors": " http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/ancestors ", "instances": " http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/instances ", "tree": " http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/tree ", "notes": " http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/notes ", "mappings": " http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/mappings ", "ui": " http://bioportal.bioontology.org/ontologies/RXNORM?p=classes&conceptid=http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161 ", "@context": { "self": "http://www.w3.org/2002/07/owl#Class", "ontology": "http://data.bioontology.org/metadata/Ontology", "children": "http://www.w3.org/2002/07/owl#Class", "parents": "http://www.w3.org/2002/07/owl#Class", "descendants": "http://www.w3.org/2002/07/owl#Class", "ancestors": "http://www.w3.org/2002/07/owl#Class", "instances": "http://data.bioontology.org/metadata/Instance", "tree": "http://www.w3.org/2002/07/owl#Class", "notes": "http://data.bioontology.org/metadata/Note", "mappings": "http://data.bioontology.org/metadata/Mapping", "ui": "http://www.w3.org/2002/07/owl#Class" } }, "@context": { "@vocab": "http://data.bioontology.org/metadata/", "prefLabel": "http://data.bioontology.org/metadata/skosprefLabel", "obsolete": "http://data.bioontology.org/metadata/owlobsolete", "semanticType": " http://data.bioontology.org/metadata/umlssemanticType", "cui": "http://data.bioontology.org/metadata/umlscui" } } ] } David Saylor, Chief Engineer *Beyond Lucid Technologies, Inc. * (650) 648-ePCR office (818) 660-5726 direct -------------- next part -------------- An HTML attachment was scrubbed... URL: From mdorf at stanford.edu Wed Jun 24 15:52:33 2020 From: mdorf at stanford.edu (Michael Dorf) Date: Wed, 24 Jun 2020 22:52:33 +0000 Subject: [bioontology-support] RXNORM Properties In-Reply-To: References: Message-ID: Hi David, Thanks for contacting us. All of the attributes of a calls are stored in the ?properties? collection. You should be able to get those by using the ?display? query parameter: https://data.bioontology.org/search?q=Acetaminophen&ontologies=RXNORM&page=1&pagesize=2&roots_only=true&display=prefLabel,synonym,definition,notation,cui,semanticType,properties Let me know if this works. Thanks! Michael On Jun 24, 2020, at 8:52 AM, David Saylor > wrote: Hello, we are trying to use the BioPortal API to look up RXNORM codes. We are able to do the search via a query like below. What we really want to know is the more detailed properties of a particular Here is the page for Acetaminophen (link). We would really like to get the additional RXNORM properties from a page like, such as Has ingredient or Has ingredients. Could you let me know the best way to pull out those properties? Thanks and best regards, David Query https://data.bioontology.org/search?q=Acetaminophen&ontologies=RXNORM&page=1&pagesize=2&roots_only=True First Result { "page": 1, "pageCount": 883, "totalCount": 1766, "prevPage": null, "nextPage": 2, "links": { "nextPage": "http://data.bioontology.org/search?q=Acetaminophen&ontologies=RXNORM&page=2&pagesize=2&roots_only=True", "prevPage": null }, "collection": [ { "prefLabel": "Acetaminophen", "cui": [ "C0000970" ], "semanticType": [ "T109", "T121" ], "obsolete": false, "matchType": "prefLabel", "ontologyType": "ONTOLOGY", "provisional": false, "@id": "http://purl.bioontology.org/ontology/RXNORM/161", "@type": "http://www.w3.org/2002/07/owl#Class", "links": { "self": "http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161", "ontology": "http://data.bioontology.org/ontologies/RXNORM", "children": "http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/children", "parents": "http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/parents", "descendants": "http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/descendants", "ancestors": "http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/ancestors", "instances": "http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/instances", "tree": "http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/tree", "notes": "http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/notes", "mappings": "http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/mappings", "ui": "http://bioportal.bioontology.org/ontologies/RXNORM?p=classes&conceptid=http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161", "@context": { "self": "http://www.w3.org/2002/07/owl#Class", "ontology": "http://data.bioontology.org/metadata/Ontology", "children": "http://www.w3.org/2002/07/owl#Class", "parents": "http://www.w3.org/2002/07/owl#Class", "descendants": "http://www.w3.org/2002/07/owl#Class", "ancestors": "http://www.w3.org/2002/07/owl#Class", "instances": "http://data.bioontology.org/metadata/Instance", "tree": "http://www.w3.org/2002/07/owl#Class", "notes": "http://data.bioontology.org/metadata/Note", "mappings": "http://data.bioontology.org/metadata/Mapping", "ui": "http://www.w3.org/2002/07/owl#Class" } }, "@context": { "@vocab": "http://data.bioontology.org/metadata/", "prefLabel": "http://data.bioontology.org/metadata/skosprefLabel", "obsolete": "http://data.bioontology.org/metadata/owlobsolete", "semanticType": "http://data.bioontology.org/metadata/umlssemanticType", "cui": "http://data.bioontology.org/metadata/umlscui" } } ] } David Saylor, Chief Engineer Beyond Lucid Technologies, Inc. (650) 648-ePCR office (818) 660-5726 direct _______________________________________________ bioontology-support mailing list bioontology-support at lists.stanford.edu https://mailman.stanford.edu/mailman/listinfo/bioontology-support -------------- next part -------------- An HTML attachment was scrubbed... URL: From john.zobolas at ntnu.no Thu Jun 25 12:33:35 2020 From: john.zobolas at ntnu.no (John Zobolas) Date: Thu, 25 Jun 2020 19:33:35 +0000 Subject: [bioontology-support] Questions regarding API search Message-ID: Hi, This is a continuation of some other Q&A I had raised some time ago. My question back then was about the fields that a query such as `search?q=something` looks for to make a match. Michael Dorf had told me that: "These are the fields being searched in their order of rank priority: id prefLabelExact (match on the full pref label) prefLabel (match on partial pref label) synonymExact (match on the full synonym(s)) synonym (match on the partial synonym(s)) notation (last fragment of id) cui (for UMLS ontologies) semantic_types" We have been beta-testing this curation tool, in which (long-story-short) some boxes use the BioPortal API (via a dictionary interface I've built for it), and some curators expected something to show in one of these boxes when they were writing 'ubi' (for ubiquitination) which pretty much translated to the query: http://data.bioontology.org/search?q=ubi&ontologies=PSIMOD&page=1&pagesize=40&display_context=false , which returns nothing. But if you add the asterisk (dirty little trick ?): http://data.bioontology.org/search?q=ubi*&ontologies=PSIMOD&page=1&pagesize=40&display_context=false you can see that there is both prefLabel and synonym partial matches, so these items/classes should have been returned in the first query! So my question is if this a bug (the partial match does not work properly) or something has changed in the above fields (and I should probably implement the asterisk hack cause the curators are somewhat dissatisfied with writing the whole word ?)? ================== Another example: Curator wants to find 'physical association', nothing is returned while they type: http://data.bioontology.org/search?q=physi&ontologies=MI&page=1&pagesize=40&display_context=false There is though a partial prefLabel match: http://data.bioontology.org/search?q=physi*&ontologies=MI&page=1&pagesize=40&display_context=false =================== BR, John. ----------------- John Zobolas PhD Student Department of Biology, Faculty of Natural Sciences, NTNU Department of Clinical and Molecular Medicine, Faculty of Medicine and Health Sciences, NTNU -------------- next part -------------- An HTML attachment was scrubbed... URL: From mdorf at stanford.edu Thu Jun 25 13:17:34 2020 From: mdorf at stanford.edu (Michael Dorf) Date: Thu, 25 Jun 2020 20:17:34 +0000 Subject: [bioontology-support] Questions regarding API search In-Reply-To: References: Message-ID: Hi John, Glad to hear from you again! I can confirm that this behavior is by design. Our default search does not perform ?starts with? partial matches, but only the whole word matches. It does match on single words in a multi-word expression, but those results are usually ranked lower than the full expression matches. If you want to do a ?starts with? partial match, you can use the asterisk in the query, as you did below, ?r pass a parameter ?suggest=true?: http://data.bioontology.org/search?q=ubi&ontologies=PSIMOD&page=1&pagesize=40&display_context=false&suggest=true I think the confusion comes from this statement: prefLabel (match on partial pref label). What I meant here is if one searches for ?abnormal cell?, for example: http://data.bioontology.org/search?q=abnormal%20cell&ontologies=NCIT You can see that the exact match ?Abnormal Cell? is at the top; the matches that contain both words ?abnormal? and ?cell? are a bit lower; and the partial matches - those that contain either word - are there but ranked even lower. That?s what I meant by the ?partial pref label?, NOT partial word matches. Sorry for the confusion. Hope this helps! Michael On Jun 25, 2020, at 12:33 PM, John Zobolas > wrote: Hi, This is a continuation of some other Q&A I had raised some time ago. My question back then was about the fields that a query such as `search?q=something` looks for to make a match. Michael Dorf had told me that: "These are the fields being searched in their order of rank priority: id prefLabelExact (match on the full pref label) prefLabel (match on partial pref label) synonymExact (match on the full synonym(s)) synonym (match on the partial synonym(s)) notation (last fragment of id) cui (for UMLS ontologies) semantic_types" We have been beta-testing this curation tool, in which (long-story-short) some boxes use the BioPortal API (via a dictionary interface I've built for it), and some curators expected something to show in one of these boxes when they were writing 'ubi' (for ubiquitination) which pretty much translated to the query: http://data.bioontology.org/search?q=ubi&ontologies=PSIMOD&page=1&pagesize=40&display_context=false , which returns nothing. But if you add the asterisk (dirty little trick ?): http://data.bioontology.org/search?q=ubi*&ontologies=PSIMOD&page=1&pagesize=40&display_context=false you can see that there is both prefLabel and synonym partial matches, so these items/classes should have been returned in the first query! So my question is if this a bug (the partial match does not work properly) or something has changed in the above fields (and I should probably implement the asterisk hack cause the curators are somewhat dissatisfied with writing the whole word ?)? ================== Another example: Curator wants to find 'physical association', nothing is returned while they type: http://data.bioontology.org/search?q=physi&ontologies=MI&page=1&pagesize=40&display_context=false There is though a partial prefLabel match: http://data.bioontology.org/search?q=physi*&ontologies=MI&page=1&pagesize=40&display_context=false =================== BR, John. ----------------- John Zobolas PhD Student Department of Biology, Faculty of Natural Sciences, NTNU Department of Clinical and Molecular Medicine, Faculty of Medicine and Health Sciences, NTNU _______________________________________________ bioontology-support mailing list bioontology-support at lists.stanford.edu https://mailman.stanford.edu/mailman/listinfo/bioontology-support -------------- next part -------------- An HTML attachment was scrubbed... URL: From john.zobolas at ntnu.no Thu Jun 25 13:25:53 2020 From: john.zobolas at ntnu.no (John Zobolas) Date: Thu, 25 Jun 2020 20:25:53 +0000 Subject: [bioontology-support] Questions regarding API search In-Reply-To: References: , Message-ID: No, problem! Thanks for the clarification and easy suggested implementation! BR, John. ________________________________ From: Michael Dorf Sent: Thursday, June 25, 2020 10:17:34 PM To: John Zobolas Cc: support at bioontology.org; Vasundra Tour?; Steven Vercruysse Subject: Re: [bioontology-support] Questions regarding API search Hi John, Glad to hear from you again! I can confirm that this behavior is by design. Our default search does not perform ?starts with? partial matches, but only the whole word matches. It does match on single words in a multi-word expression, but those results are usually ranked lower than the full expression matches. If you want to do a ?starts with? partial match, you can use the asterisk in the query, as you did below, ?r pass a parameter ?suggest=true?: http://data.bioontology.org/search?q=ubi&ontologies=PSIMOD&page=1&pagesize=40&display_context=false&suggest=true I think the confusion comes from this statement: prefLabel (match on partial pref label). What I meant here is if one searches for ?abnormal cell?, for example: http://data.bioontology.org/search?q=abnormal%20cell&ontologies=NCIT You can see that the exact match ?Abnormal Cell? is at the top; the matches that contain both words ?abnormal? and ?cell? are a bit lower; and the partial matches - those that contain either word - are there but ranked even lower. That?s what I meant by the ?partial pref label?, NOT partial word matches. Sorry for the confusion. Hope this helps! Michael On Jun 25, 2020, at 12:33 PM, John Zobolas > wrote: Hi, This is a continuation of some other Q&A I had raised some time ago. My question back then was about the fields that a query such as `search?q=something` looks for to make a match. Michael Dorf had told me that: "These are the fields being searched in their order of rank priority: id prefLabelExact (match on the full pref label) prefLabel (match on partial pref label) synonymExact (match on the full synonym(s)) synonym (match on the partial synonym(s)) notation (last fragment of id) cui (for UMLS ontologies) semantic_types" We have been beta-testing this curation tool, in which (long-story-short) some boxes use the BioPortal API (via a dictionary interface I've built for it), and some curators expected something to show in one of these boxes when they were writing 'ubi' (for ubiquitination) which pretty much translated to the query: http://data.bioontology.org/search?q=ubi&ontologies=PSIMOD&page=1&pagesize=40&display_context=false , which returns nothing. But if you add the asterisk (dirty little trick ?): http://data.bioontology.org/search?q=ubi*&ontologies=PSIMOD&page=1&pagesize=40&display_context=false you can see that there is both prefLabel and synonym partial matches, so these items/classes should have been returned in the first query! So my question is if this a bug (the partial match does not work properly) or something has changed in the above fields (and I should probably implement the asterisk hack cause the curators are somewhat dissatisfied with writing the whole word ?)? ================== Another example: Curator wants to find 'physical association', nothing is returned while they type: http://data.bioontology.org/search?q=physi&ontologies=MI&page=1&pagesize=40&display_context=false There is though a partial prefLabel match: http://data.bioontology.org/search?q=physi*&ontologies=MI&page=1&pagesize=40&display_context=false =================== BR, John. ----------------- John Zobolas PhD Student Department of Biology, Faculty of Natural Sciences, NTNU Department of Clinical and Molecular Medicine, Faculty of Medicine and Health Sciences, NTNU _______________________________________________ bioontology-support mailing list bioontology-support at lists.stanford.edu https://mailman.stanford.edu/mailman/listinfo/bioontology-support -------------- next part -------------- An HTML attachment was scrubbed... URL: From mdorf at stanford.edu Fri Jun 26 11:23:10 2020 From: mdorf at stanford.edu (Michael Dorf) Date: Fri, 26 Jun 2020 18:23:10 +0000 Subject: [bioontology-support] RXNORM Properties In-Reply-To: References: Message-ID: <06AF2E09-20FD-4F62-928E-036E64F3FBE3@stanford.edu> Hi David, We?re replaced some of the original parameter names with more descriptive counterparts, but the documentation still shows the original names in some places. The old names have been preserved for backwards compatibility. In this case ?display? is equivalent to ?include?, which still works and is documented: https://data.bioontology.org/search?q=Acetaminophen&ontologies=RXNORM&page=1&pagesize=2&roots_only=true&include=prefLabel,synonym,definition,notation,cui,semanticType,properties It does look like ?properties? isn?t on that list, however. I?ll make sure to have this updated in our next release. Thank you for bringing this to our attention! Michael On Jun 26, 2020, at 10:38 AM, David Saylor > wrote: Yes, I think that's just what we need! I don't see the display parameter in the documentation. Is that intentional? We'll continue on our side. Thank you! Best regards, David David Saylor, Chief Engineer Beyond Lucid Technologies, Inc. (650) 648-ePCR office (818) 660-5726 direct On Wed, Jun 24, 2020 at 6:52 PM Michael Dorf > wrote: Hi David, Thanks for contacting us. All of the attributes of a calls are stored in the ?properties? collection. You should be able to get those by using the ?display? query parameter: https://data.bioontology.org/search?q=Acetaminophen&ontologies=RXNORM&page=1&pagesize=2&roots_only=true&display=prefLabel,synonym,definition,notation,cui,semanticType,properties Let me know if this works. Thanks! Michael On Jun 24, 2020, at 8:52 AM, David Saylor > wrote: Hello, we are trying to use the BioPortal API to look up RXNORM codes. We are able to do the search via a query like below. What we really want to know is the more detailed properties of a particular Here is the page for Acetaminophen (link). We would really like to get the additional RXNORM properties from a page like, such as Has ingredient or Has ingredients. Could you let me know the best way to pull out those properties? Thanks and best regards, David Query https://data.bioontology.org/search?q=Acetaminophen&ontologies=RXNORM&page=1&pagesize=2&roots_only=True First Result { "page": 1, "pageCount": 883, "totalCount": 1766, "prevPage": null, "nextPage": 2, "links": { "nextPage": "http://data.bioontology.org/search?q=Acetaminophen&ontologies=RXNORM&page=2&pagesize=2&roots_only=True", "prevPage": null }, "collection": [ { "prefLabel": "Acetaminophen", "cui": [ "C0000970" ], "semanticType": [ "T109", "T121" ], "obsolete": false, "matchType": "prefLabel", "ontologyType": "ONTOLOGY", "provisional": false, "@id": "http://purl.bioontology.org/ontology/RXNORM/161", "@type": "http://www.w3.org/2002/07/owl#Class", "links": { "self": "http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161", "ontology": "http://data.bioontology.org/ontologies/RXNORM", "children": "http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/children", "parents": "http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/parents", "descendants": "http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/descendants", "ancestors": "http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/ancestors", "instances": "http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/instances", "tree": "http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/tree", "notes": "http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/notes", "mappings": "http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/mappings", "ui": "http://bioportal.bioontology.org/ontologies/RXNORM?p=classes&conceptid=http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161", "@context": { "self": "http://www.w3.org/2002/07/owl#Class", "ontology": "http://data.bioontology.org/metadata/Ontology", "children": "http://www.w3.org/2002/07/owl#Class", "parents": "http://www.w3.org/2002/07/owl#Class", "descendants": "http://www.w3.org/2002/07/owl#Class", "ancestors": "http://www.w3.org/2002/07/owl#Class", "instances": "http://data.bioontology.org/metadata/Instance", "tree": "http://www.w3.org/2002/07/owl#Class", "notes": "http://data.bioontology.org/metadata/Note", "mappings": "http://data.bioontology.org/metadata/Mapping", "ui": "http://www.w3.org/2002/07/owl#Class" } }, "@context": { "@vocab": "http://data.bioontology.org/metadata/", "prefLabel": "http://data.bioontology.org/metadata/skosprefLabel", "obsolete": "http://data.bioontology.org/metadata/owlobsolete", "semanticType": "http://data.bioontology.org/metadata/umlssemanticType", "cui": "http://data.bioontology.org/metadata/umlscui" } } ] } David Saylor, Chief Engineer Beyond Lucid Technologies, Inc. (650) 648-ePCR office (818) 660-5726 direct _______________________________________________ bioontology-support mailing list bioontology-support at lists.stanford.edu https://mailman.stanford.edu/mailman/listinfo/bioontology-support -------------- next part -------------- An HTML attachment was scrubbed... URL: From david.saylor at beyondlucid.com Fri Jun 26 10:38:33 2020 From: david.saylor at beyondlucid.com (David Saylor) Date: Fri, 26 Jun 2020 13:38:33 -0400 Subject: [bioontology-support] RXNORM Properties In-Reply-To: References: Message-ID: Yes, I think that's just what we need! I don't see the display parameter in the documentation. Is that intentional? We'll continue on our side. Thank you! Best regards, David David Saylor, Chief Engineer *Beyond Lucid Technologies, Inc. * (650) 648-ePCR office (818) 660-5726 direct On Wed, Jun 24, 2020 at 6:52 PM Michael Dorf wrote: > Hi David, > > Thanks for contacting us. All of the attributes of a calls are stored in > the ?properties? collection. You should be able to get those by using the > ?display? query parameter: > > > https://data.bioontology.org/search?q=Acetaminophen&ontologies=RXNORM&page=1&pagesize=2&roots_only=true&display=prefLabel,synonym,definition,notation,cui,semanticType,properties > > Let me know if this works. > > Thanks! > > Michael > > On Jun 24, 2020, at 8:52 AM, David Saylor > wrote: > > Hello, we are trying to use the BioPortal API to look up RXNORM codes. > We are able to do the search via a query like below. What we really want > to know is the more detailed properties of a particular > > Here is the page for Acetaminophen (link > ). > We would really like to get the additional RXNORM properties from a page > like, such as Has ingredient or Has ingredients. > > Could you let me know the best way to pull out those properties? > > Thanks and best regards, > David > > *Query* > > https://data.bioontology.org/search?q=Acetaminophen&ontologies=RXNORM&page=1&pagesize=2&roots_only=True > > > > *First Result* > { > "page": 1, > "pageCount": 883, > "totalCount": 1766, > "prevPage": null, > "nextPage": 2, > "links": { > "nextPage": " > http://data.bioontology.org/search?q=Acetaminophen&ontologies=RXNORM&page=2&pagesize=2&roots_only=True > ", > "prevPage": null > }, > "collection": [ > { > "prefLabel": "Acetaminophen", > "cui": [ > "C0000970" > ], > "semanticType": [ > "T109", > "T121" > ], > "obsolete": false, > "matchType": "prefLabel", > "ontologyType": "ONTOLOGY", > "provisional": false, > "@id": "http://purl.bioontology.org/ontology/RXNORM/161", > "@type": "http://www.w3.org/2002/07/owl#Class", > "links": { > "self": " > http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161 > ", > "ontology": "http://data.bioontology.org/ontologies/RXNORM", > "children": " > http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/children > ", > "parents": " > http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/parents > ", > "descendants": " > http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/descendants > ", > "ancestors": " > http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/ancestors > ", > "instances": " > http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/instances > ", > "tree": " > http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/tree > ", > "notes": " > http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/notes > ", > "mappings": " > http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/mappings > ", > "ui": " > http://bioportal.bioontology.org/ontologies/RXNORM?p=classes&conceptid=http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161 > ", > "@context": { > "self": "http://www.w3.org/2002/07/owl#Class", > "ontology": "http://data.bioontology.org/metadata/Ontology", > "children": "http://www.w3.org/2002/07/owl#Class", > "parents": "http://www.w3.org/2002/07/owl#Class", > "descendants": "http://www.w3.org/2002/07/owl#Class", > "ancestors": "http://www.w3.org/2002/07/owl#Class", > "instances": "http://data.bioontology.org/metadata/Instance", > "tree": "http://www.w3.org/2002/07/owl#Class", > "notes": "http://data.bioontology.org/metadata/Note", > "mappings": "http://data.bioontology.org/metadata/Mapping", > "ui": "http://www.w3.org/2002/07/owl#Class" > } > }, > "@context": { > "@vocab": "http://data.bioontology.org/metadata/", > "prefLabel": "http://data.bioontology.org/metadata/skosprefLabel", > "obsolete": "http://data.bioontology.org/metadata/owlobsolete", > "semanticType": " > http://data.bioontology.org/metadata/umlssemanticType", > "cui": "http://data.bioontology.org/metadata/umlscui" > } > } > ] > } > > > David Saylor, Chief Engineer > *Beyond Lucid Technologies, Inc. * > (650) 648-ePCR office > (818) 660-5726 direct > _______________________________________________ > bioontology-support mailing list > bioontology-support at lists.stanford.edu > https://mailman.stanford.edu/mailman/listinfo/bioontology-support > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From david.saylor at beyondlucid.com Fri Jun 26 11:45:49 2020 From: david.saylor at beyondlucid.com (David Saylor) Date: Fri, 26 Jun 2020 14:45:49 -0400 Subject: [bioontology-support] RXNORM Properties In-Reply-To: <06AF2E09-20FD-4F62-928E-036E64F3FBE3@stanford.edu> References: <06AF2E09-20FD-4F62-928E-036E64F3FBE3@stanford.edu> Message-ID: Great, thank you as well! David Saylor, Chief Engineer *Beyond Lucid Technologies, Inc. * (650) 648-ePCR office (818) 660-5726 direct On Fri, Jun 26, 2020 at 2:23 PM Michael Dorf wrote: > Hi David, > > We?re replaced some of the original parameter names with more descriptive > counterparts, but the documentation still shows the original names in some > places. The old names have been preserved for backwards compatibility. In > this case ?display? is equivalent to ?include?, which still works and is > documented: > > > https://data.bioontology.org/search?q=Acetaminophen&ontologies=RXNORM&page=1&pagesize=2&roots_only=true&include=prefLabel,synonym,definition,notation,cui,semanticType,properties > > It does look like ?properties? isn?t on that list, however. I?ll make sure > to have this updated in our next release. Thank you for bringing this to > our attention! > > Michael > > > > On Jun 26, 2020, at 10:38 AM, David Saylor > wrote: > > Yes, I think that's just what we need! I don't see the display parameter > in the documentation. Is that intentional? > > We'll continue on our side. > > Thank you! > > Best regards, > David > > David Saylor, Chief Engineer > *Beyond Lucid Technologies, Inc. * > (650) 648-ePCR office > (818) 660-5726 direct > > > On Wed, Jun 24, 2020 at 6:52 PM Michael Dorf wrote: > >> Hi David, >> >> Thanks for contacting us. All of the attributes of a calls are stored in >> the ?properties? collection. You should be able to get those by using the >> ?display? query parameter: >> >> >> https://data.bioontology.org/search?q=Acetaminophen&ontologies=RXNORM&page=1&pagesize=2&roots_only=true&display=prefLabel,synonym,definition,notation,cui,semanticType,properties >> >> Let me know if this works. >> >> Thanks! >> >> Michael >> >> On Jun 24, 2020, at 8:52 AM, David Saylor >> wrote: >> >> Hello, we are trying to use the BioPortal API to look up RXNORM codes. >> We are able to do the search via a query like below. What we really want >> to know is the more detailed properties of a particular >> >> Here is the page for Acetaminophen (link >> ). >> We would really like to get the additional RXNORM properties from a page >> like, such as Has ingredient or Has ingredients. >> >> Could you let me know the best way to pull out those properties? >> >> Thanks and best regards, >> David >> >> *Query* >> >> https://data.bioontology.org/search?q=Acetaminophen&ontologies=RXNORM&page=1&pagesize=2&roots_only=True >> >> >> >> *First Result* >> { >> "page": 1, >> "pageCount": 883, >> "totalCount": 1766, >> "prevPage": null, >> "nextPage": 2, >> "links": { >> "nextPage": " >> http://data.bioontology.org/search?q=Acetaminophen&ontologies=RXNORM&page=2&pagesize=2&roots_only=True >> ", >> "prevPage": null >> }, >> "collection": [ >> { >> "prefLabel": "Acetaminophen", >> "cui": [ >> "C0000970" >> ], >> "semanticType": [ >> "T109", >> "T121" >> ], >> "obsolete": false, >> "matchType": "prefLabel", >> "ontologyType": "ONTOLOGY", >> "provisional": false, >> "@id": "http://purl.bioontology.org/ontology/RXNORM/161", >> "@type": "http://www.w3.org/2002/07/owl#Class", >> "links": { >> "self": " >> http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161 >> ", >> "ontology": "http://data.bioontology.org/ontologies/RXNORM", >> "children": " >> http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/children >> ", >> "parents": " >> http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/parents >> ", >> "descendants": " >> http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/descendants >> ", >> "ancestors": " >> http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/ancestors >> ", >> "instances": " >> http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/instances >> ", >> "tree": " >> http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/tree >> ", >> "notes": " >> http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/notes >> ", >> "mappings": " >> http://data.bioontology.org/ontologies/RXNORM/classes/http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161/mappings >> ", >> "ui": " >> http://bioportal.bioontology.org/ontologies/RXNORM?p=classes&conceptid=http%3A%2F%2Fpurl.bioontology.org%2Fontology%2FRXNORM%2F161 >> ", >> "@context": { >> "self": "http://www.w3.org/2002/07/owl#Class", >> "ontology": "http://data.bioontology.org/metadata/Ontology", >> "children": "http://www.w3.org/2002/07/owl#Class", >> "parents": "http://www.w3.org/2002/07/owl#Class", >> "descendants": "http://www.w3.org/2002/07/owl#Class", >> "ancestors": "http://www.w3.org/2002/07/owl#Class", >> "instances": "http://data.bioontology.org/metadata/Instance", >> "tree": "http://www.w3.org/2002/07/owl#Class", >> "notes": "http://data.bioontology.org/metadata/Note", >> "mappings": "http://data.bioontology.org/metadata/Mapping", >> "ui": "http://www.w3.org/2002/07/owl#Class" >> } >> }, >> "@context": { >> "@vocab": "http://data.bioontology.org/metadata/", >> "prefLabel": "http://data.bioontology.org/metadata/skosprefLabel >> ", >> "obsolete": "http://data.bioontology.org/metadata/owlobsolete", >> "semanticType": " >> http://data.bioontology.org/metadata/umlssemanticType", >> "cui": "http://data.bioontology.org/metadata/umlscui" >> } >> } >> ] >> } >> >> >> David Saylor, Chief Engineer >> *Beyond Lucid Technologies, Inc. * >> (650) 648-ePCR office >> (818) 660-5726 direct >> _______________________________________________ >> bioontology-support mailing list >> bioontology-support at lists.stanford.edu >> https://mailman.stanford.edu/mailman/listinfo/bioontology-support >> >> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From dlutz at mitre.org Sun Jun 28 07:41:22 2020 From: dlutz at mitre.org (David P Lutz) Date: Sun, 28 Jun 2020 14:41:22 +0000 Subject: [bioontology-support] Ontoportal licensing confusion Message-ID: We're doing an evaluation of ontology and vocabulary management systems as part of a larger project. OntoPortal is (by a large margin) the preferred system. Our intended use doesn't involve public access nor interacting with other Bio/OntoPortals (we're not in the bio-med space) . We have spun up an AWS AMI of the Virtual Appliance (with trial license) and are very excited by its capabilities. However, the requirement for a license from OntoPortal.org (a license beyond the open source license of the code itself) has raised some questions and may prevent us from considering OntoPortal. Is the license from OntoPortal.org strictly a license for the prebuilt Virtual Appliances (VMWare and AWS AMI)? A license to be part of the network of Bio/OntoPortal appliances? The documentation on GitHub hints that building the VA ourselves is difficult/impossible and it wasn't clear whether that would also require an Ontology.org license (since the licensing mechanism is built into the code). (You can imagine a lawyer's reaction to any plan that includes "and we then disable the licensing mechanism"). Beyond the letter of the license, we would also prefer not to violate the open-source spirit of the OntoPortal project. Any information even of the I'm-not-a-lawyer kind, would be greatly appreciated. Thanks Dave Lutz -------------- next part -------------- An HTML attachment was scrubbed... URL: From jgraybeal at stanford.edu Sun Jun 28 18:52:29 2020 From: jgraybeal at stanford.edu (John Graybeal) Date: Mon, 29 Jun 2020 01:52:29 +0000 Subject: [bioontology-support] Ontoportal licensing confusion In-Reply-To: References: Message-ID: <634AC59D-27FD-4BC2-B18D-6B22908A1750@stanford.edu> Dave, Thanks much for your email (and straightforward "I'm not a lawyer" language!). The license is in fact for downloading and running the distribution of the prebuilt Virtual Appliances, as you suggest. Building the VA yourself is entirely acceptable and does not require a license, since the code is open source. You're right the license mechanism is built into the open source code, but since that's BSD too, if you took that out for your own use we would have nothing legalistic to say about that. While we don't intentionally obfuscate anything, the scripts to build the system have evolved over time, so we just try to make clear building the VA yourself is not for the faint of heart. And our private repository necessarily includes our BioPortal 'secrets' in the configuration file; you can of course substitute your own secrets. I can't remember if we have a generic configuration file that's public, but if not we would provide one if asked. So far so good, I hope. Really we are not trying to game anyone, just trying to provide (a) a path toward sustainability, and (b) an understanding of who uses the system. Toward that end, and with your preference to not violate the open-source spirit of the OntoPortal project, we should talk directly about other options. You are not the only company who is interested in using and even contributing to OntoPortal, and there are different paths by which we might find an acceptable agreement that could help the sustainability of OntoPortal, and probably be a better option for you. I'll email you directly and we can see what's possible. John On Jun 28, 2020, at 7:41 AM, David P Lutz > wrote: We?re doing an evaluation of ontology and vocabulary management systems as part of a larger project. OntoPortal is (by a large margin) the preferred system. Our intended use doesn?t involve public access nor interacting with other Bio/OntoPortals (we?re not in the bio-med space) . We have spun up an AWS AMI of the Virtual Appliance (with trial license) and are very excited by its capabilities. However, the requirement for a license from OntoPortal.org (a license beyond the open source license of the code itself) has raised some questions and may prevent us from considering OntoPortal. Is the license from OntoPortal.orgstrictly a license for the prebuilt Virtual Appliances (VMWare and AWS AMI)? A license to be part of the network of Bio/OntoPortal appliances? The documentation on GitHub hints that building the VA ourselves is difficult/impossible and it wasn?t clear whether that would also require an Ontology.org license (since the licensing mechanism is built into the code). (You can imagine a lawyer?s reaction to any plan that includes ?and we then disable the licensing mechanism?). Beyond the letter of the license, we would also prefer not to violate the open-source spirit of the OntoPortal project. Any information even of the I?m-not-a-lawyer kind, would be greatly appreciated. Thanks Dave Lutz _______________________________________________ bioontology-support mailing list bioontology-support at lists.stanford.edu https://mailman.stanford.edu/mailman/listinfo/bioontology-support ======================== John Graybeal Technical Program Manager Center for Expanded Data Annotation and Retrieval /+/ NCBO BioPortal Stanford Center for Biomedical Informatics Research 650-736-1632 | ORCID 0000-0001-6875-5360 -------------- next part -------------- An HTML attachment was scrubbed... URL: From ZRaicik at jhancock.com Mon Jun 29 06:11:10 2020 From: ZRaicik at jhancock.com (Zak Raicik) Date: Mon, 29 Jun 2020 13:11:10 +0000 Subject: [bioontology-support] Access Code Notations via REST API Message-ID: <873DB2C5-ECC0-4D9D-9690-036459A8D700@contoso.com> Hi ? Is there any way to use the REST API to get a comprehensive listing off all codes/notations within a given class? For example, if I want to get a complete listing of all possible ICD10 codes from the API using python- is that possible? Thanks, Zak Raicik, FSA Director, Data Science Manulife STATEMENT OF CONFIDENTIALITY The information contained in this email message and any attachments may be confidential and legally privileged and is intended for the use of the addressee(s) only. If you are not an intended recipient, please: (1) notify me immediately by replying to this message; (2) do not use, disseminate, distribute or reproduce any part of the message or any attachment; and (3) destroy all copies of this message and any attachments. -------------- next part -------------- An HTML attachment was scrubbed... URL: From mdorf at stanford.edu Mon Jun 29 10:38:05 2020 From: mdorf at stanford.edu (Michael Dorf) Date: Mon, 29 Jun 2020 17:38:05 +0000 Subject: [bioontology-support] Access Code Notations via REST API In-Reply-To: <873DB2C5-ECC0-4D9D-9690-036459A8D700@contoso.com> References: <873DB2C5-ECC0-4D9D-9690-036459A8D700@contoso.com> Message-ID: <232D509A-B725-4541-A7DB-B6E506210E4E@stanford.edu> Hi Zak, Thank you for contacting us. You can retrieve this info programmatically in one of these two ways: 1. Using the /classes endpoint: http://data.bioontology.org/ontologies/ICD10/classes?display=prefLabel,synonym,definition,notation,cui,semanticType,properties&no_links=true&no_context=true&page=1 OR 2. Using the /search endpoint: http://data.bioontology.org/search?ontologies=ICD10&sort=prefLabel&display=prefLabel,synonym,definition,notation,cui,semanticType,properties&no_links=true&no_context=true&page=1 In the latter example, the results are being sorted by the prefLabel alphabetically. In your Python script, you can iterate over ALL ontology terms by processing the results one page at a time and incrementing the ?page=1? parameter on each subsequent call. The ICD10 code is stored in the field ?notation?. For the actual Python code, you can use some of the examples below as your starting point: https://github.com/ncbo/ncbo_rest_sample_code/tree/master/python Let us know if you have additional questions. Michael On Jun 29, 2020, at 6:11 AM, Zak Raicik > wrote: Hi ? Is there any way to use the REST API to get a comprehensive listing off all codes/notations within a given class? For example, if I want to get a complete listing of all possible ICD10 codes from the API using python- is that possible? Thanks, Zak Raicik, FSA Director, Data Science Manulife STATEMENT OF CONFIDENTIALITY The information contained in this email message and any attachments may be confidential and legally privileged and is intended for the use of the addressee(s) only. If you are not an intended recipient, please: (1) notify me immediately by replying to this message; (2) do not use, disseminate, distribute or reproduce any part of the message or any attachment; and (3) destroy all copies of this message and any attachments. _______________________________________________ bioontology-support mailing list bioontology-support at lists.stanford.edu https://mailman.stanford.edu/mailman/listinfo/bioontology-support -------------- next part -------------- An HTML attachment was scrubbed... URL: From ZRaicik at jhancock.com Mon Jun 29 11:04:26 2020 From: ZRaicik at jhancock.com (Zak Raicik) Date: Mon, 29 Jun 2020 18:04:26 +0000 Subject: [bioontology-support] [EXTERNAL] Re: Access Code Notations via REST API Message-ID: Hey Michael- Thanks for the response. My confusion is coming from the fact that I don?t see the field ?notation? as a key in the returning JSON. I attached my code below. Do you mind taking a quick look? import urllib.request, urllib.error, urllib.parse import json import os import pandas as pd from tqdm.notebook import tqdm REST_URL = http://data.bioontology.org def get_json(url): opener = urllib.request.build_opener() opener.addheaders = [('Authorization', 'apikey token=' + api_key)] return json.loads(opener.open(url).read()) ontologies = get_json(REST_URL+"/ontologies") url = [x['links']['classes'] for x in ontologies if 'icd10' in x['acronym'].lower()][2] codes = pd.DataFrame() page = get_json(url) NumberPages0 = page['pageCount'] EntriesPerPage = len([x for x in page['collection']]) for PageNumber in tqdm(range(NumberPages0)): NextPage = page['links']['nextPage'] for entry in range(EntriesPerPage): Id = page['collection'][entry]['@id'] code = Id.rsplit('/', 1)[-1] desc = page['collection'][entry]['prefLabel'] data = {"Code": code, "Description": desc} codes = codes.append(data,ignore_index=True) if NextPage is not None: page = get_json(NextPage) EntriesPerPage = len([x for x in page['collection']]) Zak Raicik, FSA Director, Data Science Manulife From: Michael Dorf Date: Monday, June 29, 2020 at 1:38 PM To: Zak Raicik Cc: "support at bioontology.org" Subject: [EXTERNAL] Re: [bioontology-support] Access Code Notations via REST API CAUTION This email is from an external sender, be cautious with links and attachments. Hi Zak, Thank you for contacting us. You can retrieve this info programmatically in one of these two ways: 1. Using the /classes endpoint: http://data.bioontology.org/ontologies/ICD10/classes?display=prefLabel,synonym,definition,notation,cui,semanticType,properties&no_links=true&no_context=true&page=1 OR 2. Using the /search endpoint: http://data.bioontology.org/search?ontologies=ICD10&sort=prefLabel&display=prefLabel,synonym,definition,notation,cui,semanticType,properties&no_links=true&no_context=true&page=1 In the latter example, the results are being sorted by the prefLabel alphabetically. In your Python script, you can iterate over ALL ontology terms by processing the results one page at a time and incrementing the ?page=1? parameter on each subsequent call. The ICD10 code is stored in the field ?notation?. For the actual Python code, you can use some of the examples below as your starting point: https://github.com/ncbo/ncbo_rest_sample_code/tree/master/python Let us know if you have additional questions. Michael On Jun 29, 2020, at 6:11 AM, Zak Raicik > wrote: Hi ? Is there any way to use the REST API to get a comprehensive listing off all codes/notations within a given class? For example, if I want to get a complete listing of all possible ICD10 codes from the API using python- is that possible? Thanks, Zak Raicik, FSA Director, Data Science Manulife STATEMENT OF CONFIDENTIALITY The information contained in this email message and any attachments may be confidential and legally privileged and is intended for the use of the addressee(s) only. If you are not an intended recipient, please: (1) notify me immediately by replying to this message; (2) do not use, disseminate, distribute or reproduce any part of the message or any attachment; and (3) destroy all copies of this message and any attachments. _______________________________________________ bioontology-support mailing list bioontology-support at lists.stanford.edu https://mailman.stanford.edu/mailman/listinfo/bioontology-support STATEMENT OF CONFIDENTIALITY The information contained in this email message and any attachments may be confidential and legally privileged and is intended for the use of the addressee(s) only. If you are not an intended recipient, please: (1) notify me immediately by replying to this message; (2) do not use, disseminate, distribute or reproduce any part of the message or any attachment; and (3) destroy all copies of this message and any attachments. -------------- next part -------------- An HTML attachment was scrubbed... URL: From vendetti at stanford.edu Mon Jun 29 11:36:52 2020 From: vendetti at stanford.edu (Jennifer Leigh Vendetti) Date: Mon, 29 Jun 2020 18:36:52 +0000 Subject: [bioontology-support] [EXTERNAL] Re: Access Code Notations via REST API In-Reply-To: References: Message-ID: Hi Zak, I?ve included a screen shot below of the data structure that?s returned from the REST API, which may help. If you request the properties for a given class in BioPortal, the JSON includes a ?properties? object. The object contains all of the properties attached to the class with full property names as keys. I?ve highlighted the notation property that you?re interested in accessing. Kind regards, Jennifer [cid:248A09D7-EC93-4154-B9DE-393C7E3F0900 at stanford.edu] On Jun 29, 2020, at 11:04 AM, Zak Raicik > wrote: Hey Michael- Thanks for the response. My confusion is coming from the fact that I don?t see the field ?notation? as a key in the returning JSON. I attached my code below. Do you mind taking a quick look? import urllib.request, urllib.error, urllib.parse import json import os import pandas as pd from tqdm.notebook import tqdm REST_URL = http://data.bioontology.org def get_json(url): opener = urllib.request.build_opener() opener.addheaders = [('Authorization', 'apikey token=' + api_key)] return json.loads(opener.open(url).read()) ontologies = get_json(REST_URL+"/ontologies") url = [x['links']['classes'] for x in ontologies if 'icd10' in x['acronym'].lower()][2] codes = pd.DataFrame() page = get_json(url) NumberPages0 = page['pageCount'] EntriesPerPage = len([x for x in page['collection']]) for PageNumber in tqdm(range(NumberPages0)): NextPage = page['links']['nextPage'] for entry in range(EntriesPerPage): Id = page['collection'][entry]['@id'] code = Id.rsplit('/', 1)[-1] desc = page['collection'][entry]['prefLabel'] data = {"Code": code, "Description": desc} codes = codes.append(data,ignore_index=True) if NextPage is not None: page = get_json(NextPage) EntriesPerPage = len([x for x in page['collection']]) Zak Raicik, FSA Director, Data Science Manulife From: Michael Dorf > Date: Monday, June 29, 2020 at 1:38 PM To: Zak Raicik > Cc: "support at bioontology.org" > Subject: [EXTERNAL] Re: [bioontology-support] Access Code Notations via REST API CAUTION This email is from an external sender, be cautious with links and attachments. Hi Zak, Thank you for contacting us. You can retrieve this info programmatically in one of these two ways: 1. Using the /classes endpoint: http://data.bioontology.org/ontologies/ICD10/classes?display=prefLabel,synonym,definition,notation,cui,semanticType,properties&no_links=true&no_context=true&page=1 OR 2. Using the /search endpoint: http://data.bioontology.org/search?ontologies=ICD10&sort=prefLabel&display=prefLabel,synonym,definition,notation,cui,semanticType,properties&no_links=true&no_context=true&page=1 In the latter example, the results are being sorted by the prefLabel alphabetically. In your Python script, you can iterate over ALL ontology terms by processing the results one page at a time and incrementing the ?page=1? parameter on each subsequent call. The ICD10 code is stored in the field ?notation?. For the actual Python code, you can use some of the examples below as your starting point: https://github.com/ncbo/ncbo_rest_sample_code/tree/master/python Let us know if you have additional questions. Michael On Jun 29, 2020, at 6:11 AM, Zak Raicik > wrote: Hi ? Is there any way to use the REST API to get a comprehensive listing off all codes/notations within a given class? For example, if I want to get a complete listing of all possible ICD10 codes from the API using python- is that possible? Thanks, Zak Raicik, FSA Director, Data Science Manulife STATEMENT OF CONFIDENTIALITY The information contained in this email message and any attachments may be confidential and legally privileged and is intended for the use of the addressee(s) only. If you are not an intended recipient, please: (1) notify me immediately by replying to this message; (2) do not use, disseminate, distribute or reproduce any part of the message or any attachment; and (3) destroy all copies of this message and any attachments. _______________________________________________ bioontology-support mailing list bioontology-support at lists.stanford.edu https://mailman.stanford.edu/mailman/listinfo/bioontology-support STATEMENT OF CONFIDENTIALITY The information contained in this email message and any attachments may be confidential and legally privileged and is intended for the use of the addressee(s) only. If you are not an intended recipient, please: (1) notify me immediately by replying to this message; (2) do not use, disseminate, distribute or reproduce any part of the message or any attachment; and (3) destroy all copies of this message and any attachments. _______________________________________________ bioontology-support mailing list bioontology-support at lists.stanford.edu https://mailman.stanford.edu/mailman/listinfo/bioontology-support -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: Screenshot 2020-06-29 11.24.08.png Type: image/png Size: 162619 bytes Desc: Screenshot 2020-06-29 11.24.08.png URL: From ZRaicik at jhancock.com Mon Jun 29 11:37:54 2020 From: ZRaicik at jhancock.com (Zak Raicik) Date: Mon, 29 Jun 2020 18:37:54 +0000 Subject: [bioontology-support] [EXTERNAL] Re: Access Code Notations via REST API In-Reply-To: References: Message-ID: <99015C98-54CF-40D6-A93B-84D7C566B329@jhancock.com> Ah, thank you! Didn?t realize it would be under properties. Thanks!! Zak Raicik, FSA Director, Data Science Manulife From: Jennifer Leigh Vendetti Date: Monday, June 29, 2020 at 2:37 PM To: Zak Raicik Cc: "support at bioontology.org" Subject: Re: [bioontology-support] [EXTERNAL] Re: Access Code Notations via REST API Hi Zak, I?ve included a screen shot below of the data structure that?s returned from the REST API, which may help. If you request the properties for a given class in BioPortal, the JSON includes a ?properties? object. The object contains all of the properties attached to the class with full property names as keys. I?ve highlighted the notation property that you?re interested in accessing. Kind regards, Jennifer [cid:image001.png at 01D64E22.DEF71E40] On Jun 29, 2020, at 11:04 AM, Zak Raicik > wrote: Hey Michael- Thanks for the response. My confusion is coming from the fact that I don?t see the field ?notation? as a key in the returning JSON. I attached my code below. Do you mind taking a quick look? import urllib.request, urllib.error, urllib.parse import json import os import pandas as pd from tqdm.notebook import tqdm REST_URL = http://data.bioontology.org def get_json(url): opener = urllib.request.build_opener() opener.addheaders = [('Authorization', 'apikey token=' + api_key)] return json.loads(opener.open(url).read()) ontologies = get_json(REST_URL+"/ontologies") url = [x['links']['classes'] for x in ontologies if 'icd10' in x['acronym'].lower()][2] codes = pd.DataFrame() page = get_json(url) NumberPages0 = page['pageCount'] EntriesPerPage = len([x for x in page['collection']]) for PageNumber in tqdm(range(NumberPages0)): NextPage = page['links']['nextPage'] for entry in range(EntriesPerPage): Id = page['collection'][entry]['@id'] code = Id.rsplit('/', 1)[-1] desc = page['collection'][entry]['prefLabel'] data = {"Code": code, "Description": desc} codes = codes.append(data,ignore_index=True) if NextPage is not None: page = get_json(NextPage) EntriesPerPage = len([x for x in page['collection']]) Zak Raicik, FSA Director, Data Science Manulife From: Michael Dorf > Date: Monday, June 29, 2020 at 1:38 PM To: Zak Raicik > Cc: "support at bioontology.org" > Subject: [EXTERNAL] Re: [bioontology-support] Access Code Notations via REST API CAUTION This email is from an external sender, be cautious with links and attachments. Hi Zak, Thank you for contacting us. You can retrieve this info programmatically in one of these two ways: 1. Using the /classes endpoint: http://data.bioontology.org/ontologies/ICD10/classes?display=prefLabel,synonym,definition,notation,cui,semanticType,properties&no_links=true&no_context=true&page=1 OR 2. Using the /search endpoint: http://data.bioontology.org/search?ontologies=ICD10&sort=prefLabel&display=prefLabel,synonym,definition,notation,cui,semanticType,properties&no_links=true&no_context=true&page=1 In the latter example, the results are being sorted by the prefLabel alphabetically. In your Python script, you can iterate over ALL ontology terms by processing the results one page at a time and incrementing the ?page=1? parameter on each subsequent call. The ICD10 code is stored in the field ?notation?. For the actual Python code, you can use some of the examples below as your starting point: https://github.com/ncbo/ncbo_rest_sample_code/tree/master/python Let us know if you have additional questions. Michael On Jun 29, 2020, at 6:11 AM, Zak Raicik > wrote: Hi ? Is there any way to use the REST API to get a comprehensive listing off all codes/notations within a given class? For example, if I want to get a complete listing of all possible ICD10 codes from the API using python- is that possible? Thanks, Zak Raicik, FSA Director, Data Science Manulife STATEMENT OF CONFIDENTIALITY The information contained in this email message and any attachments may be confidential and legally privileged and is intended for the use of the addressee(s) only. If you are not an intended recipient, please: (1) notify me immediately by replying to this message; (2) do not use, disseminate, distribute or reproduce any part of the message or any attachment; and (3) destroy all copies of this message and any attachments. _______________________________________________ bioontology-support mailing list bioontology-support at lists.stanford.edu https://mailman.stanford.edu/mailman/listinfo/bioontology-support STATEMENT OF CONFIDENTIALITY The information contained in this email message and any attachments may be confidential and legally privileged and is intended for the use of the addressee(s) only. If you are not an intended recipient, please: (1) notify me immediately by replying to this message; (2) do not use, disseminate, distribute or reproduce any part of the message or any attachment; and (3) destroy all copies of this message and any attachments. _______________________________________________ bioontology-support mailing list bioontology-support at lists.stanford.edu https://mailman.stanford.edu/mailman/listinfo/bioontology-support STATEMENT OF CONFIDENTIALITY The information contained in this email message and any attachments may be confidential and legally privileged and is intended for the use of the addressee(s) only. If you are not an intended recipient, please: (1) notify me immediately by replying to this message; (2) do not use, disseminate, distribute or reproduce any part of the message or any attachment; and (3) destroy all copies of this message and any attachments. -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: image001.png Type: image/png Size: 162620 bytes Desc: image001.png URL: From mdorf at stanford.edu Mon Jun 29 11:39:29 2020 From: mdorf at stanford.edu (Michael Dorf) Date: Mon, 29 Jun 2020 18:39:29 +0000 Subject: [bioontology-support] [EXTERNAL] Re: Access Code Notations via REST API In-Reply-To: References: Message-ID: Hi Zak, My Python is a bit rusty (we mostly use Ruby in our in-house stack), but I can comment on the execution. ontologies = get_json(REST_URL+"/ontologies") url = [x['links']['classes'] for x in ontologies if 'icd10' in x['acronym'].lower()][2] It looks like you are calling the /ontologies REST endpoint, then iterating over the results to: a) find the ICD10 ontology; and b) extract the link to classes for ICD10 ontology. This code is redundant. Your link to the /classes endpoint of ICD10 ontology is already well known, you don?t need to look for it: http://data.bioontology.org/ontologies/ICD10/classes?display=prefLabel,synonym,definition,notation,cui,semanticType,properties&no_links=true&no_context=true&page=1 To get the notation field, you must explicitly ask for it by using the ?display? parameter. So the pseudocode for your operation should look like this (sorry, I can?t write it in straight Python): counter = 1 page_url = REST_URL + "/ontologies/ICD10/classes?display=prefLabel,synonym,definition,notation,cui,semanticType,properties&no_links=true&no_context=true&page=" classes_page = get_gson(REST_URL + page_url + counter.to_string) while classes_page['collection?] != null for single_class in class_pages['collection?] icd10_code = single_class[?notation?] # do stuff with the icd10_code counter += 1 classes_page = get_gson(REST_URL + page_url + counter.to_string) Hope you can convert it to what you need. Thanks! Michael On Jun 29, 2020, at 11:04 AM, Zak Raicik > wrote: Hey Michael- Thanks for the response. My confusion is coming from the fact that I don?t see the field ?notation? as a key in the returning JSON. I attached my code below. Do you mind taking a quick look? import urllib.request, urllib.error, urllib.parse import json import os import pandas as pd from tqdm.notebook import tqdm REST_URL = http://data.bioontology.org def get_json(url): opener = urllib.request.build_opener() opener.addheaders = [('Authorization', 'apikey token=' + api_key)] return json.loads(opener.open(url).read()) ontologies = get_json(REST_URL+"/ontologies") url = [x['links']['classes'] for x in ontologies if 'icd10' in x['acronym'].lower()][2] codes = pd.DataFrame() page = get_json(url) NumberPages0 = page['pageCount'] EntriesPerPage = len([x for x in page['collection']]) for PageNumber in tqdm(range(NumberPages0)): NextPage = page['links']['nextPage'] for entry in range(EntriesPerPage): Id = page['collection'][entry]['@id'] code = Id.rsplit('/', 1)[-1] desc = page['collection'][entry]['prefLabel'] data = {"Code": code, "Description": desc} codes = codes.append(data,ignore_index=True) if NextPage is not None: page = get_json(NextPage) EntriesPerPage = len([x for x in page['collection']]) Zak Raicik, FSA Director, Data Science Manulife From: Michael Dorf > Date: Monday, June 29, 2020 at 1:38 PM To: Zak Raicik > Cc: "support at bioontology.org" > Subject: [EXTERNAL] Re: [bioontology-support] Access Code Notations via REST API CAUTION This email is from an external sender, be cautious with links and attachments. Hi Zak, Thank you for contacting us. You can retrieve this info programmatically in one of these two ways: 1. Using the /classes endpoint: http://data.bioontology.org/ontologies/ICD10/classes?display=prefLabel,synonym,definition,notation,cui,semanticType,properties&no_links=true&no_context=true&page=1 OR 2. Using the /search endpoint: http://data.bioontology.org/search?ontologies=ICD10&sort=prefLabel&display=prefLabel,synonym,definition,notation,cui,semanticType,properties&no_links=true&no_context=true&page=1 In the latter example, the results are being sorted by the prefLabel alphabetically. In your Python script, you can iterate over ALL ontology terms by processing the results one page at a time and incrementing the ?page=1? parameter on each subsequent call. The ICD10 code is stored in the field ?notation?. For the actual Python code, you can use some of the examples below as your starting point: https://github.com/ncbo/ncbo_rest_sample_code/tree/master/python Let us know if you have additional questions. Michael On Jun 29, 2020, at 6:11 AM, Zak Raicik > wrote: Hi ? Is there any way to use the REST API to get a comprehensive listing off all codes/notations within a given class? For example, if I want to get a complete listing of all possible ICD10 codes from the API using python- is that possible? Thanks, Zak Raicik, FSA Director, Data Science Manulife STATEMENT OF CONFIDENTIALITY The information contained in this email message and any attachments may be confidential and legally privileged and is intended for the use of the addressee(s) only. If you are not an intended recipient, please: (1) notify me immediately by replying to this message; (2) do not use, disseminate, distribute or reproduce any part of the message or any attachment; and (3) destroy all copies of this message and any attachments. _______________________________________________ bioontology-support mailing list bioontology-support at lists.stanford.edu https://mailman.stanford.edu/mailman/listinfo/bioontology-support STATEMENT OF CONFIDENTIALITY The information contained in this email message and any attachments may be confidential and legally privileged and is intended for the use of the addressee(s) only. If you are not an intended recipient, please: (1) notify me immediately by replying to this message; (2) do not use, disseminate, distribute or reproduce any part of the message or any attachment; and (3) destroy all copies of this message and any attachments. -------------- next part -------------- An HTML attachment was scrubbed... URL: From mdorf at stanford.edu Mon Jun 29 11:44:58 2020 From: mdorf at stanford.edu (Michael Dorf) Date: Mon, 29 Jun 2020 18:44:58 +0000 Subject: [bioontology-support] [EXTERNAL] Re: Access Code Notations via REST API In-Reply-To: References: Message-ID: Sorry, my email client has removed the original indentations: counter = 1 page_url = REST_URL + "/ontologies/ICD10/classes?display=prefLabel,synonym,definition,notation,cui,semanticType,properties&no_links=true&no_context=true&page=" classes_page = get_gson(REST_URL + page_url + counter.to_string) while classes_page['collection?] != null for single_class in class_page['collection?] icd10_code = single_class[?notation?] # do stuff with the icd10_code end for counter += 1 classes_page = get_gson(REST_URL + page_url + counter.to_string) end while On Jun 29, 2020, at 11:39 AM, Michael Dorf > wrote: Hi Zak, My Python is a bit rusty (we mostly use Ruby in our in-house stack), but I can comment on the execution. ontologies = get_json(REST_URL+"/ontologies") url = [x['links']['classes'] for x in ontologies if 'icd10' in x['acronym'].lower()][2] It looks like you are calling the /ontologies REST endpoint, then iterating over the results to: a) find the ICD10 ontology; and b) extract the link to classes for ICD10 ontology. This code is redundant. Your link to the /classes endpoint of ICD10 ontology is already well known, you don?t need to look for it: http://data.bioontology.org/ontologies/ICD10/classes?display=prefLabel,synonym,definition,notation,cui,semanticType,properties&no_links=true&no_context=true&page=1 To get the notation field, you must explicitly ask for it by using the ?display? parameter. So the pseudocode for your operation should look like this (sorry, I can?t write it in straight Python): counter = 1 page_url = REST_URL + "/ontologies/ICD10/classes?display=prefLabel,synonym,definition,notation,cui,semanticType,properties&no_links=true&no_context=true&page=" classes_page = get_gson(REST_URL + page_url + counter.to_string) while classes_page['collection?] != null for single_class in class_pages['collection?] icd10_code = single_class[?notation?] # do stuff with the icd10_code counter += 1 classes_page = get_gson(REST_URL + page_url + counter.to_string) Hope you can convert it to what you need. Thanks! Michael On Jun 29, 2020, at 11:04 AM, Zak Raicik > wrote: Hey Michael- Thanks for the response. My confusion is coming from the fact that I don?t see the field ?notation? as a key in the returning JSON. I attached my code below. Do you mind taking a quick look? import urllib.request, urllib.error, urllib.parse import json import os import pandas as pd from tqdm.notebook import tqdm REST_URL = http://data.bioontology.org def get_json(url): opener = urllib.request.build_opener() opener.addheaders = [('Authorization', 'apikey token=' + api_key)] return json.loads(opener.open(url).read()) ontologies = get_json(REST_URL+"/ontologies") url = [x['links']['classes'] for x in ontologies if 'icd10' in x['acronym'].lower()][2] codes = pd.DataFrame() page = get_json(url) NumberPages0 = page['pageCount'] EntriesPerPage = len([x for x in page['collection']]) for PageNumber in tqdm(range(NumberPages0)): NextPage = page['links']['nextPage'] for entry in range(EntriesPerPage): Id = page['collection'][entry]['@id'] code = Id.rsplit('/', 1)[-1] desc = page['collection'][entry]['prefLabel'] data = {"Code": code, "Description": desc} codes = codes.append(data,ignore_index=True) if NextPage is not None: page = get_json(NextPage) EntriesPerPage = len([x for x in page['collection']]) Zak Raicik, FSA Director, Data Science Manulife From: Michael Dorf > Date: Monday, June 29, 2020 at 1:38 PM To: Zak Raicik > Cc: "support at bioontology.org" > Subject: [EXTERNAL] Re: [bioontology-support] Access Code Notations via REST API CAUTION This email is from an external sender, be cautious with links and attachments. Hi Zak, Thank you for contacting us. You can retrieve this info programmatically in one of these two ways: 1. Using the /classes endpoint: http://data.bioontology.org/ontologies/ICD10/classes?display=prefLabel,synonym,definition,notation,cui,semanticType,properties&no_links=true&no_context=true&page=1 OR 2. Using the /search endpoint: http://data.bioontology.org/search?ontologies=ICD10&sort=prefLabel&display=prefLabel,synonym,definition,notation,cui,semanticType,properties&no_links=true&no_context=true&page=1 In the latter example, the results are being sorted by the prefLabel alphabetically. In your Python script, you can iterate over ALL ontology terms by processing the results one page at a time and incrementing the ?page=1? parameter on each subsequent call. The ICD10 code is stored in the field ?notation?. For the actual Python code, you can use some of the examples below as your starting point: https://github.com/ncbo/ncbo_rest_sample_code/tree/master/python Let us know if you have additional questions. Michael On Jun 29, 2020, at 6:11 AM, Zak Raicik > wrote: Hi ? Is there any way to use the REST API to get a comprehensive listing off all codes/notations within a given class? For example, if I want to get a complete listing of all possible ICD10 codes from the API using python- is that possible? Thanks, Zak Raicik, FSA Director, Data Science Manulife STATEMENT OF CONFIDENTIALITY The information contained in this email message and any attachments may be confidential and legally privileged and is intended for the use of the addressee(s) only. If you are not an intended recipient, please: (1) notify me immediately by replying to this message; (2) do not use, disseminate, distribute or reproduce any part of the message or any attachment; and (3) destroy all copies of this message and any attachments. _______________________________________________ bioontology-support mailing list bioontology-support at lists.stanford.edu https://mailman.stanford.edu/mailman/listinfo/bioontology-support STATEMENT OF CONFIDENTIALITY The information contained in this email message and any attachments may be confidential and legally privileged and is intended for the use of the addressee(s) only. If you are not an intended recipient, please: (1) notify me immediately by replying to this message; (2) do not use, disseminate, distribute or reproduce any part of the message or any attachment; and (3) destroy all copies of this message and any attachments. _______________________________________________ bioontology-support mailing list bioontology-support at lists.stanford.edu https://mailman.stanford.edu/mailman/listinfo/bioontology-support -------------- next part -------------- An HTML attachment was scrubbed... URL: From ZRaicik at jhancock.com Mon Jun 29 11:58:02 2020 From: ZRaicik at jhancock.com (Zak Raicik) Date: Mon, 29 Jun 2020 18:58:02 +0000 Subject: [bioontology-support] [EXTERNAL] Re: Access Code Notations via REST API In-Reply-To: References: Message-ID: No problem- thanks. I didn?t realize that was a display parameter I could toggle. This was helpful! Zak Raicik, FSA Director, Data Science Manulife From: Michael Dorf Date: Monday, June 29, 2020 at 2:45 PM To: Zak Raicik Cc: "support at bioontology.org" Subject: Re: [bioontology-support] [EXTERNAL] Re: Access Code Notations via REST API Sorry, my email client has removed the original indentations: counter = 1 page_url = REST_URL + "/ontologies/ICD10/classes?display=prefLabel,synonym,definition,notation,cui,semanticType,properties&no_links=true&no_context=true&page=" classes_page = get_gson(REST_URL + page_url + counter.to_string) while classes_page['collection?] != null for single_class in class_page['collection?] icd10_code = single_class[?notation?] # do stuff with the icd10_code end for counter += 1 classes_page = get_gson(REST_URL + page_url + counter.to_string) end while On Jun 29, 2020, at 11:39 AM, Michael Dorf > wrote: Hi Zak, My Python is a bit rusty (we mostly use Ruby in our in-house stack), but I can comment on the execution. ontologies = get_json(REST_URL+"/ontologies") url = [x['links']['classes'] for x in ontologies if 'icd10' in x['acronym'].lower()][2] It looks like you are calling the /ontologies REST endpoint, then iterating over the results to: a) find the ICD10 ontology; and b) extract the link to classes for ICD10 ontology. This code is redundant. Your link to the /classes endpoint of ICD10 ontology is already well known, you don?t need to look for it: http://data.bioontology.org/ontologies/ICD10/classes?display=prefLabel,synonym,definition,notation,cui,semanticType,properties&no_links=true&no_context=true&page=1 To get the notation field, you must explicitly ask for it by using the ?display? parameter. So the pseudocode for your operation should look like this (sorry, I can?t write it in straight Python): counter = 1 page_url = REST_URL + "/ontologies/ICD10/classes?display=prefLabel,synonym,definition,notation,cui,semanticType,properties&no_links=true&no_context=true&page=" classes_page = get_gson(REST_URL + page_url + counter.to_string) while classes_page['collection?] != null for single_class in class_pages['collection?] icd10_code = single_class[?notation?] # do stuff with the icd10_code counter += 1 classes_page = get_gson(REST_URL + page_url + counter.to_string) Hope you can convert it to what you need. Thanks! Michael On Jun 29, 2020, at 11:04 AM, Zak Raicik > wrote: Hey Michael- Thanks for the response. My confusion is coming from the fact that I don?t see the field ?notation? as a key in the returning JSON. I attached my code below. Do you mind taking a quick look? import urllib.request, urllib.error, urllib.parse import json import os import pandas as pd from tqdm.notebook import tqdm REST_URL = http://data.bioontology.org def get_json(url): opener = urllib.request.build_opener() opener.addheaders = [('Authorization', 'apikey token=' + api_key)] return json.loads(opener.open(url).read()) ontologies = get_json(REST_URL+"/ontologies") url = [x['links']['classes'] for x in ontologies if 'icd10' in x['acronym'].lower()][2] codes = pd.DataFrame() page = get_json(url) NumberPages0 = page['pageCount'] EntriesPerPage = len([x for x in page['collection']]) for PageNumber in tqdm(range(NumberPages0)): NextPage = page['links']['nextPage'] for entry in range(EntriesPerPage): Id = page['collection'][entry]['@id'] code = Id.rsplit('/', 1)[-1] desc = page['collection'][entry]['prefLabel'] data = {"Code": code, "Description": desc} codes = codes.append(data,ignore_index=True) if NextPage is not None: page = get_json(NextPage) EntriesPerPage = len([x for x in page['collection']]) Zak Raicik, FSA Director, Data Science Manulife From: Michael Dorf > Date: Monday, June 29, 2020 at 1:38 PM To: Zak Raicik > Cc: "support at bioontology.org" > Subject: [EXTERNAL] Re: [bioontology-support] Access Code Notations via REST API CAUTION This email is from an external sender, be cautious with links and attachments. Hi Zak, Thank you for contacting us. You can retrieve this info programmatically in one of these two ways: 1. Using the /classes endpoint: http://data.bioontology.org/ontologies/ICD10/classes?display=prefLabel,synonym,definition,notation,cui,semanticType,properties&no_links=true&no_context=true&page=1 OR 2. Using the /search endpoint: http://data.bioontology.org/search?ontologies=ICD10&sort=prefLabel&display=prefLabel,synonym,definition,notation,cui,semanticType,properties&no_links=true&no_context=true&page=1 In the latter example, the results are being sorted by the prefLabel alphabetically. In your Python script, you can iterate over ALL ontology terms by processing the results one page at a time and incrementing the ?page=1? parameter on each subsequent call. The ICD10 code is stored in the field ?notation?. For the actual Python code, you can use some of the examples below as your starting point: https://github.com/ncbo/ncbo_rest_sample_code/tree/master/python Let us know if you have additional questions. Michael On Jun 29, 2020, at 6:11 AM, Zak Raicik > wrote: Hi ? Is there any way to use the REST API to get a comprehensive listing off all codes/notations within a given class? For example, if I want to get a complete listing of all possible ICD10 codes from the API using python- is that possible? Thanks, Zak Raicik, FSA Director, Data Science Manulife STATEMENT OF CONFIDENTIALITY The information contained in this email message and any attachments may be confidential and legally privileged and is intended for the use of the addressee(s) only. If you are not an intended recipient, please: (1) notify me immediately by replying to this message; (2) do not use, disseminate, distribute or reproduce any part of the message or any attachment; and (3) destroy all copies of this message and any attachments. _______________________________________________ bioontology-support mailing list bioontology-support at lists.stanford.edu https://mailman.stanford.edu/mailman/listinfo/bioontology-support STATEMENT OF CONFIDENTIALITY The information contained in this email message and any attachments may be confidential and legally privileged and is intended for the use of the addressee(s) only. If you are not an intended recipient, please: (1) notify me immediately by replying to this message; (2) do not use, disseminate, distribute or reproduce any part of the message or any attachment; and (3) destroy all copies of this message and any attachments. _______________________________________________ bioontology-support mailing list bioontology-support at lists.stanford.edu https://mailman.stanford.edu/mailman/listinfo/bioontology-support STATEMENT OF CONFIDENTIALITY The information contained in this email message and any attachments may be confidential and legally privileged and is intended for the use of the addressee(s) only. If you are not an intended recipient, please: (1) notify me immediately by replying to this message; (2) do not use, disseminate, distribute or reproduce any part of the message or any attachment; and (3) destroy all copies of this message and any attachments. -------------- next part -------------- An HTML attachment was scrubbed... URL: From raphael.gazzotti at inria.fr Tue Jun 30 06:39:18 2020 From: raphael.gazzotti at inria.fr (Raphael Gazzotti) Date: Tue, 30 Jun 2020 15:39:18 +0200 (CEST) Subject: [bioontology-support] Internal error SPARQL endpoint Message-ID: <2045568816.7251498.1593524358994.JavaMail.zimbra@inria.fr> Dear administrators, I would like to point out that the SPARQL endpoint for the mappings (http://sparql.bioontology.org/mappings/sparql) seems to be down since it returns "ERROR 500". However, I do not have any problem with the endpoint related to ontologies (http://sparql.bioontology.org/ontologies/sparql). Best regards, Rapha?l Gazzotti, R&D Engineer at Inria, Universit? C?te d?Azur, CNRS, I3S, France -------------- next part -------------- An HTML attachment was scrubbed... URL: