Ja, bernhard, da verfolgen wir wohl zwei unterschiedliche Ansätze:
Ich fange gerne jeden möglichen (und unmöglichen) Fehler schon im Code ab, Auf die Gefahr hin, "schlechte Daten" zu tolerieren,
Du gehst davon aus, dass Daten immer so aussehen, wie sie aussehen müssen, und dass jeder
A) das weiss, was da drin stehen soll und
B) sich dran hält
Ich kenne leider zu viele (Kunden, Admins, Entwickler, bitte adäquates einfüllen), die das eben nicht machen, und sich mal eben ne Schaltfläche, nen Agenten, etc. Bauen um ein Feld zu korrigieren, oder ähnliches. Da ist es schnell passiert (ist session.Username abbreviated oder kanonisch?, ich meinte zweiteres, kann mich aber auch irren, und wenn ich einen namen aus einem bearbeitbaren Feld per strg +c kopiere ist in der zwischenablage auch der abbreviated name)
Ich verstehe und respektiere Deinen Ansatz, aber ich bin -was solche Dinge angeht- ein wenig paranoid... ;-)