4

我有一个 RDF 文件,我想从中生成一个 .dot 文件。我想创建一些规则来设置节点的样式以及这些节点之间的链接(例如表示婚姻关系的特定类型的箭头)。

以下是此类转换“规则”的示例:

 <person rdf:about="http://www.something.com/EGAnne"
   <j: DateBirth>1981</j: DateBirth>
   <j:Profession>Comptable</j:Profession>
   <j:Gender>Female</j:Gender>
 </j:person>

我想将这些行转换为这个结果:

a [label = "Anne \ n \ nD.Birth: 1981 \ nProfession: Accounting \ n", shape = circle, fillcolor = "pink" style = "filled", fontsize = "9", fontname = " Arial, bold "];

然后,为了表示person类的两个实例之间的婚姻,箭头的类型将是“odot”,颜色是“goldenrod”:

a -> j [arrowhead = "odot" arrowtail = "odot", dir = both, color = "goldenrod"]

如何按照上述规则从 RDF 文件自动生成 .dot 文件?

4

3 回答 3

3

这看起来对你有用:RDF-to-Dot

于 2011-08-10T20:03:57.437 回答
3

xslt 是我从 xml 创建 graphviz 文件的首选方式。

对你来说,关键部分可能看起来像这样......

<xsl:for-each select="whateverThePathIs/person">
<xsl:if test="(./j:Gender &eq; 'Female')">
# Output a node for a Female
</xsl:if>
<xsl:if test="(./j:Gender &eq; 'Male')">
# Output a node for a Male
</xsl:if>
</xsl:for-each>
于 2011-08-10T21:08:32.817 回答
1

这似乎足以胜任这项任务:https ://metacpan.org/pod/rdfdot

于 2014-02-05T01:03:42.620 回答