Wie analysiert eine DOT-Datei in Python

Habe ich einen Wandler gespeichert in form einer DOT-Datei. Ich sehe eine grafische Darstellung der Graphen mit gvedit, aber was ist, wenn ich konvertieren wollen die DOT-Datei in eine ausführbare Wandler, so dass ich testen kann der Wandler und sehen, welche Saiten er akzeptiert und was nicht.

In den meisten der tools, die ich gesehen habe, in Openfst, Graphviz, und Ihre Python-Erweiterungen, die DOT-Dateien werden nur verwendet, um eine grafische Darstellung, aber was ist, wenn ich will Parsen der Datei um ein interaktives Programm wo ich testen kann die Saiten gegen den Schwinger?

Gibt es Bibliotheken gibt, die tun würde, die Aufgabe, oder soll ich einfach schreiben das es von Grund auf neu?

Wie gesagt, die DOT-Datei ist im Zusammenhang mit einem Wandler habe ich entworfen, simuliert Morphologie der englischen Sprache. Es ist eine riesige Datei, aber nur, um Ihnen eine Vorstellung davon, wie es ist, wie ich eine Probe geben. Lassen Sie uns sagen, ich will einen Wandler würde, dass das Modell das Verhalten des englischen mit Bezug auf Substantive und im Sinne der Pluralität. Mein Lexikon besteht nur aus drei Worten (Buch, junge, Mädchen). Mein Wandler wäre in diesem Fall wie folgt Aussehen:

Wie analysiert eine DOT-Datei in Python

direkt konstruiert aus dieser DOT-Datei:

digraph A {
rankdir = LR;
node [shape=circle,style=filled] 0
node [shape=circle,style=filled] 1
node [shape=circle,style=filled] 2
node [shape=circle,style=filled] 3
node [shape=circle,style=filled] 4
node [shape=circle,style=filled] 5
node [shape=circle,style=filled] 6
node [shape=circle,style=filled] 7
node [shape=circle,style=filled] 8
node [shape=circle,style=filled] 9
node [shape=doublecircle,style=filled] 10
0 -> 4 [label="g "];
0 -> 1 [label="b "];
1 -> 2 [label="o "];
2 -> 7 [label="y "];
2 -> 3 [label="o "];
3 -> 7 [label="k "];
4 -> 5 [label="i "];
5 -> 6 [label="r "];
6 -> 7 [label="l "];
7 -> 9 [label="<+N:s> "];
7 -> 8 [label="<+N:0> "];
8 -> 10 [label="<+Sg:0> "];
9 -> 10 [label="<+Pl:0> "];
}

Jetzt testen dieser Wandler gegen die Worte, die bedeutet, dass, wenn Sie füttern es mit book+Pl sollte es wieder spucken books - und Umgekehrt. Ich würde gerne sehen, wie es möglich ist, drehen Sie die dot-Datei in ein format, die es erlauben würde eine solche Analyse und Prüfung.

Jede chance, die wir finden konnten .dot-Datei?
Eine DOT-Datei repräsentiert einen Graphen, welcher aus Knoten und Kanten. Ich denke, dass Knoten input-oder output-Punkt, und die Kante zwischen zwei Knoten repräsentiert den Transport. Wenn Sie zeigen .dot-Datei, können Sie bekommen nützlicher Kommentar und/oder Antwort.
Ich habe gerade aktualisiert und Hinzugefügt, ein Beispiel.

InformationsquelleAutor Morteza R | 2015-02-04

Schreibe einen Kommentar