我是RDF的新手,或许,我的问题太愚蠢了,无法被问到。
我有以下工作流程,我试图将其表示为RDF。我理解RDF背后的理论及其用途,但我仍然坚持如何开始为这个图创建一个RDF。我将不胜感激任何帮助。
提前致谢。
〜Codera
答案 0 :(得分:5)
首先,您需要为边缘建模RDF属性,如:
:propose rdf:type rdf:Property;
rdfs:label "propose".
:accept rdf:type rdf:Property;
rdfs:label "accept".
然后你可以使用那些来关联M(1..N):
:M1 :propose :M2.
:M2 :propose :M3.
这将粗略地形成一个RDF图,表示您上面的图表。您可以根据应用程序的要求将其他属性附加到每个M(1..N),或者您可以将它们建模为rdfs:Class对象,并让您的属性与这些类的实例相关联。
如果您还没有阅读primer这是一个相当不错的起点,那么它会有一些看起来非常接近你想要建模的例子。对于模式或本体创作,在文本编辑器中手动创建和维护一个简单的创建并不是太糟糕,但是随着复杂性的增加,您可能希望使用Protege,特别是如果您想开始使用{{ 3}}
就构建应用程序的工具而言,最好的选择是OWL或Sesame API。它们提供了读取,写入和使用RDF所需的所有位。我推荐Sesame,我认为它更容易使用,并且有更多的数据库选项可用。如果你不是Java程序员,那里有一些选项,rdflib for python和dotNetRdf for .Net就是几个例子。