I've an issue when parsing generated OPC document that use a dcterms prefix different than 'dcterms'. For instance 'dc' is used and I get org.apache.poi.openxml4j.exceptions.InvalidFormatException: The element 'created' must have the 'xsi:type' attribute with the value 'dcterms:W3CDTF' because of this different prefix name. In file PackagePropertiesUnmarshaller.checkElementForOPCCompliance() line 372 you should build the xsi:type string to check by taking into account the namespace prefix name currently used.
Any chance of a sample file which shows the problem, and ideally too a patch and a unit test? :)
Created attachment 31582 [details] opc archive to reproduce this bug opc archive to reproduce this bug which is located in core.xml file.
I attached an empty sample opc archive file to reproduce this issue and to help to code a unit test. I've no time for now to install a dev env for POI ooxml to test a patch but I think that the fix is quite simple to implement (3 to 4 line of code I guess). Thank you for your help.
This is fixed via r1695212, we now compare against the namespace-prefix from the element.