Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bug or feature: XML-4 error for calcext? #153

Open
RvanVeenendaal opened this issue Apr 18, 2024 · 2 comments · Fixed by #175 or #178
Open

Bug or feature: XML-4 error for calcext? #153

RvanVeenendaal opened this issue Apr 18, 2024 · 2 comments · Fixed by #175 or #178
Assignees

Comments

@RvanVeenendaal
Copy link

The ODF Validator produces error messages for ODS files with calcext extensions: bug or feature?
This is possibly a duplicate of #151.

Test corpus: ESCO dataset - v1.1.2, exported in Dutch (NL), opened, edited (added "TEST Remco") and saved in LibreOffice 7.3.2.2.
Same result in LibreOffice 24.2.2.2.
Tested under Windows 10 and java.exe from JDK 22.0.1.
See also https://wiki.documentfoundation.org/Development/ODF_Implementer_Notes#LibreOffice_ODF_extensions.

It seems that these are acceptable extensions as far as the standard is concerned, but the ODF Validator doesn't accept them, resulting in this XML-4 error.
Note: an XML validator like XMLValidatorBuddy informs me that the file is well-formed.

Example of error message:
XML-4: content.xml [ERROR] Not a valid XML document. Validation exception at line 2 and column 6574578: attribute "calcext:value-type" not allowed here; expected attribute "office:string-value", "table:content-validation-name", "table:formula", "table:number-columns-repeated", "table:number-columns-spanned", "table:number-matrix-columns-spanned", "table:number-matrix-rows-spanned", "table:number-rows-spanned", "table:protect", "table:protected", "table:style-name", "xhtml:about", "xhtml:content", "xhtml:datatype", "xhtml:property" or "xml:id".

for this XML snippet:
(...)<table:table-cell office:value-type="string" calcext:value-type="string">text:phttp://data.europa.eu/esco/concept-scheme/member-occupations,http://data.europa.eu/esco/concept-scheme/occupations</text:p></table:table-cell><table:table-cell office:value-type="string" calcext:value-type="string">text:pAssemblagetechnici voertuigen installeren en monteren onderdelen en componenten van voertuigen. Zij inspecteren de motorvoertuigen op defecten en testen of de geassembleerde producten goed presteren en voldoen aan de kwaliteitsnormen.</text:p></table:table-cell><table:table-cell office:value-type="string" calcext:value-type="string">text:p8211.5</text:p></table:table-cell></table:table-row><table:table-row table:style-name="ro1"><table:table-cell office:value-type="string" calcext:value-type="string">text:pTEST Remco</text:p></table:table-cell><table:table-cell table:number-columns-repeated="13"/>(...)

A namespace for this calcext is defined at the beginning of the file:

<office:document-content xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" xmlns:ooo="http://openoffice.org/2004/office" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0" xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0" xmlns:rpt="http://openoffice.org/2005/report" xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0" xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0" xmlns:ooow="http://openoffice.org/2004/writer" xmlns:oooc="http://openoffice.org/2004/calc" xmlns:of="urn:oasis:names:tc:opendocument:xmlns:of:1.2" xmlns:tableooo="http://openoffice.org/2009/table" xmlns:calcext="urn:org:documentfoundation:names:experimental:calc:xmlns:calcext:1.0" xmlns:drawooo="http://openoffice.org/2010/draw" xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0" xmlns:field="urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0" xmlns:math="http://www.w3.org/1998/Math/MathML" xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0" xmlns:dom="http://www.w3.org/2001/xml-events" xmlns:xforms="http://www.w3.org/2002/xforms" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:formx="urn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:grddl="http://www.w3.org/2003/g/data-view#" xmlns:css3t="http://www.w3.org/TR/css3-text/" xmlns:presentation="urn:oasis:names:tc:opendocument:xmlns:presentation:1.0" office:version="1.3">

@carlwilson
Copy link
Member

Hi @RvanVeenendaal . This is an example of an extended file, and extended conformance is currently not supported, which was by design/request. It's apparent that it's needed, see #151. Expect this to get some attention soon.

This was linked to pull requests Aug 30, 2024
@carlwilson
Copy link
Member

@RvanVeenendaal, the two PRs merged above have fixed the issue. I have only addressed the detection and reporting of extended files, for now. Validation will be handled in an upcoming release.

@carlwilson carlwilson self-assigned this Oct 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants