All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.opengis.metadata.identification.TopicCategory Maven / Gradle / Ivy

There is a newer version: 24.2-oss84-1
Show newest version
/*
 *    GeoTools - The Open Source Java GIS Toolkit
 *    http://geotools.org
 *
 *    (C) 2011, Open Source Geospatial Foundation (OSGeo)
 *    (C) 2004-2005, Open Geospatial Consortium Inc.
 *
 *    All Rights Reserved. http://www.opengis.org/legal/
 */
package org.opengis.metadata.identification;

import static org.opengis.annotation.Obligation.*;
import static org.opengis.annotation.Specification.*;

import java.util.ArrayList;
import java.util.List;
import org.opengis.annotation.UML;
import org.opengis.util.CodeList;

/**
 * High-level geographic data thematic classification to assist in the grouping and search of
 * available geographic data sets. Can be used to group keywords as well. Listed examples are not
 * exhaustive.
 *
 * 

NOTE: It is understood there are overlaps between general categories and the user is * encouraged to select the one most appropriate. * * @version ISO 19115 * @author Martin Desruisseaux (IRD) * @since GeoAPI 2.0 */ @UML(identifier = "MD_TopicCategoryCode", specification = ISO_19115) public final class TopicCategory extends CodeList { /** Serial number for compatibility with different versions. */ private static final long serialVersionUID = -4987523565852255081L; /** List of all enumerations of this type. Must be declared before any enum declaration. */ private static final List VALUES = new ArrayList(19); /** * Rearing of animals and/or cultivation of plants. * *

Examples: agriculture, irrigation, aquaculture, plantations, herding, pests and diseases * affecting crops and livestock. */ @UML(identifier = "farming", obligation = CONDITIONAL, specification = ISO_19115) public static final TopicCategory FARMING = new TopicCategory("FARMING"); /** * Flora and/or fauna in natural environment. * *

Examples: wildlife, vegetation, biological sciences, ecology, wilderness, sealife, * wetlands, habitat */ @UML(identifier = "biota", obligation = CONDITIONAL, specification = ISO_19115) public static final TopicCategory BIOTA = new TopicCategory("BIOTA"); /** * Legal land descriptions. * *

Examples: political and administrative boundaries. */ @UML(identifier = "boundaries", obligation = CONDITIONAL, specification = ISO_19115) public static final TopicCategory BOUNDARIES = new TopicCategory("BOUNDARIES"); /** * Processes and phenomena of the atmosphere. * *

Examples: cloud cover, weather, climate, atmospheric conditions, climate change, * precipitation. */ @UML( identifier = "climatologyMeteorologyAtmosphere", obligation = CONDITIONAL, specification = ISO_19115 ) public static final TopicCategory CLIMATOLOGY_METEOROLOGY_ATMOSPHERE = new TopicCategory("CLIMATOLOGY_METEOROLOGY_ATMOSPHERE"); /** * Economic activities, conditions and employment. * *

Examples: production, labour, revenue, commerce, industry, tourism and ecotourism, * forestry, fisheries, commercial or subsistence hunting, exploration and exploitation of * resources such as minerals, oil and gas. */ @UML(identifier = "economy", obligation = CONDITIONAL, specification = ISO_19115) public static final TopicCategory ECONOMY = new TopicCategory("ECONOMY"); /** * Height above or below sea level. * *

Examples: altitude, bathymetry, digital elevation models, slope, derived products. */ @UML(identifier = "elevation", obligation = CONDITIONAL, specification = ISO_19115) public static final TopicCategory ELEVATION = new TopicCategory("ELEVATION"); /** * Environmental resources, protection and conservation. * *

Examples: environmental pollution, waste storage and treatment, environmental impact * assessment, monitoring environmental risk, nature reserves, landscape. */ @UML(identifier = "environment", obligation = CONDITIONAL, specification = ISO_19115) public static final TopicCategory ENVIRONMENT = new TopicCategory("ENVIRONMENT"); /** * Information pertaining to earth sciences. * *

Examples: geophysical features and processes, geology, minerals, sciences dealing with the * composition, structure and origin of the earth's rocks, risks of earthquakes, volcanic * activity, landslides, gravity information, soils, permafrost, hydrogeology, erosion. */ @UML( identifier = "geoscientificInformation", obligation = CONDITIONAL, specification = ISO_19115 ) public static final TopicCategory GEOSCIENTIFIC_INFORMATION = new TopicCategory("GEOSCIENTIFIC_INFORMATION"); /** * Health, health services, human ecology, and safety. * *

Examples: disease and illness, factors affecting health, hygiene, substance abuse, mental * and physical health, health services. * * @since GeoAPI 2.1 */ @UML(identifier = "health", obligation = CONDITIONAL, specification = ISO_19115) public static final TopicCategory HEALTH = new TopicCategory("HEALTH"); /** * Base maps. * *

Examples: land cover, topographic maps, imagery, unclassified images, annotations. */ @UML( identifier = "imageryBaseMapsEarthCover", obligation = CONDITIONAL, specification = ISO_19115 ) public static final TopicCategory IMAGERY_BASE_MAPS_EARTH_COVER = new TopicCategory("IMAGERY_BASE_MAPS_EARTH_COVER"); /** * Military bases, structures, activities. * *

Examples: barracks, training grounds, military transportation, information collection. */ @UML(identifier = "intelligenceMilitary", obligation = CONDITIONAL, specification = ISO_19115) public static final TopicCategory INTELLIGENCE_MILITARY = new TopicCategory("INTELLIGENCE_MILITARY"); /** * Inland water features, drainage systems and their characteristics. * *

Examples: rivers and glaciers, salt lakes, water utilization plans, dams, currents, * floods, water quality, hydrographic charts. */ @UML(identifier = "inlandWaters", obligation = CONDITIONAL, specification = ISO_19115) public static final TopicCategory INLAND_WATERS = new TopicCategory("INLAND_WATERS"); /** * Positional information and services. * *

Examples: addresses, geodetic networks, control points, postal zones and services, place * names. */ @UML(identifier = "location", obligation = CONDITIONAL, specification = ISO_19115) public static final TopicCategory LOCATION = new TopicCategory("LOCATION"); /** * Features and characteristics of salt water bodies (excluding inland waters). * *

Examples: tides, tidal waves, coastal information, reefs. */ @UML(identifier = "oceans", obligation = CONDITIONAL, specification = ISO_19115) public static final TopicCategory OCEANS = new TopicCategory("OCEANS"); /** * Information used for appropriate actions for future use of the land. * *

Examples: land use maps, zoning maps, cadastral surveys, land ownership. */ @UML(identifier = "planningCadastre", obligation = CONDITIONAL, specification = ISO_19115) public static final TopicCategory PLANNING_CADASTRE = new TopicCategory("PLANNING_CADASTRE"); /** * Characteristics of society and cultures. * *

Examples: settlements, anthropology, archaeology, education, traditional beliefs, manners * and customs, demographic data, recreational areas and activities, social impact assessments, * crime and justice, census information */ @UML(identifier = "society", obligation = CONDITIONAL, specification = ISO_19115) public static final TopicCategory SOCIETY = new TopicCategory("SOCIETY"); /** * Man-made construction. * *

Examples: buildings, museums, churches, factories, housing, monuments, shops, towers. */ @UML(identifier = "structure", obligation = CONDITIONAL, specification = ISO_19115) public static final TopicCategory STRUCTURE = new TopicCategory("STRUCTURE"); /** * Means and aids for conveying persons and/or goods. * *

Examples: roads, airports/airstrips, shipping routes, tunnels, nautical charts, vehicle or * vessel location, aeronautical charts, railways. */ @UML(identifier = "transportation", obligation = CONDITIONAL, specification = ISO_19115) public static final TopicCategory TRANSPORTATION = new TopicCategory("TRANSPORTATION"); /** * Energy, water and waste systems and communications infrastructure and services. * *

Examples: hydroelectricity, geothermal, solar and nuclear sources of energy, water * purification and distribution, sewage collection and disposal, electricity and gas * distribution, data communication, telecommunication, radio, communication networks. */ @UML(identifier = "utilitiesCommunication", obligation = CONDITIONAL, specification = ISO_19115) public static final TopicCategory UTILITIES_COMMUNICATION = new TopicCategory("UTILITIES_COMMUNICATION"); /** * Constructs an enum with the given name. The new enum is automatically added to the list * returned by {@link #values}. * * @param name The enum name. This name must not be in use by an other enum of this type. */ private TopicCategory(final String name) { super(name, VALUES); } /** * Returns the list of {@code TopicCategory}s. * * @return The list of codes declared in the current JVM. */ public static TopicCategory[] values() { synchronized (VALUES) { return VALUES.toArray(new TopicCategory[VALUES.size()]); } } /** Returns the list of enumerations of the same kind than this enum. */ public TopicCategory[] family() { return values(); } /** * Returns the topic category that matches the given string, or returns a new one if none match * it. * * @param code The name of the code to fetch or to create. * @return A code matching the given name. */ public static TopicCategory valueOf(String code) { return valueOf(TopicCategory.class, code); } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy