Concepts
Concepts
One page for each part of the data model, storage, formats, and the CLI.
XDB stores data as tuples grouped into records. Use these guides to understand the data model and work with it through the CLI or Go API.
The CLI reference documents commands, flags, and payloads.
Data Model
-
Tuples: The smallest unit of data in XDB
-
Records: Groups of tuples that represent one entity
-
Schemas: Structure definitions and validation modes
-
Namespaces: Logical groups of schemas
-
Versioning: The
_id,_version, and_updatedsystem attributes, and optimistic concurrency
Addressing
- URIs: Unique identifiers for all XDB resources
Type System
- Types: Supported value types and typed accessors
Querying
- Filters: CEL record filters and SQL generation
Importing Types
- Bring Your Own Types: Import protobuf, JSON Schema, and Go struct types into a schema
Storage & Encoding
-
Stores: The store facade, its middleware, and construction with
store.New -
Drivers: The storage contract that a driver implements
-
Encoding: JSON Schema import and JSON encoding of records
Errors
- Errors: Sentinels, the
[xdb/pkg]prefix, and the error tag vocabulary