document-schema.js: section page-furniture slots; wpd-codec lifts its furniture and note bodies - #1181
Merged
Merged
Conversation
Mearman
marked this pull request as ready for review
September 10, 2026 04:10
Member
Author
|
@codex security review |
Mearman
enabled auto-merge (rebase)
September 10, 2026 04:10
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
…ers and footers ContentSection gains optional headers/footers, each a per-slot block flow in WordprocessingML's own headerReference/@w:type vocabulary (default/even/first) -- the three-slot shape every page-furniture- carrying format narrows onto: docx's sectPr references, an ODF master page's header/header-left/header-first trio, WordPerfect's D6 occurrence bits (odd-only and both-parities are default, even-only is even). Section-scoped like breakType, and carried by the existing descriptor rest-spread through the tree boundary in both directions -- the bijection corpus entry proves the laws hold with no transform change. Slot-less decorations (a watermark owns no parity) stay outside it. Part of #1128.
The D6 and D7 groups' text is lifted rather than dropped. A header or footer function's occurrence bits narrow onto the new furniture slots (odd-only and both-parities -> default, even-only -> even), its body folded from the General WP Text packet its first prefix ID names; a watermark and an A/B slot collision stay reported, since the one-flow- per-slot vocabulary carries neither. A note pair anchors its reference site in the flat form (a footnote/endnote anchor construct whose definition key names its position in document order) and readWpd carries each body as a definitions-table entry -- the tenant vocabulary markdown-codec's footnote definitions established -- while the flat readWpdContent reports each still-borne body, whose real home is exactly that tree-only table. Closes #1128.
Mearman
force-pushed
the
fix/1128-schema-furniture
branch
from
September 10, 2026 04:17
13d9a1d to
9769d9e
Compare
Contributor
|
🎉 This PR is included in version 3.4.0 🎉 The release is available on: Your semantic-release bot 📦🚀 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #1128 with two homes for the two constructs, each following an existing precedent rather than inventing a shape:
wpd-codec's D6/D7 reading is grounded in the WP SDK's own pages (cited in code): odd-only and both-parities occurrence bits map to default, even-only to even; watermarks report rather than lift; A/B collisions take first-wins. Six new tests; doc-codec's and rtf-codec's equivalent constructs can migrate onto the new fields in their own PRs (public-API shape changes).
Closes #1128.