You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jena.apache.org by Andy Seaborne <an...@apache.org> on 2020/01/17 17:53:52 UTC
Re: [] Apache Jena 3.14.0 RC 2
Thanks for the vote.
On 17/01/2020 15:58, ajs6f wrote:
> I did notice:
>
>> Portions of this software are from Apache Xerces and were originally based on the following:
>> - software copyright (c) 1999, IBM Corporation., http://www.ibm.com.
>> - software copyright (c) 1999, Sun Microsystems., http://www.sun.com.
>
> I haven't kept track of all of our moves around Xerces and its datatype code. Do we still need this, or did we excise all the Xerces-derived stuff?
Jena has Xerces source code in it. Some of the datatype code was lifted
from Xerces. That's why NOTICE has that text, rather than a binary
dependency on Xerces.
Nowadays, to avoid a binary dependency, Jena has the source code for all
the datatype machinery under "org.apache.jena.ext.xerces" without the
XML parser. Taken from 2.11.0.
A binary dependency is a bit problematic using Jena as a library.
xercesImpl.jar has various ServiceLoader files. It will wire itself into
the JVM.
So the whole application gets Jena's choice of XML parser. Not good.
And there is the recurrent matter of incorrectly repackage/shading jars.
Extracting the datatype parts (which aren't huge and get called directly
from Jena anyway) and repackaging under "org.apache.jena.ext.xerces"
means Jena uses whatever XML parser the application chooses, including
the JDK one (which is a older fork of Xerces but then modified). No
ServiceLoader. Helps with OSGi as well. JENA-1537 lists a few issues
that have come up over the years.
Andy
Re: [] Apache Jena 3.14.0 RC 2
Posted by ajs6f <aj...@apache.org>.
Sounds like nothing to worry about (wrt to my NOTICE question).
ajs6f
> On Jan 17, 2020, at 12:53 PM, Andy Seaborne <an...@apache.org> wrote:
>
> Thanks for the vote.
>
> On 17/01/2020 15:58, ajs6f wrote:
>
>> I did notice:
>>> Portions of this software are from Apache Xerces and were originally based on the following:
>>> - software copyright (c) 1999, IBM Corporation., http://www.ibm.com.
>>> - software copyright (c) 1999, Sun Microsystems., http://www.sun.com.
>> I haven't kept track of all of our moves around Xerces and its datatype code. Do we still need this, or did we excise all the Xerces-derived stuff?
>
> Jena has Xerces source code in it. Some of the datatype code was lifted from Xerces. That's why NOTICE has that text, rather than a binary dependency on Xerces.
>
> Nowadays, to avoid a binary dependency, Jena has the source code for all the datatype machinery under "org.apache.jena.ext.xerces" without the XML parser. Taken from 2.11.0.
>
> A binary dependency is a bit problematic using Jena as a library. xercesImpl.jar has various ServiceLoader files. It will wire itself into the JVM.
>
> So the whole application gets Jena's choice of XML parser. Not good.
> And there is the recurrent matter of incorrectly repackage/shading jars.
>
> Extracting the datatype parts (which aren't huge and get called directly from Jena anyway) and repackaging under "org.apache.jena.ext.xerces" means Jena uses whatever XML parser the application chooses, including the JDK one (which is a older fork of Xerces but then modified). No ServiceLoader. Helps with OSGi as well. JENA-1537 lists a few issues that have come up over the years.
>
> Andy
>
>
>
>
>