@@ -302,15 +302,16 @@ enumerable. GraphQL offers an `Enum` type in those cases, where the type
302
302
specifies the space of valid responses .
303
303
304
304
Scalars and Enums form the leaves in response trees ; the intermediate levels are
305
- `Object ` types , which define a set of fields , where each field is another type
306
- in the system , allowing the definition of arbitrary type hierarchies .
305
+ `Object ` types , which define an ordered set of fields , where each field is
306
+ another type in the system , allowing the definition of arbitrary type
307
+ hierarchies .
307
308
308
309
GraphQL supports two abstract types : interfaces and unions .
309
310
310
- An `Interface ` defines a list of fields ; `Object ` types and other Interface
311
- types which implement this Interface are guaranteed to implement those fields .
312
- Whenever a field claims it will return an Interface type , it will return a valid
313
- implementing Object type during execution .
311
+ An `Interface ` defines an ordered set of fields ; `Object ` types and other
312
+ Interface types which implement this Interface are guaranteed to implement those
313
+ fields . Whenever a field claims it will return an Interface type , it will return
314
+ a valid implementing Object type during execution .
314
315
315
316
A `Union ` defines a set of possible types ; similar to interfaces , whenever the
316
317
type system claims a union will be returned , one of the possible types will be
@@ -674,11 +675,11 @@ GraphQL operations are hierarchical and composed, describing a tree of
674
675
information . While Scalar types describe the leaf values of these hierarchical
675
676
operations , Objects describe the intermediate levels .
676
677
677
- GraphQL Objects represent a list of named fields , each of which yield a value of
678
- a specific type . Object values should be serialized as ordered maps , where the
679
- selected field names (or aliases) are the keys and the result of evaluating the
680
- field is the value , ordered by the order in which they appear in the _selection
681
- set_ .
678
+ GraphQL Objects represent an ordered set of named fields , each of which yield a
679
+ value of a specific type . Object values should be serialized as ordered maps ,
680
+ where the selected field names (or aliases) are the keys and the result of
681
+ evaluating the field is the value , ordered by the order in which they appear in
682
+ the _selection set_ .
682
683
683
684
All fields defined within an Object type must not have a name which begins with
684
685
{"\_\_" } (two underscores), as this is used exclusively by GraphQL 's
@@ -920,7 +921,7 @@ of rules must be adhered to by every Object type in a GraphQL schema.
920
921
returns {true }.
921
922
4. If argument type is Non -Null and a default value is not defined :
922
923
1. The `@deprecated ` directive must not be applied to this argument .
923
- 3. An object type may declare that it implements a list of one or more unique
924
+ 3. An object type may declare that it implements a set of one or more unique
924
925
interfaces .
925
926
4. An object type must be a super -set of all interfaces it implements :
926
927
1. Let this object type be {objectType }.
@@ -983,7 +984,7 @@ InputValueDefinition : Description? Name : Type DefaultValue? Directives[Const]?
983
984
984
985
Object fields are conceptually functions which yield values . Occasionally object
985
986
fields can accept arguments to further specify the return value . Object field
986
- arguments are defined as a list of all possible argument names and their
987
+ arguments are defined as an ordered set of all possible argument names and their
987
988
expected input types .
988
989
989
990
All arguments defined within a field must not have a name which begins with
@@ -1094,9 +1095,10 @@ InterfaceTypeDefinition :
1094
1095
- Description ? interface Name ImplementsInterfaces ? Directives [Const ]?
1095
1096
[lookahead != `{`]
1096
1097
1097
- GraphQL interfaces represent a list of named fields and their arguments . GraphQL
1098
- objects and interfaces can then implement these interfaces which requires that
1099
- the implementing type will define all fields defined by those interfaces .
1098
+ GraphQL interfaces represent an ordered set of named fields and their arguments .
1099
+ GraphQL objects and interfaces can then implement these interfaces which
1100
+ requires that the implementing type will define all fields defined by those
1101
+ interfaces .
1100
1102
1101
1103
Fields on a GraphQL interface have the same rules as fields on a GraphQL object ;
1102
1104
their type can be Scalar , Object , Enum , Interface , or Union , or any wrapping
@@ -1348,7 +1350,7 @@ UnionMemberTypes :
1348
1350
- UnionMemberTypes | NamedType
1349
1351
- = `|`? NamedType
1350
1352
1351
- GraphQL Unions represent an object that could be one of a list of GraphQL Object
1353
+ GraphQL Unions represent an object that could be one of a set of GraphQL Object
1352
1354
types , but provides for no guaranteed fields between those types . They also
1353
1355
differ from interfaces in that Object types declare what interfaces they
1354
1356
implement , but are not aware of what unions contain them .
@@ -1548,9 +1550,9 @@ InputFieldsDefinition : { InputValueDefinition+ }
1548
1550
Fields may accept arguments to configure their behavior . These inputs are often
1549
1551
scalars or enums , but they sometimes need to represent more complex values .
1550
1552
1551
- A GraphQL Input Object defines a list of named input fields ; the input fields
1552
- are either scalars , enums , or other input objects . This allows arguments to
1553
- accept arbitrarily complex structs .
1553
+ A GraphQL Input Object defines an ordered set of named input fields ; the input
1554
+ fields are either scalars , enums , or other input objects . This allows arguments
1555
+ to accept arbitrarily complex structs .
1554
1556
1555
1557
In this example , an Input Object called `Point2D ` describes `x ` and `y ` inputs :
1556
1558
@@ -1938,7 +1940,7 @@ of a GraphQL document as an indicator that they should be evaluated differently
1938
1940
by a validator , executor , or client tool such as a code generator .
1939
1941
1940
1942
Directives can accept arguments to further specify their behavior . Directive
1941
- arguments are defined as a list of all possible argument names and their
1943
+ arguments are defined as an ordered set of all possible argument names and their
1942
1944
expected input types .
1943
1945
1944
1946
**Built -in Directives **
0 commit comments