1. AtlasStyler http://en.geopublishing.org/AtlasStyler Java. Claims to be LPGL, though I haven't yet found the source tree. Available cross platform, with ubuntu support. Designed as a stand alone desktop app, but appears to contain all the functionality for general SLD generation, including the data analytics -- quantile/class-break color/ramp, etc.
Not sure if its scriptable, but likely classes could be used directly.
2. Quantum GIS
Quantum is GPL'ed. It uses its own symbology, but can do the all of the necessary analytics and symbolization, etc. And has python plugins to export these layers to SLD:
http://pyqgis.org/manager/python_plugin/list
3. GeoServer
SLDValidator in the geoserver dist geoserver org.vfny.geoserver.util might be useful for robustness... reused in Udig
4.
Udig:
LGPL'ed Java classes for SLD editing. Does not appear useful for generating quantiles/data analytics, but might be reused to generate syntactically correct SLD given the correct impute values. Unsure about scriptability
best,
Micah
And I only took a quick look at the code for thise. The QGIS savesld
package looked close. From the little I saw the Qt dependencies were
mostly for dialog etc, which could just be dropped, and for things
like color definitions which could be refactored out. Seemed like it
might be easier to take a relatively complete package that appears to
do all the quantile/sld generation/ refactor out the non QGIS
dependencies and repackage, then to roll a new SLD lib from scratch...
but seems to a practical tradeoff decision between effort spent on
integration vs. effort spent on (re)implementing the code SLD
generation functions. In the end its completely your call.. And did
the OpenGeo folks have any advice?
best,
Micah
--
________________________________________________________________________
Micah Altman, Ph.D. <http://redistricting.info> Twitter: @drmaltman
Senior Research Scientist, Institute for Quantitative Social Science, Harvard U.
Director of Archiving and Acquisitions, IQSS;
"Entia non sunt multiplicanda sine necessitate" - Dr. Invincibilis
(Corollary, "Ad indicia spectate.")