Database SWI Prolog程序能否从外部数据库获取事实?

Database SWI Prolog程序能否从外部数据库获取事实?,database,prolog,swi-prolog,tinkerpop,Database,Prolog,Swi Prolog,Tinkerpop,我正在计划SWI Prolog程序(语义自然语言解析器),它有大量的动态事实(约30000个词条的词典)。是否可以将这些事实存储在外部数据库中。由于其他要求,我考虑使用Apache TinkerPop/JanusGraph/Cassandra作为我的数据库,但我也可以使用SQL/JDBC/ODBC数据库作为备份。是的,这当然是可能的,甚至可以通过几种不同的方法: 直接的方法是使用套接字或管道与外部数据库通信 另一种方法是使用SWI Prolog的C-接口和外部数据库的API 还有一种方法是使用高

我正在计划SWI Prolog程序(语义自然语言解析器),它有大量的动态事实(约30000个词条的词典)。是否可以将这些事实存储在外部数据库中。由于其他要求,我考虑使用Apache TinkerPop/JanusGraph/Cassandra作为我的数据库,但我也可以使用SQL/JDBC/ODBC数据库作为备份。

是的,这当然是可能的,甚至可以通过几种不同的方法:

直接的方法是使用套接字管道与外部数据库通信

另一种方法是使用SWI Prolog的C-接口和外部数据库的API

还有一种方法是使用高级约束接口,它与序言代码自然地融合在一起


除此之外,一个有30000个条目的数据库算不了什么,因此您很可能只需使用Prologfacts,并完全保留在prolog中,没有任何外部依赖项。

您没有检查手册吗?有到的绑定和其他一些选项。但我同意其他海报的说法,即30k lex条目听起来不太像。