[MetaCRS] Geotoolkit announcement

Martin Desruisseaux martin.desruisseaux at geomatys.fr
Thu Apr 30 09:57:24 EDT 2009


Hello all

I'm forwarding the announcement below on the MetaCRS list because that free Java 
library is strongly oriented toward Coordinate Transformation Services. Actually 
in its current form, its stable part is mostly about that.

     Martin Desruisseaux


-----------------------------------------------------

We are pleased to announce the new free software project Geotoolkit which is 
building a world class, standards based, Java language code library for 
geospatial applications.

The Geotoolkit web site is available at

             http://www.geotoolkit.org/

which is automatically generated from the code itself.

Geotoolkit is free software. Daily builds of the project as binaries and source 
code bundles are available from the project web site. The code is licensed to 
anyone for any use except that re-distribution comes with some minor 
responsibilities designed to ensure the same freedoms for the recipients. The 
code is currently licensed to all users under the terms of the GNU Lesser 
General Public License version 2. The code copyright is assigned to the Open 
Source Geospatial Foundation (OSGeo). The source code is available to online at

               http://hg.geotoolkit.org/

and can be obtained using the mercurial distributed version control system with 
the call:
    hg clone http://hg.geotoolkit.org/geotoolkit/
which will provide users with a fully independent copy of the repository 
including the full history of the project itself and able to generate locally a 
working copy of any revision.

Geotoolkit is based on standards shared broadly by the geospatial community. 
Geotoolkit leverages the GeoAPI project which defines Java language interfaces 
for the standards published jointly by the International Organization for 
Standardization (ISO) and the Open Geospatial Consortium (OGC). The core 
Geotoolkit library currently implements the following standards:
       ISO 19103 Geographic Information --- Conceptual schema language
       ISO 19115 Geographic Information --- Metadata
       ISO 19111 Geographic Information --- Spatial referencing by coordinates
while extensions implement:
       ISO 19108 Geographic Information --- Temporal schema
       OGC 05-078r4 OpenGIS Styled Layer Descriptor Profile of WMS  --- sld
       OGC 05-077r4 OpenGIS Symbology Encoding Implementation Specification   --- se
and there are plans to implement more of these standards and their profiles.

Geotoolkit aims to be clean and well designed. The library should build and 
deploy a full version of the code every day, including the maven jars and 
artifacts, the project web site, and the API javadocs. The code should open in 
the major Integrated Development Environments without errors or warnings (except 
where such warnings are wrong). All public code should be correctly documented, 
must follow the design of the Java language, and should be designed properly for 
method and field access, class inheritance, and code reuse.

Geotoolkit is built on the strengths of the Java language. The library follows 
the architectural design of the core Java library so as to provide the Java 
programmer with a familiar programing environment. The library exploits recent 
improvements to the language syntax for improved code quality. The library aims 
to run on the recent, high performance virtual machines developed by the major 
providers of Java implementations for maximum performace.

Geotoolkit uses the Mercurial distributed version control system. These systems 
such as Git, Bazaar, and Mercurial have recently swept the free software world 
due to a fundamental technical superiority over previous generation systems. 
Among the advantages of these new systems, they allow every developer to be the 
master of their own destiny, unfettered to advance in any direction they see fit 
and able collaborate with anyone in any way they choose. Mercurial is one  of 
these systems, recently chosen by Sun for its work on Java, by the Python 
community for hosting the Python code, by the Mozilla foundation for hosting the 
Firefox project, and by several other major projects.

Project goals will be targeted to making the library as good as it can be rather 
than meeting any technical or marketing need of any third part project. The 
library will aim to provide regular releases. The project will develop, as the 
user community grows, a formal process by which contributions can be integrated 
to the central repository.

The governance model for Geotoolkit has not yet been finalized but it will aim 
to separate out the community management aspects of governance from the 
technical decisions.

Geotoolkit hopes to become a project of the Open Source Geospatial Foundation 
(OSGeo). It has formally asked to be accepted for incubation with the foundation 
which is the usual preparatory step for projects wishing to be accepted by the 
foundation.

Several projects already use the Geotoolkit library. The Constellation web 
server (http://www.constellation-sdi.org/) provides high-performance web 
services conformant with the CSW, SOS, WMS and WCS specifications of the Open 
Geospatial Consortium based on Geotoolkit. The MDWeb project 
(http://www.mdweb-project.org/) provides both a server for metadata conformant 
with CSW-T and a web client based on the capabilities of Geotoolkit. The 
MapFaces project (http://www.mapfaces.org/) provides a framework for building 
web clients based on the geospatial infrastrcture and local rendering 
capabilities provided by Geotoolkit. The desktop client Puzzle GIS 
(http://puzzle-gis.codehaus.org/) uses Geotoolkit as its base library. We also 
know of one comercial application already being built using Geotoolkit.



Geotoolkit is a fork of the GeoTools library. Geotoolkit retains the long term 
goal but differs in its work approach: keeping the fundamental requirement of 
user freedom but restoring an emphasis on code quality, following closely the 
improvement of the Java language itself, leveraging new tools for decentralized 
collaboration, affirming the independence of the project from any specific user 
community, and restructuring the governance model.

Anyone interested by the Geotoolkit library, by our goal of building a great 
Java language geospatial library, and by our vision for a distributed, 
collaborative project should look at the Geotoolkit web site, browse the 
javadocs API documentation, clone the source code repository to build and tinker 
with it, try out the commandline tools, and see if the project suits their 
needs. Projects which are based on GeoTools today can be ported to Geotoolkit 
relatively easily using a migration tool in Geotoolkit, other geospatial 
projects will have to evaluate how to transition towards the ISO/OGC spatial 
data schema and the GeoAPI interfaces.


Vincent Heurteaux



More information about the MetaCRS mailing list