That's the other weird thing.  I don't see that either.  Let me try to build 
the graph again.

-----Original Message-----
From: Miller, Timothy [mailto:[email protected]] 
Sent: Friday, January 29, 2016 1:16 PM
To: [email protected]
Subject: Re: umls graph api

I don't have 2015AA downloaded but I'll try to get it and see if I can 
reproduce. Before the test fails, do you see output from the other tests
like:

Ancestor (hypernym) is: C1304819
Ancestor (hypernym) is: C0346629
Ancestor (hypernym) is: C0009375
Ancestor (hypernym) is: C0009373
Ancestor (hypernym) is: C0006826
... (many more lines like this)

If so, it could be that it is indexing correctly but my test is 2015AB specific 
somehow.

Tim


On 01/29/2016 01:12 PM, Geise, Brandon D. wrote:
> java.lang.AssertionError
>       at org.junit.Assert.fail(Assert.java:92)
>       at org.junit.Assert.assertTrue(Assert.java:43)
>       at org.junit.Assert.assertTrue(Assert.java:54)
>       at TestGraphFunctions.testHypernyms(TestGraphFunctions.java:38)
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
>       at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
>       at java.lang.reflect.Method.invoke(Unknown Source)
>       at 
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45)
>       at 
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
>       at 
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42)
>       at 
> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
>       at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263)
>       at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68)
>       at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47)
>       at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231)
>       at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60)
>       at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229)
>       at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50)
>       at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222)
>       at org.junit.runners.ParentRunner.run(ParentRunner.java:300)
>       at 
> org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
>       at 
> org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
>       at 
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459)
>       at 
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675)
>       at 
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
>       at 
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTest
> Runner.java:192)
>
> -----Original Message-----
> From: Miller, Timothy [mailto:[email protected]]
> Sent: Friday, January 29, 2016 1:09 PM
> To: [email protected]
> Subject: Re: umls graph api
>
> I was using 2015AB. Can you copy/paste the error trace that junit gives you?
> Thanks
> Tim
>
>
> On 01/29/2016 01:04 PM, Geise, Brandon D. wrote:
>> Very cool.
>>
>> I started going through your instructions.  Everything seemed to be working 
>> except for the GraphFunction Junit test fails on the first assertion.  I'm 
>> using 2015AA and it doesn't appear that the isa relationship holds true, 
>> unless I messed something up.  What UMLS version did you test with?
>>
>> Thanks,
>> Brandon
>>
>> -----Original Message-----
>> From: Miller, Timothy [mailto:[email protected]]
>> Sent: Tuesday, January 26, 2016 2:59 PM
>> To: [email protected]
>> Subject: umls graph api
>>
>> I've been working on some code for easy querying of the UMLS relation graph 
>> that I think might be useful in ctakes. The repo is here:
>> https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_tmill
>> s_umls-2Dgraph-2Dapi&d=BQIFAg&c=qS4goWBT7poplM69zy_3xhKwEW14JZMSdioCo
>> ppxeFU&r=Heup-IbsIg9Q1TPOylpP9FE4GTK-OqdTDRRNQXipowRLRjx0ibQrHEo8uYx6
>> 674h&m=VF6tEMHRXUuomFk3Rma04eOozJC4amQHvm7PfAsXqvw&s=J_kg_cPwEhOWJIDI
>> 06-lORddJf83jmbb_I-MwkC_3Zg&e=
>>
>> If you point it at your umls download you can build the db in about 5 
>> minutes (45 MB). Then the API has a class GraphFunctions with the following 
>> methods:
>>
>>   public static List<String> getHypernyms(String cui);
>>   public static List<String> getHyponyms(String cui);
>>   public static boolean isa(String cui1, String cui2);
>>
>> These make use of just the "isa" relation in the MRREL file, and 
>> could tell you, for example, that
>>
>> isa("C0007102",  "C3662248") is true (colon cancer is a finding) but that 
>> isa("C3662248", "C0007102") is not true.
>>
>> If people find it useful enough we may wish to add it to ctakes and perhaps 
>> we could redistribute this view of the UMLS subject to the same username 
>> checking we do now for the dictionary. We may wish to include other 
>> relations and ontologies as well -- right now just SNOMED. But this is the 
>> skeleton and I think with this starting point adding new capabilities will 
>> be pretty easy.
>>
>> Tim
>>
>>
>>
>> IMPORTANT WARNING: The information in this message (and the documents 
>> attached to it, if any) is confidential and may be legally privileged. It is 
>> intended solely for the addressee. Access to this message by anyone else is 
>> unauthorized. If you are not the intended recipient, any disclosure, 
>> copying, distribution or any action taken, or omitted to be taken, in 
>> reliance on it is prohibited and may be unlawful. If you have received this 
>> message in error, please delete all electronic copies of this message (and 
>> the documents attached to it, if any), destroy any hard copies you may have 
>> created and notify me immediately by replying to this email. Thank you.
>>
>> Geisinger Health System utilizes an encryption process to safeguard 
>> Protected Health Information and other confidential data contained in 
>> external e-mail messages. If email is encrypted, the recipient will receive 
>> an e-mail instructing them to sign on to the Geisinger Health System Secure 
>> E-mail Message Center to retrieve the encrypted e-mail.
>>
>
>


Reply via email to