Search

Feature Matrix

Following is an index of the features currently covered by CAP, with status and availability information. In addition, we also list features, which are planned or already in development, but not yet generally available, in order to give you an idea about our roadmap.

[Legend]

Tag Explanation
    Generally and publicly available today
  n/a Not applicable for this combination
in prog. In progress; likely to become available soon
planned Might get picked up for development soon
contrib? Not currently scheduled for development

Domain Modeling

  CDS
Entity-relationship modeling
Views/projections
Custom types
Associations
Annotations
Aspects
Services (w/redirection)
Compositions of entities
Composition of types in prog.
Nested projections planned
Calculated fields planned
Managed n:m associations contrib?
Linters as pluggable architecture contrib?

(Generic) Service Providers

  CDS Node.js Java
Automatically serving CRUD requests n/a
Reading/writing nested documents
Automatic input validation
Auto-filled primary keys
Auto-filled admin data
Implicit paging planned
Implicit sorting planned planned
Access control
Serving delta requests planned planned
Streaming & media types planned
Automatic change logging in prog. in prog. planned
Conflict detection via ETags
Application-level locking planned planned planned

Enterprise Features

  CDS Node.js Java
Authentication n/a
Authorization
Localization/i18n
Localized data
Temporal data
Dynamic extensibility in prog.
Audit logging n/a in prog. planned
Data privacy — r/w access logs in prog. in prog. planned
Data privacy — personal data mgmt in prog. in prog. planned
Data privacy — retention mgmt in prog. in prog. planned

Protocol Support1

  CDS Node.js Java
Local 2
REST
OData V2 3 contrib?
OData V4
Events/Messaging in prog. in prog. in prog.
  - SAP Enterprise Messaging n/a in prog. in prog.
  - Local n/a in prog.
  - AMQP n/a in prog. contrib?
  - Kafka n/a contrib? contrib?
  - RabbitMQ n/a contrib? contrib?
GraphQL4 contrib? contrib? contrib?

1 Each inbound and outbound

2 That are service-to-service calls in the same server

3 With restricted liability; only after double-checking with us

4 Ranked low in our current backlog, based on stakeholder requests and ratings. Could be a good case for 3rd-party contribution.

API Formats

  import export
OData EDMX v2
OData EDMX v4
OpenAPI planned in prog.
AsyncAPI in prog. in prog.

This is about CDS only, that is, about translating the mentioned formats from and into CSN.

Databases

  CDS/deploy Node.js Java
SAP HANA out of the box
SQLite out of the box 1 2 3
Any SQL n/a
Pluggable drivers architecture in prog. in prog. in prog.
Schema evolution for any DB contrib? n/a n/a

1 For dev scenarios
2 Not for productive use!

You can already integrate your database of choice in a project or a contribution level. The last two are meant to further facilitate this by out-of-the-box features in CAP.

Frontends, Periphery

  CDS Node.js Java
Serving Fiori UIs
With Fiori draft
Vue.js n/a std1 std1
React.js n/a std1 std1
Angular n/a std1 std1
Serving analytics in prog. planned planned
Serving search engines in prog. planned planned
Data extraction (for example, to DataHub) in prog. in prog. planned

1 “std”: supported on the level of common AJAX standards, for example, using jQuery or similar. Similar to Fiori, we or the community might provide more advanced support in future.

Cloud Platform Integration

  Node.js Java
Deploy to/run on Cloud Foundry
Deploy to/run on Kubernetes1 contrib? contrib?
Deploy/run Serveless planned planned
SaaS on-/off-boarding
Multitenancy
Health checks in prog.
Profiling (via Dynatrace, SAP stats, …)
Resilience (retry, circuit breaking) planned
Caching (for example, via Redis) planned planned

1 Available on plain Kubernetes level → see blog post by Thomas Jung