2009-11-16 27 views
1

我正在使用称为TopQuadrant的工具来创建语义Web(RDF/OWL)本体。该工具允许从MS Excel导入数据。我的电子表格基本上是一个双列表,第一列是XPATH表达式,第二列是XPATH的描述。语义Web SPARQL构造问题

一旦我导入我的电子表格,我想使用SPARQL遍历数据来创建一个基于我的第一列中的值的本体。举例来说,如果我有看片如下:

XPATH        Description 
Food 
Food/Fruit 
Food/Fruit/Apple 
Food/Vegetables 
Food/Vegetables/Turnips 

我想SPARQL创建我的本体论与根类(下当然是“物”)的“食品”,并在“食品” ,2个子类叫做'水果'和'蔬菜',在'水果'下是'苹果'的子类,在'蔬菜'下是萝卜的一个子类......正在下线。

这是SPARQL可以做的事吗?

在此先感谢。

回答

3

不,我不这么认为,SPARQL被设计为查询语言,所以这超出了它的范围。虽然您已经从问题标题中暗示了您希望使用CONSTRUCT查询来执行此操作,但由于数据的格式不同,它不适用于SPARQL 1.0。

您的问题需要处理第一列中的值,这是SPARQL无法定义您自己的自定义扩展的方式 - 我不确定TopQuadrant是否对此有任何支持。

仅基于电子表格中的数据,这是不可能的,但根据TopQuadrant如何导入电子表格,这可能是可能的。作为语义Web工具,我会假设TopQuadrant正在将电子表格输入转换为某种RDF。如果是这种情况,你可以编辑你的问题来添加RDF表示,我可以给你一个更明确的答案。

即使在RDF表格中,您也可能无法通过单个查询来实现您的目标

+0

感谢您的回复。我能够与TQ开发人员一起解决我的问题。它花了一些脚本写作,但它完美的作品。我不能在这里发布他们的代码,但想让任何感兴趣的人知道这是可能的。 您对我的查询的回应是现货,但是,谢谢!!!!! – 2009-11-20 18:56:21