我正在研究概念验证,以探索如何连接来自不同数据源的SPARQL数据。我有两个OWL类,每个类都有自己的数据模型,代表我从两个不同系统中提取的信息。数据模型如下:
Order: id, itemName, quantity
Item: id, name, unitPrice
我想要做的是使用Order.itemName和Item.name字段将这两种类型连接在一起,并在Order类上创建一个新字段来存储订单的总价格(order.quantity * item。单价)。
这对SPARQL来说非常简单,但由于其图形映射功能,我们正在关注TopBraid Composer。根据我的理解,使用SPINMap我们应该能够轻松地 - 并且以图形方式 - 定义上述属性,但是我在将事物连接在一起时遇到了一些问题。
我一直在使用SPINMap"在应用程序开发工具/ SPIN /本体映射下的TBC帮助中学习本教程,但是我只是试图获得一个简单的属性时遇到问题映射过来。基于该帮助文档,在Diagram选项卡上,我将从Item Class到Order类绘制一条线,并选择具有适当值的changeNamespace函数。然后我从Item类中绘制了一行到Order类的新属性totalPrice,并将该函数设置为equals,只是为了看看我是否可以显示该属性。运行推理后,我运行SPARQL查询,并且对于我的所有Order类,totalPrice字段为空。我知道这种描述令人困惑 - 任何想法我应该做些什么来使这项工作?
答案 0 :(得分:0)
Matt,在你的第二步中你是否使用Item类中的属性来映射到Order类?对于“平等”而言,这应该没有任何问题。模板。
检查选项卡中下方行中的Inferences选项卡aster运行推理。这将显示所有具体化的推论,并且可以用来为您的SPINMap做出正确的操作。
另请参阅配置推理以确保选择TopSPIN推理器。