It is perfectly possible to use both, but I would recommend that you plan your Graph Model in GraphQL primarily. Because GraphQL works differently than DQL, it has its own rules and model.
Starting from the idea that you intend to use both languages simultaneously. The main recommendation is to create your Schema in GraphQL only, and it will be automatically created on the DQL side normally. Do not create in one and try to recreate in the other. It can conflict things.
And no, they aren’t the same. GraphQL follows its own way of modeling, naming predicates, and so on. It is an internal “convention” just for GraphQL.
To add data via DQL mutation you have to follow the GraphQL modeling. For example, let’s take the predicate “name”. In GraphQL the predicate has a “prefix” based on its Type. Let’s say that this predicate is part of the “User” type. So in the DQL part, it will be “User.name”. Basicaly all predicates in the DQL part will be named as “${typeAsPrefix}+${predicateName}”.
Yes, just follow the internal “convention”.
Nope.
Example
This GraphQL query
query {
queryReview(filter: { comment: {alloftext: "Fantastic"}}) {
comment
by {
username
}
about {
name
}
}
}