{"ref":"content:declarative-programming-in-cap-less-code-more-value","page":"/content/declarative-programming-in-cap-less-code-more-value","json":"/content/declarative-programming-in-cap-less-code-more-value.json","generated":"2026-10-26","drafted_with_ai":true,"entity":{"id":"declarative-programming-in-cap-less-code-more-value","title":"Declarative Programming in CAP: Less Code, More Value","url":"https://community.sap.com/t5/technology-blog-posts-by-sap/declarative-programming-in-cap-less-code-more-value/ba-p/14321990","content_type":"blog","explains":["artifact:sap-cds",{"ref":"capability:input-validation","applies_to":{"ecosystems":["cap"]}}],"summary":"An argument for annotations over handlers, made from the case where it is most obvious: repetitive validation logic that could be declared instead of written. Describes what you want rather than how to get it, and lets the runtime decide the how.","short":"Case for CAP annotations over handlers for repetitive validation","published":"2026-02-05","sources":[{"url":"https://community.sap.com/t5/technology-blog-posts-by-sap/declarative-programming-in-cap-less-code-more-value/ba-p/14321990","title":"Declarative Programming in CAP: Less Code, More Value — SAP Community","checked":"2026-09-08"},{"url":"https://community.sap.com/api/2.0/messages/14321990","title":"SAP Community message metadata — author BirgitS","checked":"2026-10-12"}],"provenance":{"discovered_via":[{"source":"source:sap-community","channel":"cap-tag"}],"first_seen":"2026-09-08"},"drafted_with_ai":true,"published_on":"source:sap-community","authors":["actor:birgits"],"history":[{"date":"2026-10-17","field":"explains","from":null,"to":"applies_to on capability:input-validation","reason":"Door scope derived from the artifacts this piece also explains, so a door page lists it only where it holds (docs/concepts/content-on-doors.md)."}]},"readings":{"liveness":[{"label":"Checked against the source","tier":"unknown","evidence":"nobody has checked it"},{"label":"Source reachable","tier":"unknown","evidence":"not crawled"},{"label":"Age","tier":"good","evidence":"published 8 months ago"}],"compatibility":[{"label":"Version","tier":"unknown","evidence":"no version declared"},{"label":"Moved since?","tier":"poor","evidence":"@sap/cds 10.0 since publication"},{"label":"Findings","tier":"good","evidence":"none flagged"}],"reach":[{"value":2648,"unit":"views"},{"value":1,"unit":"comments"},{"value":12,"unit":"likes"}]},"signals":{"views":2648,"likes":12,"comments":1,"metrics_at":"2026-10-25"},"series":null,"edges":{"authors":[{"ref":"actor:birgits","name":"BirgitS","json":"/actors/birgits.json"}]}}