-- Gedeelde bibliotheek: borden en ankerdiagrammen die de systeemmanager -- (school_id NULL = systeembreed, voor iedereen zichtbaar) of stafleden van -- een school (school_id gezet = alleen binnen die school zichtbaar) hebben -- klaargezet. Andere gebruikers kopiƫren een item naar hun eigen collectie; -- er wordt niet live in gedeelde items gewerkt. folder is een pad met -- "/"-scheiding, dezelfde conventie als de mappenverkenner. CREATE TABLE IF NOT EXISTS shared_library ( id BIGINT GENERATED ALWAYS AS IDENTITY PRIMARY KEY, school_id BIGINT REFERENCES schools(id) ON DELETE CASCADE, owner_id BIGINT NOT NULL REFERENCES users(id) ON DELETE CASCADE, kind TEXT NOT NULL, folder TEXT NOT NULL DEFAULT '', name TEXT NOT NULL, data JSONB NOT NULL, created_at TIMESTAMPTZ NOT NULL DEFAULT now() ); CREATE INDEX IF NOT EXISTS idx_shared_library ON shared_library(kind, school_id);