Hallo
Ich würde gerne einen zeilenbasierten und Baumbasierten Diff Algorithmus schreiben. Für den Baumbasierten Diff Algorithmus sollten zwei XML files als Input dienen, wobei dann der DOM-tree erzeugt wird und darauf der Algorithmus anwendet wird (wie hängt der DOM-tree mit dem AST zusammen?).
Kann vielleicht jemand gute Papers bzw. Code insbesondere zu baumbasierten Diff Algorithmen (basierend auf dem DOM-tree) empfehlen? Über Papers bzw. Code zu zeilenbasierten Algorithmen wäre ich auch fro (wobei baumbasierte Algorithmen wichtiger sind).
-------------------------
By the way, Eine kleine kurze Frage habe ich noch. Vielleicht könnt ihr mir da helfen.
Nehmen wir an, dass wir zwei Dokumente A und B hätten, wobei A = abbba und B = abbab
Mit dem line-based Algorithmus, den ich implementieren könnte, würde man ein edit script bekommen mit dem man vom ersten Dokument (A) aufs zweite Dokument (B) kommt. D.h. es würde beschrieben werden, welche Elemente in A gelöscht und welche eingefügt werden müssten.
Also z.B. für das obige Beispiel würden wir das 4. Element von A löschen und das 3. b aus B nach der 5. Stelle von A einfügen. Somit würden wir aus A B bekommen.
Wenn ich nun die Differenzen graphisch darstelle, wäre es dann ok, wenn ich im Dokument A einfach alle Elemente, die gelöscht wurden markiere (also das 4. Element von A) und in Dokument B einfach alle Elemente markiere, die in A eingefügt wurden (also das 3. Element von B) ?
ich danke vielmals.
Ich würde gerne einen zeilenbasierten und Baumbasierten Diff Algorithmus schreiben. Für den Baumbasierten Diff Algorithmus sollten zwei XML files als Input dienen, wobei dann der DOM-tree erzeugt wird und darauf der Algorithmus anwendet wird (wie hängt der DOM-tree mit dem AST zusammen?).
Kann vielleicht jemand gute Papers bzw. Code insbesondere zu baumbasierten Diff Algorithmen (basierend auf dem DOM-tree) empfehlen? Über Papers bzw. Code zu zeilenbasierten Algorithmen wäre ich auch fro (wobei baumbasierte Algorithmen wichtiger sind).
-------------------------
By the way, Eine kleine kurze Frage habe ich noch. Vielleicht könnt ihr mir da helfen.
Nehmen wir an, dass wir zwei Dokumente A und B hätten, wobei A = abbba und B = abbab
Mit dem line-based Algorithmus, den ich implementieren könnte, würde man ein edit script bekommen mit dem man vom ersten Dokument (A) aufs zweite Dokument (B) kommt. D.h. es würde beschrieben werden, welche Elemente in A gelöscht und welche eingefügt werden müssten.
Also z.B. für das obige Beispiel würden wir das 4. Element von A löschen und das 3. b aus B nach der 5. Stelle von A einfügen. Somit würden wir aus A B bekommen.
Wenn ich nun die Differenzen graphisch darstelle, wäre es dann ok, wenn ich im Dokument A einfach alle Elemente, die gelöscht wurden markiere (also das 4. Element von A) und in Dokument B einfach alle Elemente markiere, die in A eingefügt wurden (also das 3. Element von B) ?
ich danke vielmals.