QueryDataset
A declared dataset (design 2026-10-10-clickhouse-dataset-query-design.md §4): a table-like record set, such as a BI wide table, queried as the QueryModel.DATASET model of namedAggregate.
A dataset is named within a bounded context, as an aggregate is, and occupies the same name slot: gateways, policies, observers and the Catalog address it by namedAggregate and tell it apart by its model. A dataset never shares its name with an aggregate of its context (QuerySchemaCatalog refuses the pair), so a policy keyed by an aggregate's name never applies to a dataset.
Its record layout comes from the declaration, not from a type: declaration lists the fields a query may name, at the record root, with their sensitivity (a dataset declaration is the one place outside a field annotation that declares it, since a dataset's columns have no type to carry one); the profile facts name the identity, the eventTime and the scope columns among them. storage is the opaque binding its query backend reads, such as a ClickHouse table.