Projection

What a query returns for each document it matches.

The projection vocabulary is VariantPath, and filtering's is CatalogPath. That is not an oversight: a CatalogPath describes a set of locations — $.tags[*] is every tag — which is exactly right for "does any value here match" and has no answer at all for "what is the value here". A VariantPath names one location, which is what makes it something a row can hold. So $.tags[*] is rejected as a projection, with the position, the way CatalogPath.parse rejects $.items[0] as a filter.

A path that does not resolve is null in the row rather than an error, matching Variant.select: a document without the field is a fact about the document, not a failure of the query.

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard

The names this projection produces, in order. Empty for KEY and DOCUMENT.

Functions

Link copied to clipboard
open override fun toString(): String