Назад к BookField

BookField формат пакета

wbpkg

Пакет, который BookField может проверить, установить и читать

Снимок версий

workbook.toml
schema_version = 4
.wbpkg/manifest.json
schemaVersion = 5
reader_manifest.json
schemaVersion = 3
reader.rdoc
schemaVersion = 3
Reader SQLite schema
db_schema_version = 17

Кратко

Пакет, который BookField может проверить, установить и читать

Одна устанавливаемая граница для одного work и одной edition. manifest.json — публичный contract, который BookField читает перед import. Legacy packageKind и presentation fields не входят в текущую package shape.

Устанавливаемый контейнер

Одна устанавливаемая граница для одного work и одной edition.

Manifest v5

manifest.json — публичный contract, который BookField читает перед import. Legacy packageKind и presentation fields не входят в текущую package shape.

ReaderDoc v3

ReaderDoc content подготовлен для импорта, поэтому reader не разбирает EPUB, HTML или CSS во время выполнения.

Дерево навигации

navigationTree определяет entry point и оглавление reader на уровне package.

Индексы locator

Когда canonical docs или schema files меняются, сначала обновите source, затем этот public snapshot и пояснение.

Учебные планы

Authored study plans сохраняются в manifest.json только если package содержит schedule data.

Структура package

Канонические файлы внутри wbpkg

Package paths — это package-root-relative POSIX paths. Text packages содержат ReaderDoc files в reader/, а image, audio или video only packages могут не включать reader/.

.wbpkg
manifest.json
reader/{assetId}/reader_manifest.json
reader/{assetId}/reader.rdoc
images/{assetId}.{ext}
images/{assetId}-thumb.{ext}
media/{assetId}.{ext}
locator/{profileId}.json

Контракт manifest

Manifest v5 задает install contract

manifest.json — публичный contract, который BookField читает перед import. Legacy packageKind и presentation fields не входят в текущую package shape.

packageId / packageVersion

manifest.json — публичный contract, который BookField читает перед import. Legacy packageKind и presentation fields не входят в текущую package shape.

work / edition

Одна устанавливаемая граница для одного work и одной edition.

assets

Package paths — это package-root-relative POSIX paths. Text packages содержат ReaderDoc files в reader/, а image, audio или video only packages могут не включать reader/.

navigationTree

navigationTree определяет entry point и оглавление reader на уровне package.

studyPlans

Authored study plans сохраняются в manifest.json только если package содержит schedule data.

bindings

Когда canonical docs или schema files меняются, сначала обновите source, затем этот public snapshot и пояснение.

Создание package

Держите production tooling отдельно от публичной границы package

  1. 1

    Подготовьте source content

    Подготовьте source content, metadata, media, а также authored schedules или references.

  2. 2

    Соберите wbpkg

    Соберите installable package с manifest metadata, ReaderDoc content, media, navigation и locator files.

  3. 3

    Проверьте перед публикацией

    Проверьте package structure и schema compatibility перед distribution.

Reader import

BookField читает установленный package локально

  1. 1

    Проверка

    BookField проверяет package shape и отклоняет unsupported или malformed packages.

  2. 2

    Распаковка

    Supported package assets распаковываются в app-owned local storage.

  3. 3

    Импорт в SQLite

    ReaderDoc payloads, navigation, locator indexes, search records и schedules регистрируются для offline use.

Совместимость

Правила, которые делают packages предсказуемыми

  • Отклоняйте legacy packageKind values.
  • Отклоняйте legacy presentation fields.
  • Отклоняйте non-canonical package paths.
  • Отклоняйте malformed structured references.
  • Не включайте source EPUB files в installable wbpkg.

Канонические references

Политика обновления

Эта публичная страница — implementation-facing overview, а не canonical schema source. Canonical docs и schema files хранятся вместе с BookField source materials.

Source docs и schema files

  • 00-spec-index.md

    Эта публичная страница — implementation-facing overview, а не canonical schema source. Canonical docs и schema files хранятся вместе с BookField source materials.

  • 04-manifest-json-schema.md

    manifest.json — публичный contract, который BookField читает перед import. Legacy packageKind и presentation fields не входят в текущую package shape.

  • 08-reader-app-design.md

    BookField читает установленный package локально

  • schemas/manifest-v5.schema.json / readerdoc-v3.schema.json

    Эта публичная страница — implementation-facing overview, а не canonical schema source. Canonical docs и schema files хранятся вместе с BookField source materials.

Когда canonical docs или schema files меняются, сначала обновите source, затем этот public snapshot и пояснение.

Спланируйте BookField package distribution

Вернитесь к product overview или обсудите, подходит ли wbpkg distribution flow вашей content model.