{"ref":"capability:seed-data","page":"/capabilities/seed-data","json":"/capabilities/seed-data.json","generated":"2026-10-26","drafted_with_ai":true,"entity":{"id":"seed-data","name":"Seed data","domain":"developer-experience","ecosystems":["cap","abap","ui5"],"universal":true,"description":"Getting realistic data into a service so it can be developed and demonstrated — initial data, per-tenant content, and believable volumes for testing.","short":"Getting realistic data into a service for development and demos","core_coverage":{"state":"core-and-community","assessed_at":"2026-08-31","what_core_does":"CSV files loaded at deploy time, and `cds add data` to generate them — with a record count per entity and a choice of CSV or JSON.","where_it_stops":"It stops at shape, not volume. `cds add data` fills the right columns with placeholder values; it does not make a name look like a name or an IBAN like an IBAN, and it has no notion of per-tenant fixtures.","sources":[{"url":"https://cap.cloud.sap/docs/guides/databases/initial-data","title":"Providing initial data","checked":"2026-08-31"},{"url":"https://cap.cloud.sap/docs/tools/cds-cli#cds-add","title":"cds CLI — cds add data","checked":"2026-09-01","quote":"--records | -n The number of records to be created for each entity."}],"relationship":"narrow-by-design","community_adds":"Community generators fill `db/data` with believable values: [cap-js-mockdata](artifact:mauriciolauffer-cap-js-mockdata) from `@Mockdata` annotations with Faker, and [cap-mock-generator](artifact:xbergun-cap-mock-generator) from the `.cds` schema, with relationally consistent rows. [@sap/cds-common-content](artifact:sap-cds-common-content) is SAP's ISO content for the common countries, currencies, languages and timezones, and [@animb1996/cds-data-drift](artifact:animb1996-cds-data-drift) reports where the CSV files and the deployed rows have diverged."},"changed_in":[{"version":"@sap/cds-dk 7.9.1","date":"2024-05-02","applies_to":{"ecosystems":["cap"]},"what_changed":"`cds add data` arrived, generating seed files with a record count per entity and a CSV or JSON target. Before it, the core loaded CSV but did not produce any. The 7.9 line reached npm on 2024-05-02.","invalidates":"Any guidance that you must hand-write or third-party-generate CSV to get seed data at all. That was true before mid-2024 and is not now — the open question is realism, not volume.","source":{"url":"https://cap.cloud.sap/docs/tools/cds-cli#cds-add","title":"cds CLI — cds add data","checked":"2026-09-01","quote":"--records | -n The number of records to be created for each entity."}}],"history":[{"date":"2026-08-31","field":"core_coverage.state","from":"left-open-on-purpose","to":"core-and-community","reason":"States renamed to describe who is present rather than to interpret intent. left-open-on-purpose asserted a motive; core-and-community states a fact, with relationship carrying the intent separately."},{"date":"2026-09-01","field":"core_coverage.where_it_stops","from":"It stops at static CSV. Generated volumes, realistic distributions and per-tenant fixtures are community territory.","to":"It stops at shape, not volume. `cds add data` fills the right columns with placeholder values; it does not make a name look like a name or an IBAN like an IBAN, and it has no notion of per-tenant fixtures.","reason":"Wrong since mid-2024 and nobody had checked. It said generated volumes were community territory; `cds add data` has generated volumes since @sap/cds-dk 7.9.0. Found by doing the version-history pass — which is the argument for that pass in one line."},{"date":"2026-09-13","field":"name","from":"Seed and test data","to":"Seed data","reason":"The map draws every capability as one tile, and a name that spells out its second half ran to three lines at a size nobody could read. The id already carried the short name; the name now matches it. The concern is unchanged: the description and the coverage say what it spans."},{"date":"2026-09-14","field":"ecosystems","from":"cap","to":"cap, abap","reason":"abapFaker generates localised fake names, addresses and other values in ABAP for development and tests, so the concern has an answer behind the ABAP door."},{"date":"2026-10-19","field":"ecosystems","from":"cap, abap","to":"cap, abap, ui5","reason":"vscode-ui5-odata-mock-generator and openui5-smart-mockserver were staged in intake-20261019-bestofui5 under ui5-testing; the first one's drafter noted that seed-data fit better but was not open on the UI5 door. The UI5 reading comes from the OpenUI5 mock server pages and SAP's ui5-middleware-fe-mockserver README."},{"date":"2026-10-26","field":"core_coverage.community_adds","from":"(none)","to":"Community generators fill db/data with believable values (cap-js-mockdata, cap-mock-generator); @sap/cds-common-content is SAP's ISO content; @animb1996/cds-data-drift reports divergence between CSV and deployed rows.","reason":"Reassessed against the graph (check:capabilities): three providers arrived after the block was last looked at and the text named none of them."},{"date":"2026-10-26","field":"coverage_by_ecosystem.ui5.state, coverage_by_ecosystem.ui5.relationship, coverage_by_ecosystem.ui5.community_adds","from":"core-and-community, relationship unassessed, community_adds naming openui5-smart-mockserver and VSCode UI5: OData Mock Generator","to":"core-only, no relationship, no community_adds","reason":"Reassessed against the graph (check:capabilities): no artifact provides seed-data for the UI5 door; the two tools the sentence named provide ui5-testing. The core stays present on the sourced what_core_does. The tools stay on the graph under ui5-testing."}],"coverage_by_ecosystem":{"abap":{"state":"core-and-community","assessed_at":"2026-09-14","what_core_does":"eCATT keeps test data apart from test scripts in test data containers, whose parameters describe the data and whose variants hold the values.","where_it_stops":"At values someone entered. A test data container holds what was typed into its variants; believable names and addresses, and the volume a stress test needs, are generated by code written on top.","sources":[{"url":"https://help.sap.com/doc/saphelp_snc700_ehp01/7.0.1/en-US/09/0a8b3f81fef93de10000000a114084/content.htm?no_cache=true","title":"Organizing Test Data — Test and Analysis Tools in ABAP, SAP Help Portal","checked":"2026-09-14","quote":"Test data containers consist of parameters and variants. The parameters describe the interface of the container and the variants store the data."}],"relationship":"unassessed","note":"The repository here is independent; how it relates to eCATT test data containers has not been assessed."},"ui5":{"state":"core-only","assessed_at":"2026-10-19","what_core_does":"The OData V2 mock server, `sap/ui/core/util/MockServer`, answers from JSON files or produces random data from the service metadata it simulates when the files are left out. Apart from the framework, SAP publishes [ui5-middleware-fe-mockserver](https://github.com/SAP/open-ux-odata/tree/main/packages/ui5-middleware-fe-mockserver), a UI5 dev server middleware that answers OData V2 and V4 requests of the Fiori elements templates it supports, with a `generateMockData` option.","where_it_stops":"At values that fit the types. The OpenUI5 documentation says the generated data does not match the business scenario, so believable names and addresses are files someone writes.","sources":[{"url":"https://github.com/SAP/openui5-docs/blob/main/docs/04_Essentials/using-mock-data-with-the-odata-v2-mock-server-a428d41.md","title":"OpenUI5 documentation — Using Mock Data with the OData V2 Mock Server","checked":"2026-10-19","quote":"The mock server can produce random mock data based on the service metadata it simulates."},{"url":"https://github.com/SAP/openui5-docs/blob/main/docs/04_Essentials/using-mock-data-with-the-odata-v2-mock-server-a428d41.md","title":"OpenUI5 documentation — Using Mock Data with the OData V2 Mock Server","checked":"2026-10-19","quote":"However, this option does not provide data that matches your business scenario."},{"url":"https://github.com/SAP/open-ux-odata/tree/main/packages/ui5-middleware-fe-mockserver","title":"SAP/open-ux-odata — @sap-ux/ui5-middleware-fe-mockserver README","checked":"2026-10-19","quote":"it supports loading mock data for OData v2/v4 requests for supported Fiori elements templates."},{"url":"https://github.com/SAP/open-ux-odata/tree/main/packages/ui5-middleware-fe-mockserver","title":"SAP/open-ux-odata — @sap-ux/ui5-middleware-fe-mockserver README","checked":"2026-10-19","quote":"whether or not you want to use automatically generated mockdata"}]}},"framing_by_ecosystem":{"abap":{"description":"In ABAP development and test data lives in the system's own tables, so it is entered by hand, kept in eCATT test data containers, or generated by ABAP code that fills them, with localised providers for names and addresses."},"ui5":{"description":"In a UI5 app the service is often a mock server standing in for the OData backend, so the data here is what that mock server answers with: JSON files written by hand or generated from the metadata. Running the mock server itself is [UI testing](capability:ui5-testing)."}},"drafted_with_ai":true},"sap_delivery":{"door":"cap","all":{"built_in":[{"ref":"artifact:sap-cds","name":"@sap/cds","json":"/artifacts/sap-cds.json"}],"documented_pattern":[],"announced":[],"packages":[{"ref":"artifact:sap-cds-common-content","name":"@sap/cds-common-content","json":"/artifacts/sap-cds-common-content.json"}]},"by_flavor":{"node":{"built_in":[{"ref":"artifact:sap-cds","name":"@sap/cds","json":"/artifacts/sap-cds.json"}],"documented_pattern":[],"announced":[],"packages":[{"ref":"artifact:sap-cds-common-content","name":"@sap/cds-common-content","json":"/artifacts/sap-cds-common-content.json"}]},"java":null}},"edges":{"use_cases":[],"shared_tasks":[],"related_tasks":[],"options":[{"ref":"artifact:animb1996-cds-data-drift","name":"@animb1996/cds-data-drift","json":"/artifacts/animb1996-cds-data-drift.json","ecosystem":"cap","origin_ring":"independent"},{"ref":"artifact:sap-cds","name":"@sap/cds","json":"/artifacts/sap-cds.json","ecosystem":"cap","origin_ring":"sap-official"},{"ref":"artifact:sap-cds-common-content","name":"@sap/cds-common-content","json":"/artifacts/sap-cds-common-content.json","ecosystem":"cap","origin_ring":"sap-official"},{"ref":"artifact:se38-abapfaker","name":"abapFaker","json":"/artifacts/se38-abapfaker.json","ecosystem":"abap","origin_ring":"independent"},{"ref":"artifact:mauriciolauffer-cap-js-mockdata","name":"cap-js-mockdata","json":"/artifacts/mauriciolauffer-cap-js-mockdata.json","ecosystem":"cap","origin_ring":"independent"},{"ref":"artifact:xbergun-cap-mock-generator","name":"cap-mock-generator","json":"/artifacts/xbergun-cap-mock-generator.json","ecosystem":"cap","origin_ring":"independent"}],"samples":[],"explained_by":[{"ref":"content:new-tutorial-for-ui5-middleware-fe-mockserver","name":"New tutorial for UI5 Middleware FE Mockserver","json":"/content/new-tutorial-for-ui5-middleware-fe-mockserver.json"},{"ref":"content:avoiding-data-loss-when-loading-initial-data-with-csv-files","name":"Avoiding Data Loss When Loading Initial Data with CSV Files in CAP","json":"/content/avoiding-data-loss-when-loading-initial-data-with-csv-files.json"},{"ref":"content:random-numbers-and-probability-distributions-in-the-abap-environments-for-2508","name":"Random Numbers and Probability Distributions in the ABAP Environments for 2508","json":"/content/random-numbers-and-probability-distributions-in-the-abap-environments-for-2508.json"},{"ref":"content:handling-csv-data-deployment-in-cap-hdi-without-data-loss","name":"Handling CSV Data Deployment in CAP HDI Without Data Loss","json":"/content/handling-csv-data-deployment-in-cap-hdi-without-data-loss.json"},{"ref":"content:using-the-ui5-mockserver-for-client-specific-data-and-testing","name":"Using the UI5 Mockserver for Client-Specific Data and Testing","json":"/content/using-the-ui5-mockserver-for-client-specific-data-and-testing.json"},{"ref":"content:avoid-design-time-cap-server-restarts-with-local-data-files","name":"Avoid design time CAP server restarts when maintaining local data files","json":"/content/avoid-design-time-cap-server-restarts-with-local-data-files.json"},{"ref":"content:iso-content-for-common-cap-types","name":"ISO content for common CAP types","json":"/content/iso-content-for-common-cap-types.json"},{"ref":"content:add-useful-extensions-to-dev-spaces-in-bas","name":"Add useful Extensions to Dev spaces in SAP Business Application Studio","json":"/content/add-useful-extensions-to-dev-spaces-in-bas.json"},{"ref":"content:cap-consume-external-service-part-1","name":"CAP: Consume External Service - Part 1","json":"/content/cap-consume-external-service-part-1.json"}],"normative_context":[]}}