I was thinking around the idea of adding the bindings and mappings into the Solution Data Model as directives to have more simpler syntax and UX. The idea is to “hide” the data model storage syntax and bindings syntax so everything can be merged into Solution Data Model GraphQL SDL.
For example if we have following Solution data model
type Person @view {
firstName: string
lastName: string
}
The following DMS should be automatically created
Data model storage
-----
PersonTable
firstName: string
lastName: string
However, if I want to make some overrides, I can use the additional directives. For example:
type Activity @view @bind(filter: { hasData: { "in": "Risk" } }) {
position: string @bind("dms.Table2.position")
action: string
line: Asset @bind("dms.Asset")
equipment: Asset
}
In this case, in DMS, the Activity data model can be created automatically as well as the bindings and mappings to the related tables.
Thoughts?