{
  "$schema": "https://docs.sqlparser.com/capabilities/v1/schema/dialect.schema.json",
  "dialect": "couchbase",
  "display_name": "Couchbase",
  "aliases": [],
  "product": "General SQL Parser",
  "edition": "java",
  "version": "4.1.9",
  "measured_at": "2026-08-03T03:25:59.446114891Z",
  "provenance": {
    "kind": "measured",
    "artifact_sha256": "9bf7ca575030",
    "corpus_commit": "8bce26814",
    "corpus_files": 38,
    "methodology_url": "https://docs.sqlparser.com/reference/sql-syntax/#methodology"
  },
  "parse_coverage": {
    "kind": "measured",
    "note": "Pass rates are over GSP's documented-example corpus for this dialect, not a percentage of the entire SQL dialect.",
    "constructs": {"passed": 30, "total": 38},
    "statements": {"passed": 208, "total": 233},
    "statement_classes": {
      "select": {"constructs": {"passed": 11, "total": 14}, "statements": {"passed": 97, "total": 108}},
      "dml": {"constructs": {"passed": 6, "total": 6}, "statements": {"passed": 39, "total": 39}},
      "stored_procedures": {"constructs": {"passed": 0, "total": 0}, "statements": {"passed": 0, "total": 0}}
    }
  },
  "keywords": {
    "kind": "measured",
    "measured_at": "2026-07-29T23:46:37Z",
    "total": 172,
    "allowed_as_identifier": 168,
    "context_specific": 3,
    "blocked": 1,
    "details_url": "https://docs.sqlparser.com/reference/sql-syntax/couchbase/keyword-compatibility/"
  },
  "docs_url": "https://docs.sqlparser.com/reference/sql-syntax/couchbase/",
  "constructs": [
    {"name": "ALTER INDEX", "category": "ALTER", "passed": 0, "total": 4, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/alterindex.html"},
    {"name": "BUILD INDEX", "category": "BUILD INDEX", "passed": 2, "total": 2, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/build-index.html"},
    {"name": "Adaptive Index", "category": "CREATE INDEX", "passed": 17, "total": 17, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/adaptive-indexing.html"},
    {"name": "Array Indexing", "category": "CREATE INDEX", "passed": 10, "total": 10, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/indexing-arrays.html"},
    {"name": "Covering Indexes", "category": "CREATE INDEX", "passed": 4, "total": 4, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/covering-indexes.html"},
    {"name": "CREATE INDEX", "category": "CREATE INDEX", "passed": 4, "total": 4, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/createindex.html"},
    {"name": "CREATE PRIMARY INDEX", "category": "CREATE INDEX", "passed": 2, "total": 2, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/createprimaryindex.html"},
    {"name": "Index Partitioning", "category": "CREATE INDEX", "passed": 20, "total": 21, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/index-partitioning.html"},
    {"name": "Indexing Metadata Information", "category": "CREATE INDEX", "passed": 3, "total": 3, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/indexing-meta-info.html"},
    {"name": "DELETE", "category": "DELETE", "passed": 6, "total": 6, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/delete.html"},
    {"name": "DROP INDEX", "category": "DROP INDEX", "passed": 1, "total": 1, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/dropindex.html"},
    {"name": "DROP PRIMARY INDEX", "category": "DROP INDEX", "passed": 1, "total": 1, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/dropprimaryindex.html"},
    {"name": "EXECUTE", "category": "EXECUTE", "passed": 1, "total": 1, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/execute.html"},
    {"name": "EXPLAIN", "category": "EXPLAIN", "passed": 2, "total": 2, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/explain.html"},
    {"name": "GRANT", "category": "GRANT", "passed": 0, "total": 6, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/grant.html"},
    {"name": "INFER", "category": "INFER", "passed": 1, "total": 1, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/infer.html"},
    {"name": "INSERT", "category": "INSERT", "passed": 6, "total": 6, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/insert.html"},
    {"name": "Insert Select", "category": "INSERT", "passed": 8, "total": 8, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/insert.html"},
    {"name": "Insert Values", "category": "INSERT", "passed": 8, "total": 8, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/insert.html"},
    {"name": "MERGE", "category": "MERGE", "passed": 3, "total": 3, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/merge.html"},
    {"name": "PREPARE", "category": "PREPARE", "passed": 3, "total": 3, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/prepare.html"},
    {"name": "REVOKE", "category": "REVOKE", "passed": 0, "total": 2, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/revoke.html"},
    {"name": "FROM Clause", "category": "SELECT", "passed": 8, "total": 8, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/from.html"},
    {"name": "GROUP BY clause", "category": "SELECT", "passed": 5, "total": 5, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/groupby.html"},
    {"name": "JOIN Clause", "category": "SELECT", "passed": 25, "total": 32, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/join.html"},
    {"name": "LET clause", "category": "SELECT", "passed": 3, "total": 3, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/let.html"},
    {"name": "LIMIT clause", "category": "SELECT", "passed": 1, "total": 2, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/limit.html"},
    {"name": "NEST Clause", "category": "SELECT", "passed": 5, "total": 8, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/nest.html"},
    {"name": "OFFSET clause", "category": "SELECT", "passed": 1, "total": 1, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/offset.html"},
    {"name": "ORDER BY clause", "category": "SELECT", "passed": 2, "total": 2, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/orderby.html"},
    {"name": "Overview", "category": "SELECT", "passed": 17, "total": 17, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/selectintro.html"},
    {"name": "SELECT Clause", "category": "SELECT", "passed": 13, "total": 13, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/selectclause.html"},
    {"name": "UNION, INTERSECT, and EXCEPT", "category": "SELECT", "passed": 4, "total": 4, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/union.html"},
    {"name": "UNNEST clause", "category": "SELECT", "passed": 5, "total": 5, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/unnest.html"},
    {"name": "USE Clause", "category": "SELECT", "passed": 4, "total": 4, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/hints.html"},
    {"name": "WHERE clause", "category": "SELECT", "passed": 4, "total": 4, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/where.html"},
    {"name": "UPDATE", "category": "UPDATE", "passed": 9, "total": 9, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/update.html"},
    {"name": "UPSERT", "category": "UPSERT", "passed": 0, "total": 1, "source": "https://docs.couchbase.com/server/6.0/n1ql/n1ql-language-reference/upsert.html"}
  ]
}
