blob: 31ca8dcbd89847d84fc195d06931611a909f1f8b [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html>
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<title>GeoAPI</title>
<meta charset="UTF-8"/>
<link rel="stylesheet" type="text/css" href="../../../../content/book/book.css"/>
</head>
<body>
<!--
Content below this point is copied in "(…)/content/book/en/developer-guide.html"
by the 'org.apache.sis.internal.book.Assembler' class in 'sis-build-helper' module.
-->
<section>
<header>
<h2 id="GeoAPI-modules">GeoAPI modules</h2>
</header>
<p>
The GeoAPI project consists of a standardized part (<code>geoapi</code>)
and an experimental part (<code>geoapi-pending</code>).
As these two parts are mutually exclusive, users must take care not to mix them in the same project.
This separation is guaranteed for all projects that depend only on the Maven central repository
(including the final versions of Apache <abbr>SIS</abbr>),
as the <code>geoapi-pending</code> module is never deployed on this central repository.
By contrast, certain <abbr>SIS</abbr> development branches may depend on <code>geoapi-pending</code>.
</p>
<p>
GeoAPI modules are:
</p>
<ul>
<li><p>
<b><code>geoapi</code></b> — includes interfaces covered by the
<a href="https://www.ogc.org/standards/geoapi">GeoAPI standard of the <abbr>OGC</abbr></a>.
The final versions of Apache <abbr>SIS</abbr> depend on this module.
</p></li>
<li><p>
<b><code>geoapi-pending</code></b> — contains a
<em>copy</em> of all interfaces in the <code>geoapi</code> module
(not a dependence) with additions that have not yet been approved as an <abbr>OGC</abbr> standard.
Some additions appear in interfaces normally defined by the <code>geoapi</code> module, hence the need to copy them.
Apache <abbr>SIS</abbr>’s development branches <code>JDK8</code> and <code>JDK9</code> depend on this module,
but this dependence becomes a dependence on the <code>geoapi</code> standard module when the branches are merged to the trunk.
</p></li>
<li><p>
<b><code>geoapi-conformance</code></b> — includes a JUnit test suite that developers may use to test their implementations.
</p></li>
<li><p>
<b><code>geoapi-examples</code></b> — includes examples of relatively simple implementations.
These examples are placed in the public domain in order to encourage users to copy and adapt them to their needs if
Apache <abbr>SIS</abbr> services are unsuitable.
</p></li>
<li><p>
<b><code>geoapi-proj4</code></b> — contains a partial implementation of <code>org.opengis.referencing</code>
packages as adaptors based on the C/C++ Proj.4 library.
This module may be used as an alternative to the <code>sis-referencing</code> module for certain functions.
</p></li>
<li><p>
<b><code>geoapi-netcdf</code></b> — contains a partial implementation of <code>org.opengis.referencing</code>
and <code>org.opengis.coverage</code> packages as adaptors based on the <abbr>UCAR</abbr> <abbr>netCDF</abbr> library.
The series of tests in this module was developed in such a way as to be reusable for other projects.
Apache <abbr>SIS</abbr> uses them to test its own <code>sis-netcdf</code> module.
</p></li>
<li><p>
<b><code>geoapi-openoffice</code></b> — contains an add-in for the OpenOffice.org office suite.
Note: Apache <abbr>SIS</abbr> provides its own <i>add-in</i> in the <code>sis-openoffice</code> module.
</p></li>
</ul>
</section>
</body>
</html>