Hi Daniela,
Ich möchte einfach wissen, ist es überhaupt möglich,
ohne eben thread.posting.subposting... ohne
nachträglichen Merge oder Sortierung die Postings in
der richtigen Reihenfolge zu kriegen dass nur noch
die Postingtiefe aufgrund von gehöre ich noch zum
aktuellen Vorgängerposting oder muss ich 1-n Stufen
höher sein, ansonsten 1 tiefer.
Stell Dir mal vor, Deine Thread-Darstellung sei kein beliebig breiter, sondern ein binärer Baum. Das läßt sich durch eine entsprechende Transformation jederzeit erreichen (die beiden Kinder eines Knotens sind dann die nächste Schwester und die erste Tochter; falls die Einfügung neuer Tochterknoten vorne statt hinten erfolgen soll, dann eben die vorherige Schwester und die letzte Tochter).
Und dann füge nacheinander Postings in den thread ein und berechne jedesmal deren Adresse in diesem binären Baum. Diese ist sowohl eindeutig (weil sie aus der Kombination aus Position und Entstehungshistorie abgeleitet wird und sich beides nie mehr ändert - neue Schwestern werden nur an einem definierten Ende der Liste eingefügt) als auch bereits sortiert (als binärer String).
Wenn Du über eine solchen Schlüssel einen Index legst, hast Du dieselbe Information wie durch Deine Punkt-Notation.
Einen Teil-Thread solltest Du in diesem Fall erhalten, indem Du
1. dessen Wurzel plus
2. alle Einträge mit einem Präfix-Match zum Schlüssels der ersten Tochter
selektierst. Die Sonderbehandlung des Wurzelknotens ist leider notwendig, weil der in keinem seiner beiden Teilbäume liegt - einer dieser beiden Teilbäume gehört zu diesem Teil-Thread, der andere aber nicht.
Du hast dann natürlich dieselben Probleme, welche der Datenbank-Indexer (der mit Deinen Punkt-Daten intern wahrscheinlich etwas ziemlich Ähnliches tun würde) auch hat:
1. Die Indexwerte können variabel lang werden.
2. Bei degenerierten Threads (Dialogen) wird der Baum zur Liste.
Und in dem von mir beschriebenen Fall ist die Adressierung exakt algorithmisch beschrieben - da ist kein Freiheitsgrad mehr, um den Baum on the fly zu rebalancieren.
Also: Ich sehe durchaus alternative Darstellungsmodelle für die sortierte Abspeicherung des Threads. Diese unterscheiden sich aber nicht wesentlich bezüglich ihrer Hauptprobleme.
Viele Grüße
Michael