EDN Query Language. Expresses API queries as EDN data structures instead of a string DSL: vectors list attributes of interest; maps express joins where the key is the scope (e.g. :video/comments) and the value is a sub-query vector; tuples like [:youtube.video/id "abc"] specify root scope by identifier; bare keywords select global/singleton resolvers; EDN lists attach parameters to any query fragment; EDN symbols inside parentheses denote mutations, and joining a mutation with a read vector yields read-after-write semantics. Because queries are data, clients can manipulate them programmatically, unlike string-based SQL or GraphQL.