将SNOMED CT导入Neo4J

时间:2017-01-19 13:39:04

标签: neo4j graph-databases ontology titan snomed-ct

我需要将SNOMED CT本体导入图形数据库,在本例中为Neo4J,但最终可能是另一种选择。

然而,为了实现这一点,我无法找到SNOMED CT底层关系数据模型的清晰描述。或者至少是简化的SQL视图,它以可以映射到图形数据库的方式公开实体关系。

我非常感谢此事的任何指导或以前的经验。

4 个答案:

答案 0 :(得分:5)

直接尝试序列化关系数据模型可能会非常困难,并且会让您远离目标。

值得注意的是,SNOMED数据实际上已经以RDF格式提供。因此,您可以获得" free"的图形结构。

例如,this项目以RDF格式提供数据,无论您选择Titan还是Neo4j,将RDF数据放入图表都非常简单。

旁注:

我的一位同事实际上已经将SNOMED数据导入Grakn Graph,这是我们都在研究的语义图系统。如果您有兴趣,可以查看他的作品here。 Grakn是一个在Titan之上运行的语义图解决方案。

答案 1 :(得分:1)

实际上有三个表,概念,描述和关系

你会在这里找到它们: https://confluence.ihtsdotools.org/display/DOCTIG/3.1.+Components

最重要的是关系与概念,描述和概念之间的关系。

答案 2 :(得分:1)

如果您正在寻找有关如何将概念,描述和关系建模到图形数据库中的示例。我在Github有一个示例项目,可以将Snomed数据上传到Neo4j数据库。

https://github.com/pradeepvemulakonda/Snomed

在进入实施细节之前,我建议您尝试使用以下Snomed数据浏览器

http://ontoserver.csiro.au/shrimp/

一旦您了解了概念和关系,您就可以完成实施。您可以使用以下要点来了解如何在Neo4j中查询上传的概念和关系。

https://neo4j.com/graphgist/95f4f165-0172-4b3d-981b-edcbab2e0a4b#listing_category=health-care-and-science

答案 3 :(得分:1)

可以使用NIH发布的UMLS(统一医学语言系统)将SNOMED加载到MySQL中。一旦加载,表MRREL就包含了SNOMED节点之间的所有关系。如果你想在Neo4j中立即加载它,你可以完全跳过MySQL步骤并直接使用UMLS RRF文件。 RRF文档格式不是很好,但文件很容易解析表格文本。