IHTSDO / classification-service

Standalone Classification Service providing OWL Reasoning against SNOMED CT RF2 files.
Other
13 stars 1 forks source link

Classification error #12

Closed liquid36 closed 1 year ago

liquid36 commented 1 year ago

Hi, i created a classification task with Snowstorm but i got the following error:

org.snomed.otf.owltoolkit.service.ReasonerServiceException: Failed to convert OWL Axiom Expressions into relationships for normal form generation.
    at org.snomed.otf.owltoolkit.service.SnomedReasonerService.classify(SnomedReasonerService.java:163)
    at org.snomed.otf.reasoner.server.service.ClassificationJobManager.classify(ClassificationJobManager.java:150)
    at org.snomed.otf.reasoner.server.service.ClassificationJobManager.consumeClassificationJob(ClassificationJobManager.java:116)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    at org.springframework.messaging.handler.invocation.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:170)
    at org.springframework.messaging.handler.invocation.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:120)
    at org.springframework.jms.listener.adapter.MessagingMessageListenerAdapter.invokeHandler(MessagingMessageListenerAdapter.java:114)
    at org.springframework.jms.listener.adapter.MessagingMessageListenerAdapter.onMessage(MessagingMessageListenerAdapter.java:77)
    at org.springframework.jms.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContainer.java:736)
    at org.springframework.jms.listener.AbstractMessageListenerContainer.invokeListener(AbstractMessageListenerContainer.java:696)
    at org.springframework.jms.listener.AbstractMessageListenerContainer.doExecuteListener(AbstractMessageListenerContainer.java:674)
    at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:318)
    at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:257)
    at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:1189)
    at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.executeOngoingLoop(DefaultMessageListenerContainer.java:1179)
    at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:1076)
    at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: org.snomed.otf.owltoolkit.conversion.ConversionException: Expecting Class or ObjectSomeValuesFrom at second level of expression, got DataHasValue in expression ObjectIntersectionOf(<http://snomed.info/id/763158003> ObjectSomeValuesFrom(<http://snomed.info/id/609096000> ObjectSomeValuesFrom(<http://snomed.info/id/127489000> <http://snomed.info/id/385469007>)) DataHasValue(<http://snomed.info/id/1142139005> "1"^^xsd:integer)).
    at org.snomed.otf.owltoolkit.conversion.AxiomRelationshipConversionService.getRelationships(AxiomRelationshipConversionService.java:272)
    at org.snomed.otf.owltoolkit.conversion.AxiomRelationshipConversionService.convertAxiomToRelationships(AxiomRelationshipConversionService.java:119)
    at org.snomed.otf.owltoolkit.conversion.AxiomRelationshipConversionService.convertAxiomsToRelationships(AxiomRelationshipConversionService.java:150)
    at org.snomed.otf.owltoolkit.service.SnomedReasonerService.classify(SnomedReasonerService.java:161)
    ... 19 common frames omitted

I got this error with the international edition and Argentinian edition. am i missing something?

kaicode commented 1 year ago

It looks like you are using a very old version of the Classification Service, that does not support concrete domains. Please upgrade to the latest. There have been many enhancements in the last few years.

Today the current Classification Service version we have in production is 7.2.0. For this repository recent versions can be found under the tag section. You can always drop us a note to check what version we currently have in production.

liquid36 commented 1 year ago

Yes, you are right. I download the JAR file from releases section but it is not updated. I built the classification service from source and it's working now. Thanks.