Skip to content

OOXML: Strict to Transitional

Asbjørn Skødt edited this page Jul 30, 2022 · 7 revisions

Make .xlsx Strict to .xlsx Transitional

Essentially a Strict .xlsx is identical to a Transitional .xlsx in terms of the content it can store and validate, but a few namespaces and the conformance class attribute are different. However, the same is not true when converting from .xlsx Transitional to .xlsx Strict, because Transitional conformance allows legacy code from file formats .xls and .xlt to maintain compatibility with Excel.

XML changes

To convert a .xlsx saved in Strict conformance to .xlsx in Transitional conformance, the following changes to the spreadsheet's XML are necessary. To reach the spreadsheet's XML code, rename the file with suffix ".zip" and then unzip the folder. Commit the following changes to the XML code of a Strict .xlsx spreadsheet to change from Strict to Transitional conformance.

Change 1 - In workbook.xml after tag <workbook

<workbook xmlns="http://purl.oclc.org/ooxml/spreadsheetml/main" xmlns:r="http://purl.oclc.org/ooxml/officeDocument/relationships" xmlns:mc=

Replace "http://purl.oclc.org/ooxml/spreadsheetml/main" with "http://schemas.openxmlformats.org/spreadsheetml/2006/main"

Replace "http://purl.oclc.org/ooxml/officeDocument/relationships" with "http://schemas.openxmlformats.org/officeDocument/2006/relationships"

Change 2 - Conformance class should be changed before tag <fileVersion

conformance="strict"><fileVersion

Replace "strict" with "transitional"

conformance="strict" could be deleted alltogether since no appearance of conformance class means by default the spreadsheet is transitional, but I prefer to have it explicit.

Change 3 - In folder "worksheets", any sheet "sheet1.xml", "sheet2.xml" etc. have this code after tag <worksheet

xmlns="http://purl.oclc.org/ooxml/spreadsheetml/main" xmlns:r="http://purl.oclc.org/ooxml/officeDocument/relationships" xmlns:v="urn:schemas-microsoft-com:vml"

Replace "http://purl.oclc.org/ooxml/spreadsheetml/main" with "http://schemas.openxmlformats.org/spreadsheetml/2006/main"

Replace "http://purl.oclc.org/ooxml/officeDocument/relationships" with "http://schemas.openxmlformats.org/officeDocument/2006/relationships"

Delete xmlns:v="urn:schemas-microsoft-com:vml"

Clone this wiki locally