{
  "graphql_types": [
    {
      "id": "gql_enum_csltype",
      "category": "enum",
      "name": "CSLType",
      "sdl_snippet": "enum CSLType {\n  ARTICLE_JOURNAL\n  ARTICLE_MAGAZINE\n  ARTICLE_NEWSPAPER\n  BOOK\n  CHAPTER\n  DATASET\n  DOCUMENT\n  MANUSCRIPT\n  PAPER_CONFERENCE\n  POST_WEBLOG\n  REPORT\n  SOFTWARE\n  SPEECH\n  STANDARD\n  THESIS\n  TREATY\n  WEBPAGE\n}",
      "description": "CSL type enum: a 17-member subset covering the most common citation types, out of the full CSL v1.0.2 specification (46 types per docs.citationstyles.org).",
      "source_note": "references/citation.graphqls (style-graphql skill), lines 59-81.",
      "created_at": "2026-07-02 04:47:34",
      "cite_as": "https://subagentgraphql.com/api/graphql-types/gql_enum_csltype"
    },
    {
      "id": "gql_enum_provenancesource",
      "category": "enum",
      "name": "ProvenanceSource",
      "sdl_snippet": "enum ProvenanceSource {\n  SEMANTIC_LAYER\n  GOVERNED_TABLE\n  RAW_EXPLORATION\n  SKILL_REFERENCE\n  EXTERNAL_URL\n}",
      "description": "Enum for the Provenance.source field -- where a cited value in a GraphQL response actually came from.",
      "source_note": "references/citation.graphqls (style-graphql skill), lines 125-131.",
      "created_at": "2026-07-02 04:47:42",
      "cite_as": "https://subagentgraphql.com/api/graphql-types/gql_enum_provenancesource"
    },
    {
      "id": "gql_kind_mutation",
      "category": "kind",
      "name": "mutation",
      "sdl_snippet": null,
      "description": "GraphQLKind: mutation operation.",
      "source_note": "SKILL.md, \"kinds\" section, style-graphql skill.",
      "created_at": "2026-07-02 04:47:42",
      "cite_as": "https://subagentgraphql.com/api/graphql-types/gql_kind_mutation"
    },
    {
      "id": "gql_kind_query",
      "category": "kind",
      "name": "query",
      "sdl_snippet": null,
      "description": "GraphQLKind: query operation.",
      "source_note": "SKILL.md, \"kinds\" section, style-graphql skill.",
      "created_at": "2026-07-02 04:47:42",
      "cite_as": "https://subagentgraphql.com/api/graphql-types/gql_kind_query"
    },
    {
      "id": "gql_kind_sdl",
      "category": "kind",
      "name": "sdl",
      "sdl_snippet": null,
      "description": "GraphQLKind: schema definition language -- type definitions, directives.",
      "source_note": "SKILL.md, \"kinds\" section, style-graphql skill.",
      "created_at": "2026-07-02 04:47:42",
      "cite_as": "https://subagentgraphql.com/api/graphql-types/gql_kind_sdl"
    },
    {
      "id": "gql_kind_subscription",
      "category": "kind",
      "name": "subscription",
      "sdl_snippet": null,
      "description": "GraphQLKind: subscription operation.",
      "source_note": "SKILL.md, \"kinds\" section, style-graphql skill.",
      "created_at": "2026-07-02 04:47:42",
      "cite_as": "https://subagentgraphql.com/api/graphql-types/gql_kind_subscription"
    },
    {
      "id": "gql_extract_citations",
      "category": "projection_fn",
      "name": "extractCitations",
      "sdl_snippet": "extractCitations(doc: GraphQLDoc): Citation[]",
      "description": "Extracts Citation-typed values out of a parsed GraphQLDoc.",
      "source_note": "SKILL.md, \"Projection contract\" section, style-graphql skill.",
      "created_at": "2026-07-02 04:47:06",
      "cite_as": "https://subagentgraphql.com/api/graphql-types/gql_extract_citations"
    },
    {
      "id": "gql_inject_citation_type",
      "category": "projection_fn",
      "name": "injectCitationType",
      "sdl_snippet": "injectCitationType(doc: GraphQLDoc): GraphQLDoc",
      "description": "Appends the canonical Citation SDL (from references/citation.graphqls) to a document if not already present.",
      "source_note": "SKILL.md, \"Projection contract\" and \"Citation type SDL\" sections, style-graphql skill.",
      "created_at": "2026-07-02 04:47:06",
      "cite_as": "https://subagentgraphql.com/api/graphql-types/gql_inject_citation_type"
    },
    {
      "id": "gql_inject_citations",
      "category": "projection_fn",
      "name": "injectCitations",
      "sdl_snippet": "injectCitations(doc: GraphQLDoc, cs: Citation[]): GraphQLDoc",
      "description": "Injects a list of Citation values into a GraphQLDoc.",
      "source_note": "SKILL.md, \"Projection contract\" section, style-graphql skill.",
      "created_at": "2026-07-02 04:47:06",
      "cite_as": "https://subagentgraphql.com/api/graphql-types/gql_inject_citations"
    },
    {
      "id": "gql_parse",
      "category": "projection_fn",
      "name": "parse",
      "sdl_snippet": "parse(wire: string, kind?: GraphQLKind): GraphQLDoc",
      "description": "Parses a raw SDL or operation string into a GraphQLDoc AST, optionally tagged with a GraphQLKind.",
      "source_note": "SKILL.md, \"Projection contract\" section, style-graphql skill.",
      "created_at": "2026-07-02 04:47:06",
      "cite_as": "https://subagentgraphql.com/api/graphql-types/gql_parse"
    },
    {
      "id": "gql_roundtrip",
      "category": "projection_fn",
      "name": "roundtrip",
      "sdl_snippet": "roundtrip(doc: GraphQLDoc): GraphQLDoc",
      "description": "Parses then stringifies a document; used in tests to assert idempotence of the print step.",
      "source_note": "SKILL.md, \"Projection contract\" and \"Normalisation\" sections, style-graphql skill.",
      "created_at": "2026-07-02 04:47:06",
      "cite_as": "https://subagentgraphql.com/api/graphql-types/gql_roundtrip"
    },
    {
      "id": "gql_stringify",
      "category": "projection_fn",
      "name": "stringify",
      "sdl_snippet": "stringify(doc: GraphQLDoc): string",
      "description": "Serializes a GraphQLDoc back to canonical SDL text, normalised via graphql-js print().",
      "source_note": "SKILL.md, \"Projection contract\" and \"Normalisation\" sections, style-graphql skill.",
      "created_at": "2026-07-02 04:47:06",
      "cite_as": "https://subagentgraphql.com/api/graphql-types/gql_stringify"
    },
    {
      "id": "gql_type_anthropic_bridge",
      "category": "type",
      "name": "AnthropicCitationBridge",
      "sdl_snippet": "type AnthropicCitationBridge {\n  documentIndex: Int\n  documentTitle: String\n  startCharIndex: Int\n  endCharIndex: Int\n  citedText: String\n}",
      "description": "Bridge fields mapping the Citation type onto the Anthropic Citations API response shape (document index/title, character span, verbatim cited text).",
      "source_note": "references/citation.graphqls (style-graphql skill), lines 83-96, citing docs.anthropic.com/en/docs/build-with-claude/citations.",
      "created_at": "2026-07-02 04:47:17",
      "cite_as": "https://subagentgraphql.com/api/graphql-types/gql_type_anthropic_bridge"
    },
    {
      "id": "gql_type_citation",
      "category": "type",
      "name": "Citation",
      "sdl_snippet": "type Citation {\n  id: ID!\n  type: CSLType!\n  title: String!\n  author: [CSLName!]\n  issued: CSLDate\n  containerTitle: String\n  publisher: String\n  url: String\n  doi: String\n  anthropic: AnthropicCitationBridge\n  prov: ProvO\n}",
      "description": "The canonical Citation GraphQL type: a strict subset of CSL-JSON v1.0.2, maps 1:1 to the Citation Zod schema (src/style-skills/citation.schema.ts). Injected into any SDL document by injectCitationType(doc).",
      "source_note": "references/citation.graphqls (style-graphql skill), lines 1-43; also summarized in SKILL.md Citation type SDL section.",
      "created_at": "2026-07-02 04:47:17",
      "cite_as": "https://subagentgraphql.com/api/graphql-types/gql_type_citation"
    },
    {
      "id": "gql_type_csldate",
      "category": "type",
      "name": "CSLDate",
      "sdl_snippet": "type CSLDate {\n  dateParts: [[Int]]\n  literal: String\n}",
      "description": "Publication date shape used by Citation.issued. dateParts is a nested array of [year, month?, day?]; literal is free text when date-parts are unavailable.",
      "source_note": "references/citation.graphqls (style-graphql skill), lines 52-57.",
      "created_at": "2026-07-02 04:47:17",
      "cite_as": "https://subagentgraphql.com/api/graphql-types/gql_type_csldate"
    },
    {
      "id": "gql_type_cslname",
      "category": "type",
      "name": "CSLName",
      "sdl_snippet": "type CSLName {\n  family: String\n  given: String\n  literal: String\n}",
      "description": "Author name shape used by Citation.author. literal is for institutional or single-name authors.",
      "source_note": "references/citation.graphqls (style-graphql skill), lines 45-50.",
      "created_at": "2026-07-02 04:47:17",
      "cite_as": "https://subagentgraphql.com/api/graphql-types/gql_type_cslname"
    },
    {
      "id": "gql_type_provenance",
      "category": "type",
      "name": "Provenance",
      "sdl_snippet": "type Provenance {\n  source: ProvenanceSource!\n  schemaRef: String\n  agentId: String\n  freshness: String\n  reviewer: String\n  reviewerPassed: Boolean\n  citations: [Citation!]!\n}",
      "description": "Provenance footer type appended to every style-skill output; mirrors the pattern from an Anthropic self-service analytics blog post. Note: SKILL.md own Provenance in GraphQL responses example shows a simpler 5-field Provenance shape (source, agentId, schemaRef, freshness, reviewer as String!) for query results -- the bundled references/citation.graphqls file defines a richer 7-field version with a ProvenanceSource enum and reviewerPassed/citations fields. Both are real, from two different places in the skill; this row documents the references/citation.graphqls version.",
      "source_note": "references/citation.graphqls (style-graphql skill), lines 111-123.",
      "created_at": "2026-07-02 04:47:34",
      "cite_as": "https://subagentgraphql.com/api/graphql-types/gql_type_provenance"
    },
    {
      "id": "gql_type_provo",
      "category": "type",
      "name": "ProvO",
      "sdl_snippet": "type ProvO {\n  wasDerivedFrom: [String!]\n  generatedAtTime: String\n  wasAttributedTo: String\n}",
      "description": "W3C PROV-O provenance fragment: wasDerivedFrom (source entity IRIs), generatedAtTime (ISO-8601), wasAttributedTo (agent IRI).",
      "source_note": "references/citation.graphqls (style-graphql skill), lines 98-109, citing w3.org/TR/prov-o/.",
      "created_at": "2026-07-02 04:47:34",
      "cite_as": "https://subagentgraphql.com/api/graphql-types/gql_type_provo"
    },
    {
      "id": "gql_type_queryresult",
      "category": "type",
      "name": "QueryResult",
      "sdl_snippet": "type QueryResult {\n  data: String!\n  citations: [Citation!]!\n  provenance: Provenance!\n}",
      "description": "Example root type shape shown in SKILL.md for a GraphQL response that contains cited content: add a provenance field to the root Query or relevant type.",
      "source_note": "SKILL.md, Provenance in GraphQL responses section, style-graphql skill.",
      "created_at": "2026-07-02 04:47:34",
      "cite_as": "https://subagentgraphql.com/api/graphql-types/gql_type_queryresult"
    }
  ]
}