JENA-1537: Remove dependency on Apache Xerces. #413
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The dependency of Apache Xerces 2.11.0 can be removed by extracting the necessary datatype validation code from Xerces and using the JDK XML parser. The Xerces release jars
xercesImpl-2.11.0.jar
andxml-apis-1.4.01.jar
are no longer needed which has OSGi and JPMS advantages.Impacts:
XSDDatatype.loadUserDefined
- the necessary code isn't available via JDK APIsorg.apache.jena.ext.xerces
for the extracted datatype validation and regex code (a SPARQL corner case)pom.xml
andjena-core/pom.xml
jena-osgi/pom.xml
The extracted code is only slightly cleaned up to keep some degree of alignment with the original Xerces source. That code originates from a long time ago and has a lot of warnings which have been suppressed.
There will also need to be a change to NOTICE to reflect NOTICE from Xerces (it is already in the NOTICE for the distribution).