@@ -506,9 +506,10 @@ treated in documentation and tooling.
506
506
Object types have the potential to be invalid if incorrectly defined. This set
507
507
of rules must be adhered to by every Object type in a GraphQL schema.
508
508
509
- 1 . The fields of an Object type must have unique names within that Object type;
509
+ 1 . An Object type must define one or more fields.
510
+ 2 . The fields of an Object type must have unique names within that Object type;
510
511
no two fields may share the same name.
511
- 2 . An object type must be a super-set of all interfaces it implements.
512
+ 3 . An object type must be a super-set of all interfaces it implements:
512
513
1 . The object type must include a field of the same name for every field
513
514
defined in an interface.
514
515
1 . The object field must be of a type which is equal to or a sub-type of
@@ -633,7 +634,8 @@ Interfaces are never valid inputs.
633
634
634
635
Interface types have the potential to be invalid if incorrectly defined.
635
636
636
- 1 . The fields of an Interface type must have unique names within that Interface
637
+ 1 . An Interface type must define one or more fields.
638
+ 2 . The fields of an Interface type must have unique names within that Interface
637
639
type; no two fields may share the same name.
638
640
639
641
@@ -776,6 +778,13 @@ corresponding entry, the value is the result of coercing null. The input
776
778
coercion above should be performed according to the input coercion rules of the
777
779
type declared by the input field.
778
780
781
+ #### Input Object type validation
782
+
783
+ 1 . An Input Object type must define one or more fields.
784
+ 2 . The fields of an Input Object type must have unique names within that
785
+ Input Object type; no two fields may share the same name.
786
+ 3 . The return types of each defined field must be an Input type.
787
+
779
788
780
789
### Lists
781
790
@@ -863,6 +872,10 @@ query withNullableVariable($var: String) {
863
872
}
864
873
```
865
874
875
+ #### Non-Null type validation
876
+
877
+ 1 . A Non-Null type must not wrap another Non-Null type.
878
+
866
879
867
880
## Directives
868
881
0 commit comments