工作流图作为 RDF?

Posted

技术标签:

【中文标题】工作流图作为 RDF?【英文标题】:Workflow graph as RDF? 【发布时间】:2012-03-10 20:28:06 【问题描述】:

我是 RDF 的新手,也许我的问题太傻了,不能问。

我有以下工作流程,我试图将其表示为 RDF。我了解 RDF 背后的理论及其用途,但我对如何开始为该图创建 RDF 感到困惑。我将不胜感激。

提前致谢。

~Codera

【问题讨论】:

【参考方案1】:

首先,您希望对边建模是 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,特别是如果您想开始使用OWL。

就构建应用程序的工具而言,最好的选择是Sesame 或Jena API。它们提供了读取、写入和使用 RDF 所需的所有位。我推荐 Sesame,我认为它更易于使用,并且有更多可用的数据库选项。如果您不是 Java 程序员,也有一些选择,python 的 rdflib 和 .Net 的 dotNetRdf 就是几个例子。

【讨论】:

感谢您的精心回复。我选择将问题建模为一组rdfs:class。我有两个班NodeArc;关系:hasIncomingArchasOutgoingArchasSourceNodehasDestinationNode。我计划在我的应用程序中使用 Jena 和 SPARQL,因为我已经使用了一些示例,感觉很舒服。

以上是关于工作流图作为 RDF?的主要内容,如果未能解决你的问题,请参考以下文章

将自然语言表示为 RDF

出色的 RDF 可视化工具 [关闭]

面试官:说一下Jena推理

我们如何在 AWS Neptune 上的 RDF 图中对对象进行分组并为组分配通用颜色?

知识工程基础-作业1

旋塞阀工作原理(图)