Skip to content

Latest commit

 

History

History
22 lines (14 loc) · 2.58 KB

DirectEdit.md

File metadata and controls

22 lines (14 loc) · 2.58 KB

DirectEdit Vocabulary

Namespace: com.sap.vocabularies.DirectEdit.v1

Terms for Direct-Edit User Interfaces

Terms

Term Type Description
SideEffects (Experimental) SideEffectsType Determine side effects of client-side data modification

After a change to a property whose path is contained in Triggers, the client should pass the entity with the changed property to the CalculationFunction and receive the entity with all changes that happen as side effects of the given change.

Property Type Description
Triggers [String] List of paths to the properties whose changes should trigger the side effects calculation.
CalculationFunction QualifiedName

The operation calculating the side effects. While non-changing for the service, this technically is an action bound to the entity set so that the parameters can be sent in the POST request body. The action has the following non-binding parameters:

  • Qualifier of type Core.SimpleIdentifier or cast-compatible: the qualifier of the SideEffects annotation
  • Trigger of type Edm.String: the trigger of the side-effects determination, see Triggers property
  • Data of either the entity type of the annotated entity set or a complex type that is structure-compatible with it

The return type of the action also needs to be either the entity type of the annotated entity set or structure-compatible with it, it can be the same type as for Data.

Structure-compatible means:

  • each primitive property that has the same name as a corresponding primitive property of the entity type of the annotated entity set is cast-compatible with the corresponding property and is nullable,
  • each complex property that has the same name as a corresponding complex or navigation property of the entity type of the annotated entity set is structure-compatible with the corresponding property
  • it may contain properties without a corresponding property in the entity type
  • it may omit properties of the entity type