typedb
typedb copied to clipboard
TypeDB 3.0: drop Concept API in favor of enhanced TypeQL
Problem to Solve
The maintanance and extension surface area of drivers' Concept API is extremely high while the its usage is extremely low, now that TypeQL fetch handles optionality for most users. However, there is still some functionality in the Concept API that is not available in TypeQL, such as renaming types.
Proposed Solution
We should tabulate the delta between Concept API features and TypeQL expressivity, and enhance the language to cover all the remaining features that are not otherwise available.
To make sure we can migrate names in a backwards compatible/easy way, we may need to introduce type label aliases as well.
Non-final syntax:
# Idempotent rename and alias schema operations
define
rename my_old_type my_new_type;
# unsure if required: alias some_long_type_name some_nickname;