Files
paperspec/sql/bundle-sqlite.sql
T
alexm 002e2c3552
check / check (default, macos-latest) (push) Canceled after 0s
check / check (default, ubuntu-latest) (push) Canceled after 0s
check / check (py310, macos-latest) (push) Canceled after 0s
check / check (py310, ubuntu-latest) (push) Canceled after 0s
feat: rewrite docs
2026-10-12 07:55:22 -04:00

32 lines
1.0 KiB
SQL

-- scienting-bundle/1: the SQLite file a reader or a server reads.
-- Normative: spec/13-database.md. SQLite only: it uses FTS5.
-- A bundle holds sql/doc.sql and sql/store.sql, then these tables.
-- License: CC0-1.0.
CREATE TABLE bundle_meta (
name VARCHAR(64) NOT NULL,
value TEXT NOT NULL,
PRIMARY KEY (name)
);
-- One row per searchable unit: a sentence, an equation outside a sentence, a cell, or a figure-text item.
-- `context` is the kind of the sentence's container: paragraph, heading, caption, footnote and so on.
-- `text` is the normalized plain projection; withheld text is never indexed.
CREATE VIRTUAL TABLE search USING fts5(
doc_key UNINDEXED,
node UNINDEXED,
unit UNINDEXED,
context UNINDEXED,
text,
tokenize = 'unicode61 remove_diacritics 2'
);
-- Reserved for embeddings with sqlite-vec; see spec/13-database.md.
CREATE TABLE embeddings_meta (
model VARCHAR(128) NOT NULL,
dimensions INTEGER NOT NULL,
rights_use VARCHAR(64) NOT NULL,
made_at VARCHAR(20) NOT NULL,
PRIMARY KEY (model)
);