# Schema type Human { name: String! } type Query { human: Human } # Query { human { ...fragA } __schema { types { ...cycle1 } } } fragment fragA on Human { name, ...fragB } fragment fragB on Human { name, ...fragC } fragment fragC on Human { name, ...fragA } # Indirect cycle fragment cycle1 on __Type { kind, ...cycle2 } fragment cycle2 on __Type { kind ofType { ...cycle1 } }