GraphQL Names

Names in GraphQL specification are limited to this ASCII subset of characters:

GraphQL names specification

Denodo GraphQL service escapes disallowed characters with the Unicode escape sequence: \u4_hex_digits but replacing \ with _, as \ is not valid.

The identifiers 29client and na-me of the Denodo table below, are not allowed by the GraphQL specification.

Invalid names in GraphQL

When the Denodo GraphQL Service generates the GraphQL schema it escapes those identifiers of the 29client view:

  • 29client -> _u00329client

  • na-me -> na_u002Dme

GraphQL schema with non ASCII characters
type Query {
    _u00329client(client_id: String, na_u002Dme: String, surname: String, client_type: String, company_code: String, ssn: String, _first: Int, _offset: Int): [_u00329client]!
}

type _u00329client {
  client_id: String
  na_u002Dme: String
  surname: String
  client_type: String
  company_code: String
  ssn: String
}
Query with non ASCII characters

Query with non ASCII characters

Response for query with non ASCII characters
{
  "data": {
     "_u00329client": [
             {
             "na_u002Dme": "John",
             "client_id": "C001",
             "client_type": "01",
             "company_code": "COM01",
             "ssn": "592-76-8867",
             "surname": "Smith"
             },

        ...
     ]
  }
}