Problem:
Validations are hard, time-consuming and error-prone. Currently, OutSystems structures only define shape, not validity.
A lot of projects end up lacking validations because of the effort involved in developing and maintaining them across client and server side.
Proposed Solution:
Introduce a Schema primitive (similar to Zod and Valibot) that would define the shape (fields) and also the rules (declarative validation definitions that validate the field contents at runtime).
It would be defined in Service Studio and have an IsValid runtime field that developers can check to assert the validity of the data. An Issues field (list of Issue) would identify which fields are invalid and the reason.
The Schema should be universal, meaning it could be used to validate data both on the client and on the server side based on the same declarative rules.
I think this would greatly improve developer speed and application security in our OutSystems applications.