是否存在用于回答一般 Prolog 查询的 JSON-RPC 服务器?
Posted
技术标签:
【中文标题】是否存在用于回答一般 Prolog 查询的 JSON-RPC 服务器?【英文标题】:Does a JSON-RPC server exist for answering general Prolog queries? 【发布时间】:2012-08-16 21:01:46 【问题描述】:我看到tutorial 为 SWI-Prolog 编写 JSON-RPC 服务器。不幸的是,它所做的只是添加两个数字。我想知道是否存在用于 SWI-Prolog 的 RPC 服务器,它可以定义新规则并回答一般 Prolog 查询、返回 JSON 列表等?
【问题讨论】:
【参考方案1】:当您自豪地在 SWI-Prolog website 上进行游览时,您可以在工作中看到 http package 提供的一些功能。
这是一个相当大范围的工具,要掌握系统的基本知识,最简单的方法是按照特定的How to部分,一步一步来。 LOD Crawler 中有一个你应该注意的小错误:在 lod.pl 的第 42 行添加一个选项:
...
; rdf_load(URI2, [format(xml)]),
....
否则你可能会得到
内部服务器错误
域错误:
content_type' expected, found
text/xml;charset=UTF-8'
运行示例时。
IDE 的一个重要特性是能够调试 HTTP 请求。
完成 HowTo 后,您可以查看 Cliopatria,它专门用于将 RDF 连接到 html。它带有pirates demo
,我必须说我觉得它对我的口味来说有点太“粗鲁”了,而且我不知道 YUI,用于获奖的MultimediaN 项目。然后我使用Bootstrap 获得了前端的现代外观,并取得了可观的效果(很抱歉我还不能发布它,需要更多时间来设计系统)。
HTH
【讨论】:
我试用了 Cliopatria,但我发现用户界面只允许 SPARQL 和 SeRQL 查询。我不知道如何发出 Prolog 查询和定义新规则。 在响应 http 请求时隐式使用 Prolog 查询:参见 library(http/http_parameter) 和 http_handler。 How To 'demo' 很好地涵盖了基本用法以上是关于是否存在用于回答一般 Prolog 查询的 JSON-RPC 服务器?的主要内容,如果未能解决你的问题,请参考以下文章