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

Modularize the xml-apis-ext dependency #15

Closed
carlosame opened this issue May 1, 2021 · 0 comments
Closed

Modularize the xml-apis-ext dependency #15

carlosame opened this issue May 1, 2021 · 0 comments

Comments

@carlosame
Copy link
Member

This project depends on the org.w3c.dom.svg package (and also a couple of org.w3c.dom.smil classes), as provided by xml-apis-ext-1.3.04.jar which also contains the SAC classes.

For modularization purposes, it is more convenient to depend on two separate packages, svgom-api and smil-api with their own module names. The sources of the xml-apis-ext-1.3.04.jar package are archived at:

http://archive.apache.org/dist/xml/commons/

although there are more recent versions of the package, 1.3.05 and 1.4.01 available from:

http://xerces.apache.org/mirrors.cgi#source

In principle this project is not using those sources, instead I downloaded the original Java bindings from W3C, although it seems that the classes in xml-apis-ext-1.3.04.jar are a mixture of SVG versions. I found the following source downloads:

The following URL about SMIL 3.0 may also be relevant as a reference for the latest version:

https://www.w3.org/TR/SMIL3/smil-timing.html#DOM-SupportedMethods

I had to modify several API method signatures so they matched the implementations in EchoSVG. Although it would have been easy to upgrade EchoSVG instead, that would have created problems in cases where both xml-apis-ext-1.3.04.jar and svgom-api / smil-api are found in the classpath or modulepath (which is conceivable if somebody is using EchoSVG and Apache FOP in the same project).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant