Dynamische Web-Anwendungen sollten zustandsbehaftete Verbindungen unterstützen und sei es nur, um den Status einer Interaktion mit der Client-Seite zwischenzuspeichern. Da das HTTP-Protokoll zustandslos ist und somit jede Verbindung zwischen Client und Server eine eigenständige, unabhängige Transaktion darstellt, ist diese Anforderung problematisch. Eine Möglichkeit, die auf der Basis von HTTP zu realisieren ist, wäre die Speicherung der Zustandsdaten auf der Server-Seite und eine eindeutigen Hineinkodierung der Referenz auf die jeweilige Transaktion in den URL der Anwendung.
Die möglichen Zustände, die auch in einander übergehen können, spiegeln verschiedene Anwendungsfälle wieder. So ist es erwünscht, daß die Variablen nur Gültigkeit für eine bestimmte dynamische Web-Seite haben, um bei einem erneuten Aufruf der Seite nicht alle Eingaben eines Formulars wiederholen zu müssen. Wiederum andere Variablen sollen für die gesamte Sitzung (Session) Geltung haben, wobei eine solche Variable einen Warenkorb, der Bestandteil eines virtuellen Einkaufsystems ist, repräsentieren kann. Des weiteren sind Variablen, die sitzungsübergreifend in der gesamten Anwendung (Application) bekannt sind, wichtig, um z.B. eine stets aktualisierte Inventarliste zu führen.