type Query { deity (name: [[[[[String!]]!]]], mythology: Realm): Deity! character (characterID: String! , age: Int ): Character! hero: Human! } interface MyInterface { name: String } type Mutation { createDeity (deityName: [[[[[String!]]!]]], deityMythology: String): Deity! createCharacter (charRealm: Realm! , charMutID: String! ): Character! } union Character = Creature | Deity | Human type Deity { fullName: String! power: Power } type Creature { creatureName: String! realm: City! } type Human { humanName: String! lifetime: Lifetime! profession: Profession } enum Profession { Priest Farmer Artist } input Realm { owner: String! surface: Int } enum City { Athens Ithaca Sparta Troy } scalar Lifetime scalar Power