1 /*
2  *    GeoAPI - Java interfaces for OGC/ISO standards
3  *    http://www.geoapi.org
4  *
5  *    Copyright (C) 2004-2011 Open Geospatial Consortium, Inc.
6  *    All Rights Reserved. http://www.opengeospatial.org/ogc/legal
7  *
8  *    Permission to use, copy, and modify this software and its documentation, with
9  *    or without modification, for any purpose and without fee or royalty is hereby
10  *    granted, provided that you include the following on ALL copies of the software
11  *    and documentation or portions thereof, including modifications, that you make:
12  *
13  *    1. The full text of this NOTICE in a location viewable to users of the
14  *       redistributed or derivative work.
15  *    2. Notice of any changes or modifications to the OGC files, including the
16  *       date changes were made.
17  *
18  *    THIS SOFTWARE AND DOCUMENTATION IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE
19  *    NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED
20  *    TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT
21  *    THE USE OF THE SOFTWARE OR DOCUMENTATION WILL NOT INFRINGE ANY THIRD PARTY
22  *    PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.
23  *
24  *    COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR
25  *    CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENTATION.
26  *
27  *    The name and trademarks of copyright holders may NOT be used in advertising or
28  *    publicity pertaining to the software without specific, written prior permission.
29  *    Title to copyright in this software and any associated documentation will at all
30  *    times remain with copyright holders.
31  */
32 
33 /**
34  * Description and storage of {@linkplain org.opengis.parameter.ParameterValue parameter values}.
35  * The first two paragraphs below are adapted from
36  * {@linkplain org.opengis.annotation.Specification#ISO_19111 OpenGIS® Spatial Referencing by
37  * Coordinates (Topic 2)} specification.
38  *
39  * <P ALIGN="justify">Most {@linkplain org.opengis.parameter.ParameterValue parameter values} are
40  * numeric, but for some operation methods, notably those implementing a grid interpolation
41  * algorithm, the parameter value could be a file name and location (this may be a URI). An
42  * example is the coordinate transformation from NAD&nbsp;27 to NAD&nbsp;83 in the USA; depending
43  * on the locations of the points to be transformed, one of a series of grid files should be used.</P>
44  *
45  * <P ALIGN="justify">Some operation methods may require a large number of coordinate operation
46  * parameters. Also, some operation methods require that groups of parameters be repeatable as
47  * a group. In such cases, it is helpful to group related parameters in
48  * {@linkplain org.opengis.parameter.ParameterDescriptorGroup parameter groups}. Two or more parameter
49  * groups are then associated with a particular operation method, and each parameter group consists
50  * of a set of {@linkplain org.opengis.parameter.ParameterDescriptor operation parameters}, or other,
51  * nested parameter groups. This way of modeling is not mandatory; all coordinate operation
52  * parameters may be assigned directly to the coordinate operation method.</P>
53  *
54  * @departure harmonization
55  *   Moved the <code>GeneralParameterDescriptor</code>, <code>ParameterDescriptor</code>,
56  *   <code>ParameterDescriptorGroup</code>, <code>GeneralParameterValue</code>, <code>ParameterValue</code>,
57  *   <code>ParameterValueGroup</code>, <code>InvalidParameterNameException</code>,
58  *   <code>InvalidParameterTypeException</code> and <code>InvalidParameterValueException</code>
59  *   interfaces from <code>org.opengis.referencing.operation</code> to <code>org.opengis.parameter</code>.
60  *   With this move, GeoAPI has extended the use of these parameter classes to a more general use rather
61  *   than only for referencing operation types.
62  *
63  * @author  Martin Desruisseaux (IRD)
64  * @author  Jody Garnett (Refractions Research)
65  * @version 3.0
66  * @since   1.0
67  */
68 package org.opengis.parameter;
69