Bug 58408

Summary: Add visio schemas to the OOXML jar
Product: POI Reporter: virtuald <dustin>
Component: XDGFAssignee: POI Developers List <dev>
Status: RESOLVED FIXED    
Severity: enhancement    
Priority: P2    
Version: unspecified   
Target Milestone: ---   
Hardware: All   
OS: All   

Description virtuald 2015-09-15 03:51:29 UTC
Nick has suggested:

In the short term, I'd suggest we do another full jar for it, and have the key classes included in the poi-ooxml-schemas jar

Medium term, we should release a full ooxml-schemas 1.2 jar, with the visio and security bits in.
Comment 1 virtuald 2015-09-18 23:21:31 UTC
Ok, I created a private branch with the imported XSD, which ignores the original advice. :) It seems a bit complicated to create a new jar (and my ant-fu isn't that great), so instead I elected to bump the ooxml-schemas jar version, and include the visio.xsd there.

The XSD is difficult to download in a standalone form, so I added that to the repository. It's copyright/usage notice does not reflect the usage notice on the website -- should we change it to reflect this?

Patch can be found here: https://github.com/virtuald/poi/tree/xsd
Comment 2 Dominik Stadler 2015-09-20 19:56:12 UTC
Changes look good, please note the two "second-class" sets of build-files in the folders maven/ and sonar/, I did a quick look and you at least should add the nex XSDs in sonar/ooxml-schema, can can run a "mvn package" in the sonar-folder to ensure that the Maven-Build for Sonar still runs fine.

Also check the FAQ at http://poi.apache.org/faq.html#faq-N10025, it explains how necessary pieces end up in the poi-ooxml-schemas-XX.jar when they are used in unit-tests. The related build-step is at "compile-ooxml-lite". So it happens automatically, but only with unit-tests which trigger the related code.
Comment 3 virtuald 2015-09-22 02:12:28 UTC
I've added the sonar fixes to that branch. I'll rebase the other branch to use this too.

The unit tests are part of the main visio integration effort, so I'm not going to worry about adding those here.
Comment 4 virtuald 2015-10-07 02:43:58 UTC
Alright, I'm pushing this into trunk as a first step for integration. Bombs away?
Comment 5 Nick Burch 2015-10-07 08:45:48 UTC
If you're bumping the version number of the ooxml-schemas jar up, please add the security ones too, so people only need the one big one!

Once everyone's happy with the new jar, it'll also need pushing to Maven central
Comment 6 virtuald 2015-10-07 13:05:48 UTC
Looks like Jenkins didn't like that the xsd doesn't have an apache header on it. Is there an exclude list for the checker somewhere? That seems more appropriate.
Comment 7 virtuald 2015-10-07 13:30:49 UTC
Jenkins should be happy now, found the exclude setting for the rat check.

As far as adding the security jar to the main jar, it seems like the settings are different for generating the security jars, namely that noupa/nopvr are set to true. I'm not an XMLBeans expert, will that setting be ok for the main jars?
Comment 8 Dominik Stadler 2016-02-15 21:31:48 UTC
I think this is basically fixed, further work on refactoring the different schema-jars should be handled in separate issues.