Service composition
Building one solution out of parts other projects published: a reuse package brings its models, code, initial data and texts into your project through npm or Maven, you serve what you reference and extend what you import, and the same modules deploy as one application or as several on a shared database. Distinct from service integrationService integrationUsing a service that runs somewhere else as if it were one of your own: its API imported into the model, a proxy that turns a local query into the remote protocol, and a mock that stands in for it on a laptop. Distinct from destinations, which is how the address and the credentials are found, and from replication, which is holding the data locally.SAP and community, narrow by design, which reaches a service that stays deployed elsewhere, and from tenant extensibilityTenant extensibilityLetting a customer extend the model of a running SaaS application with extra fields and entities per tenant, without forking the application, as distinct from extending the application's code for every customer at once.SAP and community, unassessed, which is a subscriber extending a running SaaS.
Overview
@sap/cds-common-content ISO-standard content for CAP's common definitions — countries, languages, currencies and timezones — so a project does not seed those tables itself.
@sap/cds Embeds a reuse package added with npm into the project, models, code, initial data and i18n, serves what the project's own models reference, lets an imported definition be extended and its implementation replaced with @impl, and applies the same to a subscribed SaaS through cds pull and cds push.
com.sap.cds:cds-services-bom Resolves a reuse package from a Maven dependency: the CDS, CSV and i18n files under a cds folder in the JAR's resources are extracted by the CDS Maven plugin and embedded in the project like an npm package.
Not covered: At the package boundary. Which definitions a reuse package exposes is a convention, an index.cds, and not a mechanism; a shared database across applications is a project the guide has you assemble by hand and deploy on its own; and combining data that lives in several databases is federation, read under replicationData federationReading data that lives in another system as if it were local — by federating the query, by copying the rows, or by caching what was read. Three different answers to one question, and the choice is about how stale you can afford to be.SAP and community, narrow by design. Nothing outside the core provides this yet. One sample shows five services reading each other's SAP HANA tables across HDI containers.
No community artifact is documented here.
Artifacts
Seen working
Neither the package manifest nor the repository tree declares a licence.
Details
Coverage
For your agent
- Ref
capability:service-composition- JSON
- /capabilities/service-composition.json
- MCP
- Connecting an agent