{"ref":"artifact:rizing-cds-extension","page":"/artifacts/rizing-cds-extension","json":"/artifacts/rizing-cds-extension.json","generated":"2026-10-26","drafted_with_ai":true,"entity":{"id":"rizing-cds-extension","name":"@rizing/cds-extension","artifact_type":"cds-plugin","ecosystem":"cap","domain":"ui-and-frontend-bridge","secondary_domains":["integration-and-messaging"],"origin_ring":"partner","description":{"one_line":"A CAP extension, CDSX, that puts a draft-capable facade in front of an OData service imported into CAP, so Fiori elements can edit records that live in another system as drafts.","short":"CAP plugin putting a draft-capable facade in front of imported OData","what_it_solves":"An OData service imported into a CAP project with cds import answers CRUD and nothing else, so a Fiori elements application projected onto it has no [draft handling](capability:draft-handling) to bind to. CDSX supplies one: a shadow persistence entity declared in db/schema.cds mirrors the remote properties, @cdsx.api names the imported service on it, and the projection over it is marked @odata.draft.enabled, with the mirrored properties never written to the CAP table and only a property carrying @cdsx.extension persisted — an annotation the README marks experimental. Its own annotations cover what a remote service makes awkward from a draft: @cdsx.object.key generates a temporary value for a semantic key on draft creation, @cdsx.item.key numbers items from one, and @cdsx.datetime.persistency splits a timestamp into the separate date and time fields an ABAP stack persists. It is loaded by hand from cds.on('bootstrap') in server.js rather than through CAP's plugin mechanism, and its documentation states it is not intended to be used in conjunction with @sap/cds-odata-v2-adapter-proxy."},"links":{"npm":"https://www.npmjs.com/package/@rizing/cds-extension"},"identity":{"author":"Jhodel Cailan","license":"MIT"},"compat":{"runtimes":["node"]},"type_properties":{"distribution":{"value":["npm"],"sources":[{"url":"https://www.npmjs.com/package/@rizing/cds-extension","title":"@rizing/cds-extension — README","checked":"2026-10-18","quote":"> npm install @rizing/cds-extension"}]}},"provenance":{"discovered_via":[{"source":"source:npm"}],"first_seen":"2026-09-18"},"source_available":false,"provides":[{"capability":"capability:draft-handling","what_it_does":"Runs the draft lifecycle over entities projected from an imported remote OData service, and generates a temporary value for a semantic key on draft creation.","sources":[{"url":"https://cdn.jsdelivr.net/npm/@rizing/cds-extension/README.md","title":"@rizing/cds-extension — README","checked":"2026-09-18","quote":"handles OData Draft automatically without the need for implementing custom handler logic"},{"url":"https://cdn.jsdelivr.net/npm/@rizing/cds-extension/README.md","title":"@rizing/cds-extension — README, Supported Features","checked":"2026-09-18","quote":"Auto-generate temporary value for Semantic Keys on draft creation."}]}],"drafted_with_ai":true,"requires":[{"ref":"artifact:sap-cds","for":"CDSX is loaded into the CAP Node.js runtime from cds.on('bootstrap') to extend it with draft handling for imported OData services.","requirement":"required","basis":"binding","role":"framework","sources":[{"url":"https://www.npmjs.com/package/@rizing/cds-extension","title":"@rizing/cds-extension on npm","checked":"2026-10-18","quote":"const cds = require(\"@sap/cds\");"}]}],"connects":[{"ref":"external:sap-s4hana","kind":"data","for":"Consuming OData V2 service metadata and data from S/4HANA so a shadow persistence entity can mirror it for draft-enabled Fiori elements editing.","protocols":["odata-v2"],"direction":"outbound","sources":[{"url":"https://www.npmjs.com/package/@rizing/cds-extension","title":"@rizing/cds-extension on npm","checked":"2026-10-18","quote":"Import OData V2 service metadata you want to consume from S/4HANA:"}]}]},"effective_normative_relations":[{"instrument":"instrument:sap-developer-license-3-2-cap","relation":"use-constrained-by","sections":["1","2","3"],"applies_when":"A cds-plugin is used with SAP CAP materials, or an artifact is explicitly identified as a CAP plugin or application.","note":"This is inherited applicability, not a licence verdict about the artifact itself. Review the agreement for the actual materials and use; an explicit artifact relationship to another revision takes precedence.","scope":{"kind":"artifact"},"sources":[{"url":"https://cap.cloud.sap/resources/license/developer-license-3_2_CAP.txt","title":"SAP Developer License Agreement 3.2 CAP","checked":"2026-09-16","quote":"documentation, plug-ins, templates, scripts and sample code, libraries, software development kits"}],"inherited_from":"cap-plugins-and-applications","relevant_capabilities":["agent-systems-access","async-processing","data-import-export","database-connectors","deployment","destinations","llm-integration","mcp-servers","plugin-authoring","replication","retrieval-augmented-generation","rfc-connectivity"]}],"readings":{"liveness":[{"label":"Maintenance","tier":"poor","evidence":"40 months since release"},{"label":"Continuity","tier":"good","evidence":"3 publishers on npm"},{"label":"Repository","tier":"unknown","evidence":"no repository data"}],"compatibility":[{"label":"Declared for","tier":"fair","evidence":"nothing declared"},{"label":"Survived majors","tier":"poor","evidence":"no release since @sap/cds 10 shipped (July 2026)"},{"label":"Maintainer's CI","tier":"unknown","evidence":"no repository data"}],"practice":[{"label":"Tests","tier":"unknown","evidence":"not crawled"},{"label":"Docs","tier":"good","evidence":"README 6 KB"},{"label":"Changelog","tier":"fair","evidence":"none in the repo"}],"reach":[{"value":2,"unit":"installs/week"},{"value":null,"unit":"watching"}]},"signals":{"crawled_at":"2026-10-26","latest_version":"0.7.63","majors":{"0.1":{"version":"0.1.0","date":"2022-11-09"},"0.2":{"version":"0.2.0","date":"2022-11-18"},"0.3":{"version":"0.3.0","date":"2022-11-18"},"0.4":{"version":"0.4.0","date":"2022-11-18"},"0.5":{"version":"0.5.0","date":"2022-11-19"},"0.6":{"version":"0.6.0","date":"2022-11-19"},"0.7":{"version":"0.7.0","date":"2022-11-21"}},"license":"MIT","first_release":"2022-11-09","last_release":"2023-06-28","releases":99,"cadence_days":5,"maintainers":3,"repository":null,"repository_directory":null,"peer_cds":null,"test_script":false,"types":true,"downloads_weekly":2,"npm_document_version":"0.7.63","npm_document_integrity":"sha512-HK8GRwlWrSfsKhIFtw/qbiin2mOdaK93CLIWXwIdH23mU/CoP7g0Dy72Orv5yKJ5onsWxw4HTRgvRxONuqkqNw==","npm_document_tarball":"https://registry.npmjs.org/@rizing/cds-extension/-/cds-extension-0.7.63.tgz","readme_path":"README.md","readme_bytes":6075,"readme_source":"npm","changelog":false,"license_file":true,"license_path":"LICENSE","license_name":"The MIT License (MIT)","months_since_release":40,"dormant":true,"dependencies":0,"node_engine":null,"downloads_monthly":117},"release_notes":{"license":"The MIT License (MIT)","quotable":false,"versions":[{"version":"0.7.63","date":"2023-06-28"},{"version":"0.7.62","date":"2023-05-07"},{"version":"0.7.61","date":"2023-05-07"},{"version":"0.7.60","date":"2023-02-20"},{"version":"0.7.59","date":"2023-02-20"},{"version":"0.7.58","date":"2023-01-25"},{"version":"0.7.57","date":"2023-01-18"},{"version":"0.7.56","date":"2023-01-17"},{"version":"0.7.55","date":"2023-01-16"},{"version":"0.7.54","date":"2023-01-11"},{"version":"0.7.53","date":"2022-12-15"},{"version":"0.7.52","date":"2022-12-14"},{"version":"0.7.51","date":"2022-12-14"},{"version":"0.7.50","date":"2022-12-12"},{"version":"0.7.49","date":"2022-12-12"},{"version":"0.7.48","date":"2022-12-12"},{"version":"0.7.47","date":"2022-12-12"},{"version":"0.7.46","date":"2022-12-12"},{"version":"0.7.45","date":"2022-12-12"},{"version":"0.7.44","date":"2022-12-11"},{"version":"0.7.43","date":"2022-12-11"},{"version":"0.7.42","date":"2022-12-11"},{"version":"0.7.41","date":"2022-12-11"},{"version":"0.7.40","date":"2022-12-11"},{"version":"0.7.39","date":"2022-12-11"},{"version":"0.7.38","date":"2022-12-10"},{"version":"0.7.37","date":"2022-12-10"},{"version":"0.7.36","date":"2022-12-10"},{"version":"0.7.35","date":"2022-12-10"},{"version":"0.7.34","date":"2022-12-10"},{"version":"0.7.33","date":"2022-12-10"},{"version":"0.7.32","date":"2022-12-09"},{"version":"0.7.31","date":"2022-12-09"},{"version":"0.7.30","date":"2022-12-08"},{"version":"0.7.29","date":"2022-12-07"},{"version":"0.7.28","date":"2022-12-06"},{"version":"0.7.27","date":"2022-12-06"},{"version":"0.7.26","date":"2022-12-05"},{"version":"0.7.25","date":"2022-12-04"},{"version":"0.7.24","date":"2022-12-04"},{"version":"0.7.23","date":"2022-12-04"},{"version":"0.7.22","date":"2022-12-02"},{"version":"0.7.21","date":"2022-12-01"},{"version":"0.7.20","date":"2022-11-30"},{"version":"0.7.19","date":"2022-11-29"},{"version":"0.7.18","date":"2022-11-29"},{"version":"0.7.17","date":"2022-11-27"},{"version":"0.7.16","date":"2022-11-27"},{"version":"0.7.15","date":"2022-11-26"},{"version":"0.7.14","date":"2022-11-25"},{"version":"0.7.13","date":"2022-11-25"},{"version":"0.7.12","date":"2022-11-24"},{"version":"0.7.11","date":"2022-11-24"},{"version":"0.7.10","date":"2022-11-24"},{"version":"0.7.9","date":"2022-11-24"},{"version":"0.7.8","date":"2022-11-23"},{"version":"0.7.7","date":"2022-11-23"},{"version":"0.7.6","date":"2022-11-22"},{"version":"0.7.5","date":"2022-11-22"},{"version":"0.7.4","date":"2022-11-22"},{"version":"0.7.3","date":"2022-11-22"},{"version":"0.7.2","date":"2022-11-22"},{"version":"0.7.1","date":"2022-11-21"},{"version":"0.7.0","date":"2022-11-21"},{"version":"0.6.5","date":"2022-11-21"},{"version":"0.6.4","date":"2022-11-20"},{"version":"0.6.3","date":"2022-11-20"},{"version":"0.6.2","date":"2022-11-20"},{"version":"0.6.1","date":"2022-11-20"},{"version":"0.6.0","date":"2022-11-19"},{"version":"0.5.0","date":"2022-11-19"},{"version":"0.4.0","date":"2022-11-18"},{"version":"0.3.0","date":"2022-11-18"},{"version":"0.2.0","date":"2022-11-18"},{"version":"0.1.27","date":"2022-11-17"},{"version":"0.1.26","date":"2022-11-15"},{"version":"0.1.25","date":"2022-11-15"},{"version":"0.1.24","date":"2022-11-14"},{"version":"0.1.23","date":"2022-11-14"},{"version":"0.1.22","date":"2022-11-13"},{"version":"0.1.21","date":"2022-11-11"},{"version":"0.1.20","date":"2022-11-11"},{"version":"0.1.19","date":"2022-11-11"},{"version":"0.1.18","date":"2022-11-11"},{"version":"0.1.17","date":"2022-11-11"},{"version":"0.1.16","date":"2022-11-11"},{"version":"0.1.15","date":"2022-11-11"},{"version":"0.1.14","date":"2022-11-11"},{"version":"0.1.13","date":"2022-11-11"},{"version":"0.1.9","date":"2022-11-11"},{"version":"0.1.8","date":"2022-11-10"},{"version":"0.1.7","date":"2022-11-10"},{"version":"0.1.6","date":"2022-11-10"},{"version":"0.1.5","date":"2022-11-10"},{"version":"0.1.4","date":"2022-11-10"},{"version":"0.1.3","date":"2022-11-10"},{"version":"0.1.2","date":"2022-11-10"},{"version":"0.1.1","date":"2022-11-09"},{"version":"0.1.0","date":"2022-11-09"}],"crawled_at":"2026-10-25"},"edges":{"maintainers":[],"contributors":[],"explained_by":[{"ref":"content:keep-the-core-clean-with-rizing-cdsx","name":"Keep the Core Clean with Rizing CDSX","json":"/content/keep-the-core-clean-with-rizing-cdsx.json"}],"alternative_to_this":[],"needed_by":[],"available_via":[],"parts":[],"add_on_to":{"ref":"artifact:sap-cds","name":"@sap/cds","json":"/artifacts/sap-cds.json"},"add_ons":[],"answered_through_parts":[]}}