diff --git a/geoapi-pending/src/main/java/module-info.java b/geoapi-pending/src/main/java/module-info.java index bb9fc2d4d..e05078884 100644 --- a/geoapi-pending/src/main/java/module-info.java +++ b/geoapi-pending/src/main/java/module-info.java @@ -75,7 +75,6 @@ exports org.opengis.observation; exports org.opengis.observation.coverage; exports org.opengis.observation.sampling; - exports org.opengis.sld; exports org.opengis.style; exports org.opengis.style.portrayal; } diff --git a/geoapi-pending/src/main/java/org/opengis/sld/Constraint.java b/geoapi-pending/src/main/java/org/opengis/sld/Constraint.java deleted file mode 100644 index ed35839b1..000000000 --- a/geoapi-pending/src/main/java/org/opengis/sld/Constraint.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * GeoAPI - Java interfaces for OGC/ISO standards - * Copyright © 2008-2023 Open Geospatial Consortium, Inc. - * http://www.geoapi.org - * - * Licensed 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. - */ -package org.opengis.sld; - -/** - * Common interface for CoverageConstraint and FeatureTypeConstraint - * - * @version Implementation specification 1.1.0 - * @author Open Geospatial Consortium - * @author Johann Sorel (Geomatys) - * @since GeoAPI 2.2 - */ -public interface Constraint { - -} diff --git a/geoapi-pending/src/main/java/org/opengis/sld/Constraints.java b/geoapi-pending/src/main/java/org/opengis/sld/Constraints.java deleted file mode 100644 index 822cb2f53..000000000 --- a/geoapi-pending/src/main/java/org/opengis/sld/Constraints.java +++ /dev/null @@ -1,29 +0,0 @@ -/* - * GeoAPI - Java interfaces for OGC/ISO standards - * Copyright © 2008-2023 Open Geospatial Consortium, Inc. - * http://www.geoapi.org - * - * Licensed 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. - */ -package org.opengis.sld; - -/** - * Common interface for LayerCoverageConstraints and LayerFeatureConstraints - * - * @version Implementation specification 1.1.0 - * @author Open Geospatial Consortium - * @author Johann Sorel (Geomatys) - * @since GeoAPI 2.2 - */ -public interface Constraints { -} diff --git a/geoapi-pending/src/main/java/org/opengis/sld/CoverageConstraint.java b/geoapi-pending/src/main/java/org/opengis/sld/CoverageConstraint.java deleted file mode 100644 index 50fc6252d..000000000 --- a/geoapi-pending/src/main/java/org/opengis/sld/CoverageConstraint.java +++ /dev/null @@ -1,51 +0,0 @@ -/* - * GeoAPI - Java interfaces for OGC/ISO standards - * Copyright © 2008-2023 Open Geospatial Consortium, Inc. - * http://www.geoapi.org - * - * Licensed 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. - */ -package org.opengis.sld; - -import org.opengis.annotation.XmlElement; - -/** - * A CoverageConstraint element is used to identify a coverage offering by a well-known - * name, using the CoverageName element. Any positive number of CoverageConstraints - * may be used to define the coverage data of a layer, though all CoverageConstraints in a - * UserLayer must come from the same WCS source. - * - * @version Implementation specification 1.1.0 - * @author Open Geospatial Consortium - * @author Johann Sorel (Geomatys) - * @since GeoAPI 2.2 - */ -public interface CoverageConstraint extends Constraint{ - - /** - * Get the coverage name. - */ - @XmlElement("CoverageName") - String getCoverageName(); - - @XmlElement("CoverageExtent") - CoverageExtent getCoverageExtent(); - - /** - * calls the visit method of a SLDVisitor - * - * @param visitor the sld visitor - */ - Object accept(SLDVisitor visitor, Object extraData); - -} diff --git a/geoapi-pending/src/main/java/org/opengis/sld/CoverageExtent.java b/geoapi-pending/src/main/java/org/opengis/sld/CoverageExtent.java deleted file mode 100644 index 204f81c4c..000000000 --- a/geoapi-pending/src/main/java/org/opengis/sld/CoverageExtent.java +++ /dev/null @@ -1,65 +0,0 @@ -/* - * GeoAPI - Java interfaces for OGC/ISO standards - * Copyright © 2008-2023 Open Geospatial Consortium, Inc. - * http://www.geoapi.org - * - * Licensed 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. - */ -package org.opengis.sld; - -import java.util.List; -import org.opengis.annotation.XmlElement; - -/** - * When used in a UserLayer, the CoverageExtent reference defines what coverage data is - * to be included in the layer and when used in a NamedLayer, it selects the data that are - * part of the named layer. - * - * @version Implementation specification 1.1.0 - * @author Open Geospatial Consortium - * @author Johann Sorel (Geomatys) - * @since GeoAPI 2.2 - */ -@XmlElement("CoverageExtent") -public interface CoverageExtent { - - /** - * RangeAxis describes a range subset defined by a constraining parameter. The name of - * that parameter matches the name of an AxisDescription element in the range set - * description of the selected coverage offering. The value is one of the acceptable values - * defined in the corresponding AxisDescription element. - * - * @return Range axes or null, only one between timeperiod or axis can be set. - */ - @XmlElement("RangeAxis") - List rangeAxis(); - - /** - * TimePeriod describes a subset corresponding to the specified time instants or intervals, - * expressed in an extended ISO 8601 syntax. - * Caution : the return type of this method may change. - * - * @return String or null, only one between timeperiod or axis can be set. - */ - //TODO replace this String by a more appropriate Java Object when ISO8601 will be implemented. - @XmlElement("TimePeriod") - String getTimePeriod(); - - /** - * calls the visit method of a SLDVisitor - * - * @param visitor the sld visitor - */ - Object accept(SLDVisitor visitor, Object extraData); - -} diff --git a/geoapi-pending/src/main/java/org/opengis/sld/Extent.java b/geoapi-pending/src/main/java/org/opengis/sld/Extent.java deleted file mode 100644 index 0e7a3060c..000000000 --- a/geoapi-pending/src/main/java/org/opengis/sld/Extent.java +++ /dev/null @@ -1,47 +0,0 @@ -/* - * GeoAPI - Java interfaces for OGC/ISO standards - * Copyright © 2008-2023 Open Geospatial Consortium, Inc. - * http://www.geoapi.org - * - * Licensed 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. - */ -package org.opengis.sld; - -import org.opengis.annotation.XmlElement; - -/** - * When used in a UserLayer, the Extent reference defines what features are to be included - * in the layer and when used in a NamedLayer, it filters the features that are part of the - * named layer. - * - * @version Implementation specification 1.1.0 - * @author Open Geospatial Consortium - * @author Johann Sorel (Geomatys) - * @since GeoAPI 2.2 - */ -public interface Extent { - - @XmlElement("Name") - String getName(); - - @XmlElement("Value") - String getValue(); - - /** - * calls the visit method of a SLDVisitor - * - * @param visitor the sld visitor - */ - Object accept(SLDVisitor visitor, Object extraData); - -} diff --git a/geoapi-pending/src/main/java/org/opengis/sld/FeatureTypeConstraint.java b/geoapi-pending/src/main/java/org/opengis/sld/FeatureTypeConstraint.java deleted file mode 100644 index 6be724943..000000000 --- a/geoapi-pending/src/main/java/org/opengis/sld/FeatureTypeConstraint.java +++ /dev/null @@ -1,61 +0,0 @@ -/* - * GeoAPI - Java interfaces for OGC/ISO standards - * Copyright © 2008-2023 Open Geospatial Consortium, Inc. - * http://www.geoapi.org - * - * Licensed 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. - */ -package org.opengis.sld; - -import java.util.List; -import org.opengis.annotation.XmlElement; -import org.opengis.util.GenericName; -import org.opengis.filter.Filter; - -/** - * A FeatureTypeConstraint element is used to identify a feature type by a well-known - * name, using the FeatureTypeName element. Any positive number of - * FeatureTypeConstraints may be used to define the features of a layer, though all - * FeatureTypeConstraints in a UserLayer must originate from the same WFS source. - * - * @version Implementation specification 1.1.0 - * - * @author Open Geospatial Consortium - * @author Johann Sorel (Geomatys) - * @since GeoAPI 2.2 - */ -public interface FeatureTypeConstraint extends Constraint{ - - /** - * FeatureType name. - */ - @XmlElement("FeatureTypeName") - public GenericName getFeatureTypeName(); - - /** - * Filter to apply on feature collection. - */ - @XmlElement("Filter") - public Filter getFilter(); - - @XmlElement("Extent") - public List getExtent(); - - /** - * calls the visit method of a SLDVisitor - * - * @param visitor the sld visitor - */ - Object accept(SLDVisitor visitor, Object extraData); - -} diff --git a/geoapi-pending/src/main/java/org/opengis/sld/InlineFeature.java b/geoapi-pending/src/main/java/org/opengis/sld/InlineFeature.java deleted file mode 100644 index a9d96e646..000000000 --- a/geoapi-pending/src/main/java/org/opengis/sld/InlineFeature.java +++ /dev/null @@ -1,52 +0,0 @@ -/* - * GeoAPI - Java interfaces for OGC/ISO standards - * Copyright © 2008-2023 Open Geospatial Consortium, Inc. - * http://www.geoapi.org - * - * Licensed 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. - */ -package org.opengis.sld; - -import java.util.Collection; -import org.opengis.annotation.XmlElement; -import org.opengis.feature.Feature; - - -/** - * Inline Features. - * Features are stored under a GML format. - * - * @version Implementation specification 1.1.0 - * @author Open Geospatial Consortium - * @author Johann Sorel (Geomatys) - * @since GeoAPI 2.2 - */ -@XmlElement("InlineFeature") -public interface InlineFeature extends Source{ - - /** - * Collection of features. - * Caution : the return type of this method may change. - */ - //TODO : replace the Collection by something else when possible. - @XmlElement("FeatureCollection") - public Collection> features(); - - /** - * calls the visit method of a SLDVisitor - * - * @param visitor the sld visitor - */ - Object accept(SLDVisitor visitor, Object extraData); - -} diff --git a/geoapi-pending/src/main/java/org/opengis/sld/Layer.java b/geoapi-pending/src/main/java/org/opengis/sld/Layer.java deleted file mode 100644 index 81b1af759..000000000 --- a/geoapi-pending/src/main/java/org/opengis/sld/Layer.java +++ /dev/null @@ -1,53 +0,0 @@ -/* - * GeoAPI - Java interfaces for OGC/ISO standards - * Copyright © 2008-2023 Open Geospatial Consortium, Inc. - * http://www.geoapi.org - * - * Licensed 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. - */ -package org.opengis.sld; - -import org.opengis.annotation.XmlElement; -import org.opengis.style.Description; - -/** - * Commun interface for NamedLayer and UserLayer. - * - * @version Implementation specification 1.1.0 - * @author Open Geospatial Consortium - * @author Johann Sorel (Geomatys) - * @since GeoAPI 2.2 - */ -public interface Layer { - - /** - * For a NamedLayer : the Name identifies the well-known name of the layer being referenced, and is required. All - * possible well-known names are usually identified in the capabilities document for a - * server. - * For a UserLayer : The Name element simply identifies the user layer. - */ - @XmlElement("Name") - String getName(); - - /** - * The Description element is also reused throughout SE and SLD and gives an informative - * description of the “object” being defined. This information can be extracted and used for - * such purposes as creating informal searchable metadata in catalogue systems. More - * metadata fields may be added to this element in the future. The Name is not considered - * to be part of a description since a name has a functional use that is more than just - * descriptive. - */ - @XmlElement("Description") - Description getDescription(); - -} diff --git a/geoapi-pending/src/main/java/org/opengis/sld/LayerCoverageConstraints.java b/geoapi-pending/src/main/java/org/opengis/sld/LayerCoverageConstraints.java deleted file mode 100644 index 30d6a172f..000000000 --- a/geoapi-pending/src/main/java/org/opengis/sld/LayerCoverageConstraints.java +++ /dev/null @@ -1,50 +0,0 @@ -/* - * GeoAPI - Java interfaces for OGC/ISO standards - * Copyright © 2008-2023 Open Geospatial Consortium, Inc. - * http://www.geoapi.org - * - * Licensed 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. - */ -package org.opengis.sld; - -import java.util.List; -import org.opengis.annotation.XmlElement; - -/** - * A CoverageConstraint element is used to identify a coverage offering by a well-known - * name, using the CoverageName element. - * - * @version Implementation specification 1.1.0 - * @author Open Geospatial Consortium - * @author Johann Sorel (Geomatys) - * @since GeoAPI 2.2 - */ -@XmlElement("LayerCoverageConstraints") -public interface LayerCoverageConstraints extends Constraints { - - /** - * Any positive number of CoverageConstraints - * may be used to define the coverage data of a layer, though all CoverageConstraints in a - * UserLayer must come from the same WCS source. - */ - @XmlElement("CoverageConstraint") - public List constraints(); - - /** - * calls the visit method of a SLDVisitor - * - * @param visitor the sld visitor - */ - Object accept(SLDVisitor visitor, Object extraData); - -} diff --git a/geoapi-pending/src/main/java/org/opengis/sld/LayerFeatureConstraints.java b/geoapi-pending/src/main/java/org/opengis/sld/LayerFeatureConstraints.java deleted file mode 100644 index 91c17c056..000000000 --- a/geoapi-pending/src/main/java/org/opengis/sld/LayerFeatureConstraints.java +++ /dev/null @@ -1,48 +0,0 @@ -/* - * GeoAPI - Java interfaces for OGC/ISO standards - * Copyright © 2008-2023 Open Geospatial Consortium, Inc. - * http://www.geoapi.org - * - * Licensed 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. - */ -package org.opengis.sld; - -import java.util.List; -import org.opengis.annotation.XmlElement; - -/** - * The LayerFeatureConstraints element is used to specify what features of what feature - * types are to be included in a layer. - * - * @version Implementation specification 1.1.0 - * @author Open Geospatial Consortium - * @author Johann Sorel (Geomatys) - * @since GeoAPI 2.2 - */ -@XmlElement("LayerFeatureConstraints") -public interface LayerFeatureConstraints extends Constraints { - - /** - * List of constraints. - */ - @XmlElement("FeatureTypeConstraint") - List constraints(); - - /** - * calls the visit method of a SLDVisitor - * - * @param visitor the sld visitor - */ - Object accept(SLDVisitor visitor, Object extraData); - -} diff --git a/geoapi-pending/src/main/java/org/opengis/sld/LayerStyle.java b/geoapi-pending/src/main/java/org/opengis/sld/LayerStyle.java deleted file mode 100644 index c00f2468b..000000000 --- a/geoapi-pending/src/main/java/org/opengis/sld/LayerStyle.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * GeoAPI - Java interfaces for OGC/ISO standards - * Copyright © 2008-2023 Open Geospatial Consortium, Inc. - * http://www.geoapi.org - * - * Licensed 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. - */ -package org.opengis.sld; - -/** - * Common interface for Style and NamedStyle. - * - * @version Implementation specification 1.1.0 - * - * @author Open Geospatial Consortium - * @author Johann Sorel (Geomatys) - * @since GeoAPI 2.2 - */ -public interface LayerStyle { -} diff --git a/geoapi-pending/src/main/java/org/opengis/sld/NamedLayer.java b/geoapi-pending/src/main/java/org/opengis/sld/NamedLayer.java deleted file mode 100644 index d4dfde8f1..000000000 --- a/geoapi-pending/src/main/java/org/opengis/sld/NamedLayer.java +++ /dev/null @@ -1,59 +0,0 @@ -/* - * GeoAPI - Java interfaces for OGC/ISO standards - * Copyright © 2008-2023 Open Geospatial Consortium, Inc. - * http://www.geoapi.org - * - * Licensed 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. - */ -package org.opengis.sld; - -import java.util.List; -import org.opengis.annotation.XmlElement; - -/** - * A named layer is a layer that can be accessed from an OGC Web Server - * using a well-known name. - * - * @version Implementation specification 1.1.0 - * @author Open Geospatial Consortium - * @author Johann Sorel (Geomatys) - * @since GeoAPI 2.2 - */ -@XmlElement("NamedLayer") -public interface NamedLayer extends Layer { - - /** - * The LayerFeatureConstraints element is optional in a NamedLayer and allows the - * user to specify constraints on what features of what feature types are to be selected by the - * named-layer reference. It is essentially a filter that allows the selection of fewer features - * than are present in the named layer. - */ - @XmlElement("LayerFeatureConstraints") - LayerFeatureConstraints getConstraints(); - - /** - * A named styled layer can include any number of named styles and user-defined styles, - * including zero, mixed in any order. If zero styles are specified, then the default styling for - * the specified named layer is to be used. - */ - @XmlElement("UserStyle,NamedStyle") - List styles(); - - /** - * calls the visit method of a SLDVisitor - * - * @param visitor the sld visitor - */ - Object accept(SLDVisitor visitor, Object extraData); - -} diff --git a/geoapi-pending/src/main/java/org/opengis/sld/NamedStyle.java b/geoapi-pending/src/main/java/org/opengis/sld/NamedStyle.java deleted file mode 100644 index 56fe67d0f..000000000 --- a/geoapi-pending/src/main/java/org/opengis/sld/NamedStyle.java +++ /dev/null @@ -1,57 +0,0 @@ -/* - * GeoAPI - Java interfaces for OGC/ISO standards - * Copyright © 2008-2023 Open Geospatial Consortium, Inc. - * http://www.geoapi.org - * - * Licensed 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. - */ -package org.opengis.sld; - -import org.opengis.annotation.XmlElement; -import org.opengis.annotation.XmlParameter; -import org.opengis.style.Description; - -/** - * A named style, similar to a named layer, is referenced by a well-known name. A - * particular named style only has meaning when used in conjunction with a particular - * named layer. All available styles for each available layer are normally named in a - * capabilities document. - * - * @version Implementation specification 1.1.0 - * @author Open Geospatial Consortium - * @author Johann Sorel (Geomatys) - * @since GeoAPI 2.2 - */ -@XmlElement("NamedStyle") -public interface NamedStyle extends LayerStyle { - - /** - * The Name element simply identifies the well-known style name. - */ - @XmlParameter("Name") - String getName(); - - /** - * The Description is informative. - */ - @XmlElement("Description") - Description getDescription(); - - /** - * calls the visit method of a SLDVisitor - * - * @param visitor the sld visitor - */ - Object accept(SLDVisitor visitor, Object extraData); - -} diff --git a/geoapi-pending/src/main/java/org/opengis/sld/RangeAxis.java b/geoapi-pending/src/main/java/org/opengis/sld/RangeAxis.java deleted file mode 100644 index 87354b037..000000000 --- a/geoapi-pending/src/main/java/org/opengis/sld/RangeAxis.java +++ /dev/null @@ -1,49 +0,0 @@ -/* - * GeoAPI - Java interfaces for OGC/ISO standards - * Copyright © 2008-2023 Open Geospatial Consortium, Inc. - * http://www.geoapi.org - * - * Licensed 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. - */ -package org.opengis.sld; - -import org.opengis.annotation.XmlElement; - -/** - * RangeAxis describes a range subset defined by a constraining parameter. The name of - * that parameter matches the name of an AxisDescription element in the range set - * description of the selected coverage offering. The value is one of the acceptable values - * defined in the corresponding AxisDescription element. - * - * @version Implementation specification 1.1.0 - * @author Open Geospatial Consortium - * @author Johann Sorel (Geomatys) - * @since GeoAPI 2.2 - */ -@XmlElement("RangeAxis") -public interface RangeAxis { - - @XmlElement("Name") - String getName(); - - @XmlElement("Value") - String getValue(); - - /** - * calls the visit method of a SLDVisitor - * - * @param visitor the sld visitor - */ - Object accept(SLDVisitor visitor, Object extraData); - -} diff --git a/geoapi-pending/src/main/java/org/opengis/sld/RemoteOWS.java b/geoapi-pending/src/main/java/org/opengis/sld/RemoteOWS.java deleted file mode 100644 index 277b36717..000000000 --- a/geoapi-pending/src/main/java/org/opengis/sld/RemoteOWS.java +++ /dev/null @@ -1,54 +0,0 @@ -/* - * GeoAPI - Java interfaces for OGC/ISO standards - * Copyright © 2008-2023 Open Geospatial Consortium, Inc. - * http://www.geoapi.org - * - * Licensed 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. - */ -package org.opengis.sld; - -import org.opengis.annotation.XmlElement; -import org.opengis.metadata.citation.OnlineResource; - -/** - * OGC Web Service. Information about the remove server. - * - * @version Implementation specification 1.1.0 - * @author Open Geospatial Consortium - * @author Johann Sorel (Geomatys) - * @since GeoAPI 2.2 - */ -@XmlElement("RemoteOWS") -public interface RemoteOWS extends Source { - - /** - * The provided service type name. - * @return WFS or WCS - */ - @XmlElement("Service") - public String getService(); - - /** - * Online resource of the service. - */ - @XmlElement("OnlineResource") - public OnlineResource getOnlineResource(); - - /** - * calls the visit method of a SLDVisitor - * - * @param visitor the sld visitor - */ - Object accept(SLDVisitor visitor, Object extraData); - -} diff --git a/geoapi-pending/src/main/java/org/opengis/sld/SLDFactory.java b/geoapi-pending/src/main/java/org/opengis/sld/SLDFactory.java deleted file mode 100644 index dc1cda0ab..000000000 --- a/geoapi-pending/src/main/java/org/opengis/sld/SLDFactory.java +++ /dev/null @@ -1,150 +0,0 @@ -/* - * GeoAPI - Java interfaces for OGC/ISO standards - * Copyright © 2008-2023 Open Geospatial Consortium, Inc. - * http://www.geoapi.org - * - * Licensed 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. - */ -package org.opengis.sld; - -import java.util.Collection; - -import java.util.List; - -import org.opengis.feature.Feature; -import org.opengis.util.GenericName; -import org.opengis.filter.Filter; -import org.opengis.metadata.citation.OnlineResource; -import org.opengis.style.Style; - - -/** - * Factory used in the production of SLD objects. - *

- * This factory is responsible for the production of sld objects; where noted - * these create methods are in agreement with the Style Layer Descriptor 1.1 - * specification. - * - * This factory is pending. We need feedback from implementers before writing methods - * in this one. - * - * @author Open Geospatial Consortium - * @author Johann Sorel (Geomatys) - * @since GeoAPI 2.2 - */ -public interface SLDFactory { - - /** - * Create an empty Style layer descriptor. - */ - StyledLayerDescriptor createSLD(); - - /** - * Create an SLD library, an SLD library holds a online - * reference to a SLD file. - * @param online : OnlineResource, cannot be null. - */ - SLDLibrary createSLDLibrary(OnlineResource online); - - /** - * Create a default named layer. - */ - NamedLayer createNamedLayer(); - - /** - * Create a default user layer. - */ - UserLayer createUserLayer(); - - /** - * Create a default named style. - */ - NamedStyle createNamedStyle(); - - /** - * Create a default User style. - * @return Style : this object is a OGC SE Style defined in the style package. - */ - Style createUserStyle(); - - /** - * Create a RemoteOWS information object. - * @param service : cannot be null - * @param online : cannot be null - */ - RemoteOWS createRemoteOWS(String service, OnlineResource online); - - /** - * Create a Inline feature content. - * @param features : collection of features, can be null - */ - InlineFeature createInLineFeature(Collection> features); - - /** - * Create a default layer coverage constraints. - */ - LayerCoverageConstraints createLayerCoverageConstraints(); - - /** - * Create a default layer feature constraints. - */ - LayerFeatureConstraints createLayerFeatureConstraints(); - - /** - * Create a coverage constraint. - * - * @param name : cannot be null - * @param extent : can be null - */ - CoverageConstraint createCoverageConstraint(String name, CoverageExtent extent); - - /** - * Create a feature type constraint. - * - * @param name : can be null - * @param filter : can be null - * @param extents : can be null - */ - FeatureTypeConstraint createFeatureTypeConstraint(GenericName name, Filter filter, List extents); - - /** - * Create a coverage extent. - * - * @param timeperiod : cannot be null - */ - CoverageExtent createCoverageExtent(String timeperiod); - - /** - * Create a coverage extent. - * - * @param ranges : can be null or empty - */ - CoverageExtent createCoverageExtent(List ranges); - - /** - * Create a feature extent. - * - * @param name : cannot be null - * @param value : cannot be null - */ - Extent createExtent(String name, String value); - - /** - * Create a Range axis. - * - * @param name : cannot be null - * @param value : cannot be null - */ - RangeAxis createRangeAxis(String name, String value); - -} diff --git a/geoapi-pending/src/main/java/org/opengis/sld/SLDLibrary.java b/geoapi-pending/src/main/java/org/opengis/sld/SLDLibrary.java deleted file mode 100644 index f140dab1a..000000000 --- a/geoapi-pending/src/main/java/org/opengis/sld/SLDLibrary.java +++ /dev/null @@ -1,64 +0,0 @@ -/* - * GeoAPI - Java interfaces for OGC/ISO standards - * Copyright © 2008-2023 Open Geospatial Consortium, Inc. - * http://www.geoapi.org - * - * Licensed 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. - */ -package org.opengis.sld; - -import org.opengis.annotation.XmlElement; -import org.opengis.annotation.XmlParameter; -import org.opengis.metadata.citation.OnlineResource; - -/** - * The UseSLDLibrary element provides the ability of handling external SLD documents - * to be used in library-mode even when using XML-encoded POST requests with a WMS. - * (The library mode can be accessed with the HTTP-GET method by supplying an SLD - * CGI parameter in addition to LAYERS and STYLES CGI parameters.) This addition - * merely exercises pre-existing functionality in WMS, but it does add the wrinkle of - * making SLD-library references iterative and (syntactically) recursive. Successive - * definitions are applied “on top of” previous ones to determine the scoping of overlapping - * style definitions. - * - * @version Implementation specification 1.1.0 - * @author Open Geospatial Consortium - * @author Johann Sorel (Geomatys) - * @since GeoAPI 2.2 - */ -@XmlElement("UseSLDLibrary") -public interface SLDLibrary { - - /** - * The OnlineResource must refer to an SLD document. - */ - @XmlParameter("OnlineResource") - OnlineResource getOnlineResource(); - - /** - * This is a convenient method for the one using this interface. - * If we only provide the getOnlineResource method the user would be stuck - * because he might not no how to parse correctly the given file. - * This method must be implemented correctly and return the SLD object resulting - * from the parsing of the OnlineResource. - */ - StyledLayerDescriptor getSLD(); - - /** - * calls the visit method of a SLDVisitor - * - * @param visitor the sld visitor - */ - Object accept(SLDVisitor visitor, Object extraData); - -} diff --git a/geoapi-pending/src/main/java/org/opengis/sld/SLDVisitor.java b/geoapi-pending/src/main/java/org/opengis/sld/SLDVisitor.java deleted file mode 100644 index 56892c1ca..000000000 --- a/geoapi-pending/src/main/java/org/opengis/sld/SLDVisitor.java +++ /dev/null @@ -1,151 +0,0 @@ -/* - * GeoAPI - Java interfaces for OGC/ISO standards - * Copyright © 2008-2023 Open Geospatial Consortium, Inc. - * http://www.geoapi.org - * - * Licensed 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. - */ -package org.opengis.sld; - -import org.opengis.style.Style; -import org.opengis.style.StyleFactory; -import org.opengis.style.StyleVisitor; - -/** - * An interface for classes that want to perform operations on a SLD - * hierarchy. It forms part of a GoF Visitor Pattern implementation. - *

- * A call to sld.accept(SLDVisitor) will result in a call to one of the - * methods in this interface. The responsibility for traversing sub filters is - * intended to lie with the visitor (this is unusual, but permitted under the - * Visitor pattern). - *

- * A typical use would be to transcribe a sld into a specific format, e.g. XML or SQL. - * Alternatively, it may be to extract specific information from the SLD structure, for example a list of all fills. - * Finally a a sld visitor is often used (in conjunction with a factory) in the production of a - * copy; or slightly modified copy of the original sld. - * - * @see StyleVisitor - * @see StyleFactory - * @author Open Geospatial Consortium - * @author Johann Sorel (Geomatys) - * @since GeoAPI 2.2 - */ -public interface SLDVisitor { - /** - * Called when accept is called on a StyledLayerDescriptor. - * - * @param sld The style layer descriptor to visit - */ - Object visit(StyledLayerDescriptor sld, Object data ); - - /** - * Called when accept is called on a SLDLibrary. - * - * @param library The SLD library to visit - */ - Object visit(SLDLibrary library, Object data ); - - /** - * Called when accept is called on a named layer. - * - * @param layer The named layer to visit - */ - Object visit(NamedLayer layer, Object data ); - - /** - * Called when accept is called on a user layer. - * - * @param layer The user layer to visit - */ - Object visit(UserLayer layer, Object data ); - - /** - * Called when accept is called on a named style. - * - * @param style The named style to visit - */ - Object visit(NamedStyle style, Object data ); - - /** - * Called when accept is called on a user style. - * - * @param style The user style to visit - */ - Object visit(Style style, Object data ); - - /** - * Called when accept is called on a layer coverage constraints. - * - * @param constraints The layer coverage constraints to visit - */ - Object visit(LayerCoverageConstraints constraints, Object data ); - - /** - * Called when accept is called on a layer feature constraints. - * - * @param constraints The layer feature constraints to visit - */ - Object visit(LayerFeatureConstraints constraints, Object data ); - - /** - * Called when accept is called on a coverage constraint. - * - * @param constraint The coverage constraint to visit - */ - Object visit(CoverageConstraint constraint, Object data ); - - /** - * Called when accept is called on a feature constraint. - * - * @param constraint The feature constraint to visit - */ - Object visit(FeatureTypeConstraint constraint, Object data ); - - /** - * Called when accept is called on a coverage extent. - * - * @param extent The coverage extent to visit - */ - Object visit(CoverageExtent extent, Object data ); - - /** - * Called when accept is called on a feature extent. - * - * @param extent The feature extent to visit - */ - Object visit(Extent extent, Object data ); - - /** - * Called when accept is called on a range axis. - * - * @param axi The range axi to visit - */ - Object visit(RangeAxis axi, Object data ); - - /** - * Called when accept is called on a remoteOWS. - * - * @param ows The remoteOWS to visit - */ - Object visit(RemoteOWS ows, Object data ); - - /** - * Called when accept is called on an InlineFeature. - * - * @param inline The InlineFeature to visit - */ - Object visit(InlineFeature inline, Object data ); - - -} diff --git a/geoapi-pending/src/main/java/org/opengis/sld/Source.java b/geoapi-pending/src/main/java/org/opengis/sld/Source.java deleted file mode 100644 index a42e28c53..000000000 --- a/geoapi-pending/src/main/java/org/opengis/sld/Source.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * GeoAPI - Java interfaces for OGC/ISO standards - * Copyright © 2008-2023 Open Geospatial Consortium, Inc. - * http://www.geoapi.org - * - * Licensed 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. - */ -package org.opengis.sld; - -/** - * Common interface for RemoteOWS and InlineFeature - * - * @version Implementation specification 1.1.0 - * - * @author Open Geospatial Consortium - * @author Johann Sorel (Geomatys) - * @since GeoAPI 2.2 - */ -public interface Source { -} diff --git a/geoapi-pending/src/main/java/org/opengis/sld/StyledLayerDescriptor.java b/geoapi-pending/src/main/java/org/opengis/sld/StyledLayerDescriptor.java deleted file mode 100644 index 6200b48ca..000000000 --- a/geoapi-pending/src/main/java/org/opengis/sld/StyledLayerDescriptor.java +++ /dev/null @@ -1,101 +0,0 @@ -/* - * GeoAPI - Java interfaces for OGC/ISO standards - * Copyright © 2008-2023 Open Geospatial Consortium, Inc. - * http://www.geoapi.org - * - * Licensed 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. - */ -package org.opengis.sld; - -import java.util.List; - -import org.opengis.style.Description; -import org.opengis.annotation.XmlElement; -import org.opengis.annotation.XmlParameter; - -/** - * The WMS-layers level of SLD is defined in the “StyledLayerDescriptor.xsd” XML- - * Schema file and provides the “glue” between feature styling as defined by Symbology - * Encoding and WMS layers. This level of definitions has been decoupled from the feature- - * style and symbol definitions to make it convenient to perform feature styling in - * environments other than inside of a WMS. - * - * @version Implementation specification 1.1.0 - * @author Open Geospatial Consortium - * @author Johann Sorel (Geomatys) - * @since GeoAPI 2.2 - */ -@XmlElement("StyledLayerDescriptor") -public interface StyledLayerDescriptor { - - /** - * The Name element allows a symbolic name to be associated with a given SLD document. - * This element is used with most “objects” defined by SE and SLD to allow them to be - * referenced. Names must be unique in the context in which they are defined. - */ - @XmlParameter("Name") - String getName(); - - /** - * The Description element is also reused throughout SE and SLD and gives an informative - * description of the “object” being defined. This information can be extracted and used for - * such purposes as creating informal searchable metadata in catalogue systems. More - * metadata fields may be added to this element in the future. The Name is not considered - * to be part of a description since a name has a functional use that is more than just - * descriptive. - */ - @XmlElement("Description") - Description getDescription(); - - /** - * The UseSLDLibrary element provides the ability of handling external SLD documents - * to be used in library-mode even when using XML-encoded POST requests with a WMS. - * (The library mode can be accessed with the HTTP-GET method by supplying an SLD - * CGI parameter in addition to LAYERS and STYLES CGI parameters.) This addition - * merely exercises pre-existing functionality in WMS, but it does add the wrinkle of - * making SLD-library references iterative and (syntactically) recursive. Successive - * definitions are applied “on top of” previous ones to determine the scoping of overlapping - * style definitions. - */ - @XmlElement("UseSLDLibrary") - List libraries(); - - /** - * The styled layers can correspond to either named layers (NamedLayer) or user-defined - * layers (UserLayer), which are described in subsequent subclauses. There may be any - * number of either type of styled layer, including zero, mixed in any order. The order that - * the layer references appear in the SLD document will be the order that the styled layers - * are rendered, with successive styled layers rendered on top of previous styled layers. - */ - @XmlElement("NamedLayer,UserLayer") - List layers(); - - /** - * The version attribute gives the SLD version of an SLD document, to - * facilitate backward compatibility with static documents stored in various different - * versions of the SLD specification. The string has the format “x.y.z”, the same as in other - * OGC Implementation specifications. For example, an SLD document stored according to - * this specification would have the version string “1.1.0”. The attribute is required. - */ - @XmlParameter("Version") - String getVersion(); - - /** - * calls the visit method of a SLDVisitor - * - * @param visitor the sld visitor - */ - Object accept(SLDVisitor visitor, Object extraData); - - -} diff --git a/geoapi-pending/src/main/java/org/opengis/sld/UserLayer.java b/geoapi-pending/src/main/java/org/opengis/sld/UserLayer.java deleted file mode 100644 index 32e9cccaf..000000000 --- a/geoapi-pending/src/main/java/org/opengis/sld/UserLayer.java +++ /dev/null @@ -1,69 +0,0 @@ -/* - * GeoAPI - Java interfaces for OGC/ISO standards - * Copyright © 2008-2023 Open Geospatial Consortium, Inc. - * http://www.geoapi.org - * - * Licensed 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. - */ -package org.opengis.sld; - -import java.util.List; -import org.opengis.annotation.XmlElement; -import org.opengis.style.Style; - - -/** - * Since a layer is defined as a collection of potentially mixed-type features, the UserLayer - * element must provide the means to identify the features to be used. - * - * @version Implementation specification 1.1.0 - * @author Open Geospatial Consortium - * @author Johann Sorel (Geomatys) - * @since GeoAPI 2.2 - */ -@XmlElement("UserLayer") -public interface UserLayer extends Layer{ - - /** - * All features to be rendered are assumed to be fetched from a Web Feature Server (WFS) or a Web - * Coverage Service (WCS, in which case the term “features” is used loosely). Alternatively - * they can be supplied in-line in the SLD document. This alternative is only recommended - * for small numbers of features of transient nature. - * - * @return InlineFeature or RemoteOWS - */ - @XmlElement("InlineFeature,RemoteOWS") - public Source getSource(); - - /** - * Constraints to apply on the features. - * - * @return LayerFeatureConstraints or LayerCoverageConstraints - */ - @XmlElement("LayerFeatureConstraints,LayerCoverageConstraints") - public Constraints getConstraints(); - - /** - * Styles to apply on the features. - */ - @XmlElement("UserStyle") - public List styles(); - - /** - * calls the visit method of a SLDVisitor - * - * @param visitor the sld visitor - */ - Object accept(SLDVisitor visitor, Object extraData); - -}