In its most elaborative case, a GraphQL API can have the following data definitions:
Ideally, the data source and external type definitions are taken into consideration by the internal type definitions. In other words, the internal type definition is designed so that the definitions in the data sources and external connections are adhered to. In a more straightforward instance, there may be a single data source (a single database), and the internal type can just be the type definitions of the database.