协作本体构建和Prolog

问题描述 投票:3回答:1

哪些技术适合创建允许用户添加事实,编辑事实和查询此信息的网页?我一直在Prolog中构建知识库和推理规则,但是想在网上查看事实部分和查询。更具体地说,我正在寻找以下功能:

  • 最终用户可以添加和编辑事实的Web界面,例如“吸烟导致癌症概率为0.02”。这应该最好是可访问的,不涉及编写Prolog或其他代码(例如从三个列表中选择主题,关系和对象)。在这里,有一些功能可以看到知识库中是否已经存在某些概念(例如,如果用户输入有关癌症的事实并且癌症的概念已经存在于知识库中,则应该显示,优选地也是相关的概念)。也许一些下拉菜单或列表可以实现这一点。
  • 管理用户配置文件,密码,权限等的功能
  • 最终用户可以查询事实部分的Web界面,例如, “癌症的原因是什么?”计算查询答案的规则不会是最终用户编辑的内容(我想这样做)。他们只是以易于理解的格式看到结果。
  • 一种语言,它是Prolog或与prolog一样强大的语言,我(而不是最终用户)可以使用它来创建推理规则(从用户生成查询的答案)。
  • 如果可能,最终用户可以通过某种方式获得知识库的图形表示。

关于Prolog计划的意思摘要:

%This kind of thing should be entered by end users in a friendly interface (i.e. not code like here).    
causes(smoking, cancer, prob(0.05)).
causes(cancer, death, prob(0.1)).

%This kind  of thing should be entered by me (and not end users)
inferCauses(C, E, prob(P)):-
    causes(C, E, prob(P)).
inferCauses(C, E, prob(P)):-
    causes(C, I, prob(P1)),
    causes(I, E, prob(P2)),
    P is P1 * P2.

%This should be entered by end users, again in a friendly interface
?-whyCancer?

我知道优秀的SWISH and Pengines,但我不确定这些是完全成熟的本体编辑还是可以与现有的本体编辑接口。

我也一直关注Protegé,OWL和SWRL规则,但我不确定它们是否与Prolog一样强大,或者它们能以何种方式与Prolog接口。

任何帮助将不胜感激!谢谢。

/ JCR

prolog owl protege swrl
1个回答
0
投票

关于这个here的更多信息。

© www.soinside.com 2019 - 2024. All rights reserved.