Skip to content

test(xlsx): validate the comments, theme and app properties as well - #555

Merged
productdevbook merged 1 commit into
mainfrom
feat/validate-ooxml-more-parts
Aug 13, 2026
Merged

test(xlsx): validate the comments, theme and app properties as well#555
productdevbook merged 1 commit into
mainfrom
feat/validate-ooxml-more-parts

Conversation

@productdevbook

Copy link
Copy Markdown
Owner

Three more parts hucre writes, each against the schema that describes it:

part schema
xl/commentsN.xml sml.xsd (SpreadsheetML)
xl/theme/theme1.xml dml-main.xsd — the theme is DrawingML, like the charts
docProps/app.xml shared-documentPropertiesExtended.xsd

All valid. 79 parts across eleven documents now.

What is still not checked, and why

Recorded next to the mapping rather than left to be rediscovered:

  • [Content_Types].xml, *.rels, docProps/core.xml — their schemas are in ECMA-376 Part 2 (OPC), a separate download from the Part 4 set this script asks for.
  • xl/drawings/vmlDrawing*.vmlvml-main.xsd does not load in javax.xml.validation at all; it throws before reading any document. VML is a legacy format with a famously loose schema, and this is not the place to fight it.

One correction while checking this: I first reported the comments part as unreached. It was reached and valid — my grep used process substitution inside a compound command and silently matched nothing. The script was right and the check on it was wrong.

pnpm test green — 10,571 tests, 232 files.

🤖 Generated with Claude Code

Three more parts hucre writes, each against the schema that describes it:
`xl/commentsN.xml` is SpreadsheetML, `xl/theme/theme1.xml` is DrawingML
like the charts, and `docProps/app.xml` has its own shared schema. All
valid.

79 parts across eleven documents now.

What is still not checked, and why, is recorded next to the mapping
rather than left to be rediscovered:

  [Content_Types].xml, *.rels, docProps/core.xml
    their schemas are in ECMA-376 Part 2 (OPC), a separate download from
    the Part 4 set this script asks for

  xl/drawings/vmlDrawing*.vml
    `vml-main.xsd` does not load in `javax.xml.validation` at all — it
    throws before reading any document. VML is a legacy format with a
    famously loose schema and this is not the place to fight it

pnpm test green — 10,571 tests, 232 files.
@productdevbook
productdevbook merged commit ef498ff into main Aug 13, 2026
6 checks passed
@productdevbook
productdevbook deleted the feat/validate-ooxml-more-parts branch August 13, 2026 15:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant