Создайте файл .DOT из файла RDF - PullRequest
2 голосов
/ 10 августа 2011

У меня есть файл 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"]

Как автоматически сгенерировать файл .dot из файла RDF, следуя правилам, подобным приведенным выше?

Ответы [ 3 ]

2 голосов
/ 11 августа 2011

xslt - мой предпочтительный способ создания графических файлов из xml.

Для вас ключевая часть может выглядеть следующим образом ...

<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>
2 голосов
/ 11 августа 2011

Похоже, это может сработать для вас: RDF-to-Dot .

0 голосов
/ 05 февраля 2014

Это, кажется, достаточно для задачи: https://metacpan.org/pod/rdfdot

...