Skip to content

Doesn't follow GraphQL spec #114

@stubailo

Description

@stubailo

Hey, I just checked out the demo, and it looks like the query language is similar to GraphQL in syntax, but doesn't follow many critical parts of the specification, meaning it won't be able to work with GraphQL clients such as Apollo Client and Relay that expect spec-compliant results.

For example, this query:

{
  me(_xid_: m.0bxtg) {
    type.object.name.en
    film.actor.film {
      film.performance.film {
        type.object.name.en
        type.object.name.ru
      }
    }
  }
}

Returns the following result:

{
  "_uid_": "0xcbcefccffb9eb400",
  "film.actor.film": [
    {
      "_uid_": "0x127e8b8ee91e3a5",
      "film.performance.film": [
        {
          "_uid_": "0x210ee792fe791347",
          "type.object.name.en": "Catch Me If You Can",
          "type.object.name.ru": "Поймай меня, если сможешь"
        }
      ]
    },
  ...

There are at least problems with this query/result combination:

  1. There is no me field at the root of the result, meaning the results we get don't match the shape of the query
  2. There are many _uid_ properties in places where the query didn't ask for them

I realize the GraphQL support roadmap item is not complete, but the checked off tasks imply that basic query support is complete. I think it would be much better to follow the query specification so that this database can be interoperable with other GraphQL tools.

Metadata

Metadata

Assignees

Labels

kind/bugSomething is broken.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions