Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
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
6 changes: 6 additions & 0 deletions spec/Appendix B -- Notation Conventions.md
Original file line number Diff line number Diff line change
Expand Up @@ -247,3 +247,9 @@ entry has a unique key, and can be directly referenced by that key.
:: An _ordered map_ is a map which has a defined order. An entry added to an
ordered map, which does not have an entry with that key, is ordered after
existing entries.

Note: This specification defines ordered data collection only when strictly
required. When an order is observable, implementations should preserve it to
improve output legibility and stability. For example if applying a grammar to an
input string yields a _set_ of elements, serialization should emit those
elements in the same source order.
8 changes: 8 additions & 0 deletions spec/Section 4 -- Introspection.md
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,14 @@ Tools built using GraphQL introspection should respect deprecation by
discouraging deprecated use through information hiding or developer-facing
warnings.

**Stable Ordering**

The observable order of all data collections should be preserved to improve
schema legibility and stability. When a schema is produced from a
{TypeSystemDocument}, introspection should return items in the same source order
for each element list: object fields, input object fields, arguments, enum
values, directives, union member types, and implemented interfaces.

**Schema Introspection Schema**

The schema introspection system is itself represented as a GraphQL schema. Below
Expand Down