Es ist charakteristisch für Software-Elemente, dass sie leicht änderbar sind und erfahrungsgemäß auch häufig geändert werden. Stabile und relevante Stände eines Entwicklungsobjektes werden daher als Elemente festgehalten.
Mehrere Versionen je Elementtyp und -name
In Bibliotheken wird ein Element durch seinen Typ, seinen Namen und eine Versionsbezeichnung eindeutig bestimmt. Weiter ist es möglich, zu einem Elementtyp und -namen mehrere Versionen zu speichern.
Falls der Benutzer bei der Bearbeitung keine Angaben zur Version macht, führt LMS standardmäßig folgende Aktionen aus:
Beim Lesen
wird das Element gesucht, das zu dem angegebenen Namen die höchste Versionsbezeichnung besitzt. Das Datum wird dabei nicht berücksichtigt.Beim Schreiben
hängt die Versionsbehandlung von der Anweisung ab:ADD-ELEMENT und MODIFY-LOGGING-PARAMETERS TEXT-OUTPUT=Das Element wird mit der höchsten Version X’FF’ erzeugt bzw. überschrieben. LMS stellt diese Version mit @ dar.
sonstige Anweisungen
Das Ausgabeelement erhält die Versionsbezeichnung des Eingabeelementes.
Wird dabei ein gleichnamiges Element überschrieben, wird die interne Variantennummer um 1 erhöht. Sie dient als Schreibzugriffszähler.
Verschiedene Stände eines Entwicklungsobjektes sind in verschiedenen Elementen abgelegt. Die Beziehungen zwischen einzelnen Elementen kennt zunächst nur der Anwender; sie sind nicht in der Bibliothek verankert. Jedes Element ist eine eigenständige Einheit im Kontext einer Bibliothek.
Delta-Speicherung
Elemente, die aus einem Vorgängerelement durch Änderung entstanden sind, unterscheiden sich im Allgemeinen nur wenig vom Vorgänger. Daher ist es sinnvoll, diese Menge von Elementen kompakter zu speichern. D.h. es werden nur die Unterschiede zum jeweiligen Vorgänger physikalisch gespeichert. Diese kompakte Speicherung der Differenzmenge ergibt den Delta-Baum.
Alle Elemente eines Delta-Baums, die keinen Nachfolger haben, heißen Blätter. Nur Blätter können überschrieben werden.
Delta-Bäume
Erst die Verwendung von Delta-Bäumen gestattet es, eine Beziehung zwischen den Elementen auch in der Bibliothek festzuhalten. Für solche Elemente gilt
auf der Elementbezeichnungsebene
Da das neue Element durch eine Änderung aus einem anderen Element entstand, gehört es immer noch der gleichen Klasse an und beschreibt den gleichen logischen Inhalt. Beide Aspekte sind im Typ und Namen des Elementes festgeschrieben, d.h. alle Elemente eines Delta-Baumes haben den gleichen Typ und Namen.
Der Bestandteil Version einer Elementbezeichnung sollte den Stand beschreiben.auf der physikalischen Ebene
Die Beziehung der beiden Elemente ist auch auf physikalischer Ebene festzuhalten. Welche Elemente zu verknüpfen sind, wird jedoch nicht anhand des Versionsstrings ermittelt, sondern aus Angaben des Benutzers abgeleitet. Zu diesem Zweck muss der Benutzer ein Element als "Vorgänger" und ein Element als "Nachfolger" deklarieren.