Closed rbailey2 closed 1 year ago
Hi Rob,
It looks like you have concrete domain modelling (DataHasValue(:700000131000036101 "24"^^xsd:decimal) in the snapshot file and snowstorm 5.1.0 isn't supporting this yet. You need the develop version of Snowstorm for axioms with concrete domain.
Thanks
Michael
Hi @rbailey2, Further to this.. the development work for supporting for concrete domains has only just started. We have done some work on the RF2 import but concrete domain support for viewing concepts, ECL, RF2 export, classification and many other things have not been developed yet.
We will release a version of Snowstorm with support for viewing content with concrete domains by the end of January in time for the Concrete Domains International Edition Technical Preview around the end of Jan.
We will release a version of Snowstorm with support for authoring content with concrete domains during the first half of 2021.
Kind regards, Kai
Hi Michael and Kai,
Thanks for the response. I'll check back after January 👍
Cheers, Rob
I have a similar problem with this as well. However, I am using the latest snowstorm release jar.
java -Xms2g -Xmx4g -jar snowstorm-6.0.3.jar --delete-indices --import=~/Downloads/SnomedCT_Release_AU1000036_20210131.zip --exit
See error.
java.lang.IllegalStateException: Failed to update semantic index. Failed to convert axiom EquivalentClasses(:782706003 ObjectSomeValuesFrom(:609096000 ObjectSomeValuesFrom(:424876005 :260635009)))
at org.snomed.snowstorm.core.data.services.SemanticIndexUpdateService.preCommitCompletion(SemanticIndexUpdateService.java:92)
at io.kaicode.elasticvc.api.BranchService.completeCommit(BranchService.java:398)
at io.kaicode.elasticvc.domain.Commit.close(Commit.java:61)
at org.snomed.snowstorm.core.rf2.rf2import.ImportComponentFactoryImpl.completeImportCommit(ImportComponentFactoryImpl.java:217)
at org.snomed.snowstorm.core.rf2.rf2import.ImportComponentFactoryImpl.loadingComponentsCompleted(ImportComponentFactoryImpl.java:206)
at org.ihtsdo.otf.snomedboot.ReleaseImporter$ImportRun.doLoadReleaseFiles(ReleaseImporter.java:228)
at org.ihtsdo.otf.snomedboot.ReleaseImporter$ImportRun.doLoadReleaseFiles(ReleaseImporter.java:180)
at org.ihtsdo.otf.snomedboot.ReleaseImporter$ImportRun.access$100(ReleaseImporter.java:164)
at org.ihtsdo.otf.snomedboot.ReleaseImporter.loadSnapshotReleaseFiles(ReleaseImporter.java:44)
at org.ihtsdo.otf.snomedboot.ReleaseImporter.loadSnapshotReleaseFiles(ReleaseImporter.java:68)
at org.snomed.snowstorm.core.rf2.rf2import.ImportService.snapshotImport(ImportService.java:209)
at org.snomed.snowstorm.core.rf2.rf2import.ImportService.importFiles(ImportService.java:167)
at org.snomed.snowstorm.core.rf2.rf2import.ImportService.importArchive(ImportService.java:118)
at org.snomed.snowstorm.core.rf2.rf2import.ImportService$$FastClassBySpringCGLIB$$3479d1da.invoke(<generated>)
at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:687)
at org.snomed.snowstorm.core.rf2.rf2import.ImportService$$EnhancerBySpringCGLIB$$5e889626.importArchive(<generated>)
at org.snomed.snowstorm.SnowstormApplication.importEditionRF2FromDisk(SnowstormApplication.java:135)
at org.snomed.snowstorm.SnowstormApplication.run(SnowstormApplication.java:95)
at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:786)
at org.springframework.boot.SpringApplication.callRunners(SpringApplication.java:776)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:322)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1237)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1226)
at org.snomed.snowstorm.SnowstormApplication.main(SnowstormApplication.java:59)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:49)
at org.springframework.boot.loader.Launcher.launch(Launcher.java:109)
at org.springframework.boot.loader.Launcher.launch(Launcher.java:58)
at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:88)
Caused by: org.snomed.otf.owltoolkit.conversion.ConversionException: Failed to convert axiom EquivalentClasses(:782706003 ObjectSomeValuesFrom(:609096000 ObjectSomeValuesFrom(:424876005 :260635009)))
at org.snomed.snowstorm.core.data.services.SemanticIndexUpdateService.lambda$axiomStreamToRelationshipStream$23(SemanticIndexUpdateService.java:630)
at java.util.Iterator.forEachRemaining(Iterator.java:116)
at org.snomed.snowstorm.core.data.services.SemanticIndexUpdateService.axiomStreamToRelationshipStream(SemanticIndexUpdateService.java:610)
at org.snomed.snowstorm.core.data.services.SemanticIndexUpdateService.buildRelevantPartsOfExistingGraph(SemanticIndexUpdateService.java:428)
at org.snomed.snowstorm.core.data.services.SemanticIndexUpdateService.updateSemanticIndex(SemanticIndexUpdateService.java:150)
at org.snomed.snowstorm.core.data.services.SemanticIndexUpdateService.updateStatedAndInferredSemanticIndex(SemanticIndexUpdateService.java:117)
at org.snomed.snowstorm.core.data.services.SemanticIndexUpdateService.preCommitCompletion(SemanticIndexUpdateService.java:90)
... 32 common frames omitted
Caused by: org.snomed.otf.owltoolkit.conversion.ConversionException: Expecting ObjectIntersectionOf at first level of expression, got ObjectSomeValuesFrom in expression ObjectSomeValuesFrom(<http://snomed.info/id/609096000> ObjectSomeValuesFrom(<http://snomed.info/id/424876005> <http://snomed.info/id/260635009>)).
at org.snomed.otf.owltoolkit.conversion.AxiomRelationshipConversionService.getRelationships(AxiomRelationshipConversionService.java:282)
at org.snomed.otf.owltoolkit.conversion.AxiomRelationshipConversionService.convertAxiomToRelationships(AxiomRelationshipConversionService.java:156)
at org.snomed.otf.owltoolkit.conversion.AxiomRelationshipConversionService.convertAxiomToRelationships(AxiomRelationshipConversionService.java:56)
at org.snomed.snowstorm.core.data.services.AxiomConversionService.convertAxiomMemberToAxiomRepresentation(AxiomConversionService.java:43)
at org.snomed.snowstorm.core.data.services.SemanticIndexUpdateService.lambda$axiomStreamToRelationshipStream$23(SemanticIndexUpdateService.java:612)
... 38 common frames omitted ```
Hi @rbailey2,
The axiom you are trying to load seems to be malformed EquivalentClasses(:782706003 ObjectSomeValuesFrom(:609096000 ObjectSomeValuesFrom(:424876005 :260635009)))
.
A formatted version of this axiom looks like this:
EquivalentClasses(
:782706003 | Subconjunctival insertion of transcleral gelatin stent (procedure) |
ObjectSomeValuesFrom(
:609096000 | Role group (attribute) |
ObjectSomeValuesFrom(
:424876005 | Surgical approach (attribute) |
:260635009 | Transcleral approach (qualifier value) |
)
)
)
This appears to be the axiom of a defined concept but the format of the axiom is unexpected because no parent concept has been stated. Our tooling expects axioms which have attributes to include ObjectIntersectionOf
, containing the parents and the attributes.
For example:
EquivalentClasses(
:782706003 | Subconjunctival insertion of transcleral gelatin stent (procedure) |
ObjectIntersectionOf(
:71388002 |Procedure (procedure)|
ObjectSomeValuesFrom(
:609096000 | Role group (attribute) |
ObjectSomeValuesFrom(
:424876005 | Surgical approach (attribute) |
:260635009 | Transcleral approach (qualifier value) |
)
)
)
)
The complete axiom for this concept from the International Edition can be seen in the SNOMED CT Browser in the "Expression" tab.
Thanks for this @kaicode. Is there a way around loading other editions with axioms without parent concepts? Or the system is limited to loading Int'l edition of RF2 files for now.
We have successfully loaded 13 editions and extensions, other than the International Edition, into Snowstorm (see SNOMED CT Browser which runs off the Snowstorm API).
This axiom is very unusual. My understanding is that the AU release does not usually contain axioms, only inferred relationships, it is a special package that you have?
Not a special package. I got the most recent release from the Australian Digital Health centre. However I am able to load the Int'l edition into snowstorm. So it must be the AU release with the issue.
@olamide226 I've downloaded the AU release NCTS_SCT_RF2_DISTRIBUTION_32506021000036107-20210228-ALL.zip
to take a look. There are two axioms for the concept 782706003
, one is active and one is inactive. It's the inactive axiom that has the unexpected format, this row:
dd71a742-e976-47c0-b9e6-ae3cf4271563 20200331 0 32506021000036107 733073007 782706003 EquivalentClasses(:782706003 ObjectSomeValuesFrom(:609096000 ObjectSomeValuesFrom(:424876005 :260635009)))
An easy workaround to get the AU extension to load would be to remove this row from the SnomedCT_Release_AU1000036_20210228/RF2Release/Snapshot/Terminology/sct2_sRefset_OWLExpressionSnapshot_AU1000036_20210228.txt
file within the zip file before loading.
Closing this issue due to inactivity.
Hi,
I have set up a new Ubuntu 20.04 server, with OpenJDK version 1.8.0_275. I have downloaded and started ElasticSearch 7.7.0.
The server specs are as follows:
I'm starting ElasticSearch with "-Xms4g -Xmx4g", configured in config/jvm.options
I have downloaded Snowstorm 5.1.0
I'm attempting to import the 20201130 data using the following command:
The above command fails, the following error showing up first:
The same occurs when I attempt to use --import-full and the full data zip file.
Am I doing something wrong? I've attached the Snowstorm and ElasticSearch logs.
elasticsearch-2020-11-27-1.log.gz snowstorm-5.1.0_output.log
Thanks, Rob