Ich wollte schon seit einiger Zeit lernen, ein JetBrains plugin zu schreiben und heute habe ich beschlossen, es endlich einmal zu versuchen. Grundsätzlich füge ich Sprachunterstützung für SVG-Dokumente hinzu, da die integrierte Unterstützung für XML-Sprachen keine Tags/Attribute verarbeiten kann, die den xlink:
-Namespace in SVG verwenden.Gibt es eine Möglichkeit, eine BNF-Datei von einer DTD zu generieren?
Also arbeite ich meinen Weg durch die custom language support tutorial und ich bin zu step 3.3 - define grammar bekommen. Grundsätzlich soll ich eine BNF-Datei erstellen, um die in SVG-Dokumenten verwendete Grammatik zu definieren. Das Problem ist, dass SVG Grammatik würde ewig dauern, um streng zu definieren.
Was ich tun möchte, ist dieses BNF-Dokument automatisch aus der SVG Document Type Definition generieren, weil diese DTD genügend Informationen enthalten sollte, um die Grammatik von SVG vollständig zu definieren (ich vermute).
Gibt es eine Möglichkeit, eine DTD in eine BNF zu konvertieren?
http://www.w3.org/XML/2000/04schema-hacking/dtd2bnf könnte ein guter Anfang sein. – bitfiddler
@bitfiddler Versucht, aber fehlgeschlagen. Dieses Skript enthält keine Dokumentation zur Verwendung in der Befehlszeile oder in den Kommentaren. –