Skip to content
XBSL (1C:Element)
English
Esc
navigateopen⌘Jpreview
On this page

Platform data

The generated datasets behind the checks: versions, the documentation index, and the diff between two platform releases.

The semantic rules, the completion and the documentation panel all read data extracted from a distribution. This page is about that data: what else can be built from it and how versions are kept apart.

tools/extract_docs.py extracts the Element reference from a distribution (the server-with-IDE .car) into a docs.sqlite next to the language data: the stdlib pages (a type, its methods, properties, parameters) with cleaned HTML, a full-text index (SQLite FTS5, from the standard library) and canonical links back to the primary source (https://1cmycloud.com/docs/help/..., taken from the distribution’s sitemap.xml). Page images are stored alongside. The 1C reference is copyrighted, so the database is not shipped in the package – you generate it from your own distribution, like the language data.

python tools/extract_docs.py --dist "$ELEMENT_DIST"

The runtime API xbsl.docs (search, page, tree, for_symbol, asset, plus the pure sections and summarize over a page’s HTML) reads docs.sqlite; with no database the search is simply empty. It powers the MCP tools (below) and – later – the reference panel in the VS Code extension.

Element versions

The data is versioned by platform version:

xbsl/data/element/
    index.json            # { available: [...], default: "<version>" }
    <version>/{language.json, stdlib.json, metamodel.json}

Pick a version with --element-version / the XBSL_ELEMENT_VERSION env var / the index default; --version shows what is available. Add a new version by re-running xbsl extract with a new --dist; the index makes the newest version the default (regenerating an old version does not move the default back).

xbsl data-diff [old] [new] shows what changed in the platform between two data versions (default: the default version against the closest older one): stdlib types and members, metamodel properties, components and their properties, terms, documentation pages. --format md writes a full Markdown report, --format json a machine view; the text form caps every list at --limit. Type members are compared with the inheritance expanded, and a change is lifted to the hierarchy root - an addition to a base type is not repeated for every descendant.

The data root itself is resolved in this order: --data-dir > XBSL_DATA_DIR > a root supplied by an installed xbsl.data entry point > xbsl/data/element inside the package.

Last updated on September 6, 2026

Was this page helpful?