2

我正在尝试制作一个关于在我所在地区(10k,半程马拉松,马拉松)进行比赛的语义网络应用程序。更具体地说,我想收集和发布(在 RDF 中)关于比赛、参与者和结果的数据,并合并类似的数据。过去几周我一直在测试 Jena(包括 TDB),从静态网站上抓取一些关于跑步比赛的网页,并阅读有关词汇和本体的信息。

我认为用于我的应用程序的最有信誉的本体,也是进入门槛最低的本体(不是非常过度设计),是 BBC 体育本体。 http://www.bbc.co.uk/ontologies/sport/2011-02-17.shtml

我有几个关于使用 BBC Sports 和制作应用程序的问题:

即使我只使用其中的一小部分,我也可以使用 BBC 体育本体吗?

我想查看本体的架构以更好地理解它,但我似乎无法在任何地方找到它。BBC 是保密还是我只是在错误的地方寻找它?

有什么方法可以让我确定我是否正确使用了本体?我的母语不是英语,所以我担心我可能会误解本体中的一些概念。

当我将新的三元组添加到我的 (TDB) 三元组存储时,为资源创建新 URI 的约定是什么?更具体地说,URI 应该以名称还是 uid 结尾?这会影响合并来自不同数据集的相似数据吗?

您能否推荐任何语义 Web 工具来使资源 URI 可取消引用?我不会很快将应用程序放到网络上,但是如果我可以在本地访问 URI 仍然会很好,例如

http://localhost/running/12345.
4

1 回答 1

5

您在这里有几个不同的问题,有些问题比其他问题更容易回答。

寻找 BBC 本体

许多 BBC 网站对文档使用内容协商,您可以通过设置适当的 HTTP 标头,或者更简单地通过请求具有适当扩展名的资源来获取您正在寻找的 RDF 文档。例如,本体的人类可读版本是

要获得机器可读版本,请使用

他们这样做的事实并不是很明显。至少有一处声明是他们在 Nature 的 Feed 和 Data 部分,他们在其中声明:

我如何获得 RDF?

你有几个选择。我们对我们的标准 URL进行内容协商- 如果您是客户的请求标头指定 RDF,那么这就是您将得到的。或者,如果您将 .rdf 添加到我们的 URL 的末尾,那么我们将返回 RDF 而不是 HTML。

您可以根据需要使用尽可能少或尽可能多的在 BBC 本体中定义的类、属性和个体。这是语义网之美的一部分。至于你是否正确使用它们,它们中的大多数都有一些描述性的标签,但标签是英文的。我不认为有一种自动的方式来检查您的使用情况。恐怕你只需要和更熟悉英语的人核实一下。当然,您也可以使用您自己的语言添加标签和评论,并将其提供给其他人使用。这是语义网和关联数据的另一个优点,您可以随时说出任何事情。

创建标识符的约定

没有创建 IRI 的单一标准。如果它们是人类可读的,那就太好了,但是如果您以编程方式生成很多东西,那可能很难完成。如果您不能使它们具有人类可读性,至少要确保在可能的情况下给它们适当rdfs:label的 s。关于 IRI 约定的问题可能在http://answers.semanticweb.com上有更多的主题,如果您在那里提问,您可能会得到更好的答案。

使您的 IRI 在本地可取消引用

如前所述,您要的是一种工具,而这种问题对于 StackOverflow 来说是题外话:

要求我们推荐或查找工具、库或最喜欢的场外资源的问题对于 Stack Overflow 来说是无关紧要的,因为它们往往会吸引固执己见的答案和垃圾邮件。相反,请描述问题以及迄今为止为解决该问题所做的工作。

同样,您在http://answers.semanticweb.com上的运气可能会更好。不过,简短的回答是,您正在寻找一个轻量级的网络服务器。您甚至可以通过让 Web 服务器将 IRI 请求转发到 SPARQL 描述查询来询问有关 IRI 的信息。这样,当您请求时:

http://localhost/running/12345

你会得到结果

describe <http://localhost/running/12345>
于 2013-09-26T03:08:25.233 回答