Skip to content

RFC: Schema Coordinates #746

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 16 commits into from
Jan 7, 2021
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Update rfcs/SchemaCoordinates.md
Co-authored-by: Benjie Gillam <[email protected]>
  • Loading branch information
magicmark and benjie authored Nov 19, 2020
commit 9caf7196fe15021d96869e24bfc29a52c27a0c17
22 changes: 22 additions & 0 deletions rfcs/SchemaCoordinates.md
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,28 @@ _Existing implementations: Apollo Studio (see "Prior Art")_
- There are **no proposed GraphQL runtime changes**
- [Schema coordinate non-goals](#-syntax-non-goals)

## Proposed syntax

### `Type`

Refers to a named type (e.g. something represented by `__Type` in GraphQL introspection).

### `Type.attribute`

Refers to a named attribute on the named type. Not all types support this. For object types and interface types this is a field, for input objects this would be an input field, for enums this would be an enum value, for future GraphQL types this will relate to a related concept if they have one (e.g. for the [proposed "tagged" type](https://github.com/graphql/graphql-spec/pull/733) it would refer to the "member field").

### `Type.field(argName:)`

Refers to a named argument on the named field of the named type.

### `@directive`

References the given named directive

### `@directive(argName:)`

References the named argument of the named directive.

## ✨ Worked Examples

For example, consider the following schema:
Expand Down