1# Native document structure controls
2
3OneNote 14.0.4763.1000 authored the second page from the frozen
4[scripts/author.ps1](scripts/author.ps1). The fixture includes named paragraph
5styles, alignment and spacing, two associated tags, nested bullets, Roman
6numbering restarted at III, and a 3-by-2 table with one locked column.
7
8The locked column remains 120 points wide. The unlocked column contracts from
9the authored 180 points to approximately 37.116 points to fit its contents.
10The native PDF shows both the text formatting and table on separate sheets.
11[Tests](../../../tests/document.rs) assert the model's corresponding semantics.
12The [partial black highlight XML omission](../native-probes-01/ORACLE.md) also
13occurs here; the PDF preserves the highlight.
14
15The [table controls](../native-table-controls-01/expected.json) isolate a native
16XML limitation: adding `shadingColor` to a cell causes `UpdatePageContent` to
17return `0x80042001`. Removing that attribute succeeds with locked or unlocked
18columns. This does not establish whether OneNote 2010 renders the storage-level
19CellShadingColor property.
20
21## TOC transaction fragment boundary
22
23The Rust-created TOC began with a 44-byte transaction-log fragment containing
24three list-count entries, a sentinel, and a 12-byte next-fragment reference.
25OneNote appended another fragment. Its next CRC is `0x68f09d29`; including the
26preceding fragment's final sentinel incorrectly produces `0x548e8f73`.
27
28MS-ONESTORE 2.3.3.2 product behavior note 8 specifies exclusion of bytes flushed
29at the end of a TOC transaction-log fragment. This fixture establishes that the
30final entry is excluded from the running CRC, while its own checksum is still
31validated. The storage regression also corrupts the native checksum and verifies
32that the damage is detected. Writer regressions cross fragment and transaction
33counter boundaries through 260 successive edits.