interface Pet { name: String! } enum DogCommand { SIT HEEL } enum CatCommand { JUMP } type Dog implements Pet { name: String! nickname: String! barkVolume: Int! doesKnowCommand(dogCommand: DogCommand!): Boolean! } type Cat implements Pet { name: String! meowVolume: Int! doesKnowCommand(catCommand: CatCommand!): Boolean! } type Query { pet: Pet } query getPet { pet { ...conflictingDifferingResponses } } fragment conflictingDifferingResponses on Pet { ... on Dog { someValue: nickname } ... on Cat { someValue: meowVolume } }