xmlgraphics-general mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jeremias Maerki <...@jeremias-maerki.ch>
Subject Re: Public domain code
Date Sun, 27 Aug 2006 10:53:07 GMT
Hmm, there are several things we have to look at:

1. the LZW patent

Yes, it is expired at least in North America and Europe. Info about
patents in other countries is scetchy. That leaves a lingering
uncertainty around the LZW algorithm and usually it's a good idea to
just ignore this algorithm alltogether especially since there are better

A question for you to derive from this is: Is it worth entering a zone
of uncertainty to support a basically obsolete format?

Personally and with my PMC chair hat on, I'd not add any LZW-related
code to software at the ASF without first having received a go by the
ASF's legal council. Alternatively, you can access all subimages of an
animated GIF through ImageIO which effectively shields Batik against the
patent. Of course, it means that you only get support for animated GIF
on J2SE >=1.4. But would that be so bad?

Interesting links:

2. the GIF format

Personal opinion: Don't use GIF, use PNG (or TIFF withut LZW). Burn all
GIFs! :-)
Problem: PNG does not (directly) support multiple images. MNG and APNG
are possible solutions but they are not very popular. :-(


3. GifDecoder.java

Kevin Weiner puts the class in the public domain. Ok so far, but what
about this: "LZW decoder adapted from John Cristy's ImageMagick."
ImageMagick is GPL so you could argue that Kevon Weiner is not even
allowed to remove the GPL even if he rewrote the code in Java from code
in ImageMagick. The reason I say this: The developers of GNU Classpath
and Harmony have very strict rules about how the software is to be
implemented. Nobody is allowed to work on the two projects who is
"tainted by the source code of the Sun J2SE implementation". You may not
look into the Sun J2SE source code when you're working on either GNU
Classpath or Harmony.

I see a big question mark here which needs to be reviewed by the ASF's
legal council. I don't give my go on this class just like that. It's too
suspect. Sorry, Cameron.


4. Using public domain code

If some source code is in the public domain and safe to use (legally,
see 3 above), then generally it is possible to include the source code
in our repository provided that the origin and legal info is properly
documented. I think some info would have to end up in the NOTICE file.
Reminds me that I have to add a few things to FOP's NOTICE file.

Here's what HTTPD does: http://svn.apache.org/repos/asf/httpd/httpd/trunk/NOTICE

On 27.08.2006 10:51:55 Cameron McCormack wrote:
> Hi again.
> I came across a public domain animated GIF decoder[1] (the LZW patents
> have expired world-wide now, right?).  If I wanted to include this with
> Batik, should I compile it and stick it in a jar file?  Or should it be
> included as source?  (Or is it at my discretion?)
> Incidentally it turns out that the Theora decoding part of the Cortado
> applet, jheora, is LGPL, so it looks like there’s still scope for it to
> be used as an optional download.
> Thanks,
> Cameron
> [1] http://www.fmsware.com/stuff/GifDecoder.java

Jeremias Maerki

Apache XML Graphics Project URL: http://xmlgraphics.apache.org/
To unsubscribe, e-mail: general-unsubscribe@xmlgraphics.apache.org
For additional commands, e-mail: general-help@xmlgraphics.apache.org

View raw message