The question is pretty straightforward, is it possible to have multiple presentation layers working on the same service? E.g: have a REST API for applications that mostly do CRUD operations with the data and a Graph API for clients that would benefit from fetching data according to their needs. The inspiration for this question comes from a diagram (below) that appears in the docs of GraphQL.
In this diagram the Presentation Layer takes whatever form while using the same Business Layer and subsequently the same Data Access Layer. While I assume this is usual (I might be wrong), I haven't found any resources on the internet explaining what is common practice.
I am currently trying to build a Graph and a REST within the same application, I don't know if this is industry standard or it would be to have each Presentation Layer access another service thus having three separate applications (one packaging business layer + data access layer and one for each presentation layer).
It is worth mentioning that I haven't worked with GraphQL previously (only REST APIs) and there might be some kind of obvious impediment that I do not know about.
Thanks in advance.
