开发语义Web应用程序

时间:2011-03-10 02:11:49

标签: semantic-web sparql jena foaf

虽然我在使用ASP技术开发动态网站方面有一点经验,但我是语义网络编程的新手,我打算实现一个基于语义网技术的网站。我想开发一个搜索引擎, web用户可以从后端RDF三元组商店查询关键字。我想用Java和JSP实现网站。我有以下问题:

  1. 我目前正在研究Jena框架和SPARQL,但是 我不确定我需要研究哪些其他技术才能 实施网站。
  2. RDF和OWL有什么区别,我经历了一次 很多网络资源,但我仍然困惑。据我所知 RDF和OWL都定义了概念之间的关系,但是OWL是 在定义关系方面更加丰富。
  3. 不同的OWL词汇表是什么意思,如FOAF,SIOC等。为什么? 我们需要这些词汇吗?
  4. Virtuso Open Link的目的究竟是什么? 软件(http://ods.openlinksw.com/dataspace/dav/wiki/Main/VirtJenaProvider
  5. 任何帮助都将受到高度赞赏。

    谢谢!

2 个答案:

答案 0 :(得分:0)

我非常希望了解您的最新进展。我对java或jsp没有经验。我想知道这可以在php中完成吗?我知道在python中已经完成了一些关于这种事情的工作。 对于使用这些语义Web技术的drupal有一些扩展,Semantic Media Wiki也很好 看看这个和底部的相关链接。微格式和词汇之间的差异可能难以理解,但我认为存在差异,例如像FOAF这样的词汇表和像hCard,hCalendar或hResume这样的微格式。哦,链接: http://en.wikipedia.org/wiki/FOAF_(software) 无论如何,包括这些相关的条款。

谢谢, 布鲁斯 http://futurewavedesigns.com

答案 1 :(得分:0)

Re:你的第一个问题 - 为什么要使用RDF来实现关键字搜索?关键字搜索不是语义,并且有许多用于关键字搜索的已建立的框架和API,例如Lucene。

Re:你的第二个问题,比较RDF和OWL正在比较苹果和橘子。 RDF基本上用于声明数据,但OWL是RDF之上的一层,用于声明本体(模式)。 RDFS(RDF Schema)和OWL之间的比较更有意义,它们都解决了本体层。

示例:

在RDF中你可能会说约翰史密斯是一个拥有年龄“42”的人并且已经和吉尔史密斯结婚了。

在RDFS或OWL中,您将声明Person是一个类,hasAge是一个属性(具有Person域,范围为xsd:integer),marriedTo是一个属性(具有域和范围的Person)。

在OWL中,您还可以声明marriedTo是一个对称属性(如果A已经结婚到B,那么B必须与A结婚)。 RDF不是那么强大,所以你不能做出这个特定的陈述,所以不能推断对称属性等。