Zum Inhalt springen

XML <-> Code Transformation


Empfohlene Beiträge

Geschrieben (bearbeitet)

Hallo

Ich habe hier XML Files, welche den Abstract Syntax Tree von Code darstellen. Die XML files habe ich erfolgreich in einen DOM-tree geparsed und kann diesen auch traversieren. Hier ist eine solche XML Datei:

http://img217.imageshack.us/img217/8365/xmlv.jpg

Diese XML Datei repräsentiert den folgenden Code (Eiffel):

prune_first (n: INTEGER)

do

prune (n, l)

end

Nun möchte ich zuerst das XML File wieder in Code zurückverwandeln. Das möchte ich machen, indem ich den Baum traversiere. Zudem gibt es noch eine Visitor Klasse (Visitor Pattern), bei der man Funktionen selber impelementieren kann, die man dann bei jedem Knoten aufrufen kann.

Mir ist nun aber nicht ganz klar, wie ich am besten vorgehen soll. Wie man im Beispiel sieht, sind alle Codestücke nur in Textelementen des XML Files vorhanden, ich könnte also alle Textelemente ausgeben, allerdings hätte ich da dann z.B. mit der Klammer () Probleme, da die Ausgabe dann prune()n,l anstatt von prune(n,l) wäre und zudem hätte ich dann alles auf einer Zeile und keine Einrückungen etc.

Wie würdet ihr da vorgehen? Die XML files werde ich übrigens später noch kürzen, so dass wirklich nur die wichtigen Nodes übrig bleiben.

Weiterhin würde ich auch gerne eine Transformation in die andere Richtung machen, also von Code (Feature = Methode oder Klasse) zu einem XML File. Man könnte da wohl einen parser generator verwenden.

Wie würdet ihr das aber ohne parser generator machen oder ist das zu aufwendig? Die erste Fragen oben (Umwandlung von XML nach Code) hat jetzt hier aber gerade Priorität. ;)

Bearbeitet von MrTiger

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...