Package org.apache.sis.xml

## Class Namespaces

- Object
- - Static
  - - Namespaces

-     public final class Namespaces
      extends Static

  Lists some namespaces URLs used by JAXB when (un)marshalling.

  Warning: string constants in this class may change in any SIS version. Those constants are made available for applications who wish to use the same URLs than SIS in their own JAXB annotations. Note that applications using those constants will have their URLs determined by the SIS version available at compile-time, not runtime, because the `javac` compiler inlines string constants.

  The following table lists some URLs, their usual prefix, and the SIS versions when each URL changed.

  Namespaces and change log
  Prefix | Meaning | XML Namespace | Changes history
  --- | --- | --- | ---
  lan | Language localization | "http://standards.iso.org/iso/19115/-3/lan/1.0" |
  gco | Geographic COmmon | "http://standards.iso.org/iso/19115/-3/gco/1.0" | SIS 1.0
  mcc | Metadata Common Classes | "http://standards.iso.org/iso/19115/-3/mcc/1.0" |
  fcc | Feature Catalog Common | "http://standards.iso.org/iso/19110/fcc/1.0" |
  gfc | General Feature Catalog | "http://standards.iso.org/iso/19110/gfc/1.1" | SIS 1.0
  cat | CATalogue | "http://standards.iso.org/iso/19115/-3/cat/1.0" |
  mdb | Metadata Base | "http://standards.iso.org/iso/19115/-3/mdb/1.0" |
  cit | Citation and responsible party information | "http://standards.iso.org/iso/19115/-3/cit/1.0" |
  gex | Geospatial EXtent | "http://standards.iso.org/iso/19115/-3/gex/1.0" |
  rce | Referencing By Coordinates Common | "http://standards.iso.org/iso/19111/rce/1.0" |
  mrs | Metadata for Reference System | "http://standards.iso.org/iso/19115/-3/mrs/1.0" |
  msr | Metadata for Spatial Representation | "http://standards.iso.org/iso/19115/-3/msr/1.0" |
  mrc | Metadata for Resource Content | "http://standards.iso.org/iso/19115/-3/mrc/1.0" |
  mri | Metadata for Resource Identification | "http://standards.iso.org/iso/19115/-3/mri/1.0" |
  mrd | Metadata for Resource Distribution | "http://standards.iso.org/iso/19115/-3/mrd/1.0" |
  mdt | Metadata for Data Transfer | "http://standards.iso.org/iso/19115/-3/mdt/1.0" |
  mco | Metadata for Constraints | "http://standards.iso.org/iso/19115/-3/mco/1.0" |
  mac | Metadata for Acquisition | "http://standards.iso.org/iso/19115/-3/mac/1.0" |
  mrl | Metadata for Resource Lineage | "http://standards.iso.org/iso/19115/-3/mrl/1.0" |
  mmi | Metadata for Maintenance Information | "http://standards.iso.org/iso/19115/-3/mmi/1.0" |
  dqc | Data Quality Common Classes | "http://standards.iso.org/iso/19157/-2/dqc/1.0" |
  mdq | Metadata for Data Quality | "http://standards.iso.org/iso/19157/-2/mdq/1.0" |
  mds | Metadata for Data and Services | "http://standards.iso.org/iso/19115/-3/mds/1.0" |
  srv | Metadata for Services | "http://standards.iso.org/iso/19115/-3/srv/2.0" | SIS 1.0
  mpc | Metadata for Portrayal Catalog | "http://standards.iso.org/iso/19115/-3/mpc/1.0" |
  mda | MetaData Application | "http://standards.iso.org/iso/19115/-3/mda/1.0" |
  mas | Metadata for Application Schema | "http://standards.iso.org/iso/19115/-3/mas/1.0" |
  mex | Metadata with Schema Extensions | "http://standards.iso.org/iso/19115/-3/mex/1.0" |
  gcx | Geospatial Common eXtension | "http://standards.iso.org/iso/19115/-3/gcx/1.0" |
  gmw | Geographic Markup Wrappers | "http://standards.iso.org/iso/19115/-3/gmw/1.0" |
  gml | Geographic Markup Language | "http://www.opengis.net/gml/3.2" | SIS 0.4
  csw | Catalog Service for the Web | "http://www.opengis.net/cat/csw/3.0" |
  xsi | XML Schema Instance information | "http://www.w3.org/2001/XMLSchema-instance" |
  xlink | Link | "http://www.w3.org/1999/xlink" |

  Profiles
  Some countries or organizations define profiles of international standards, which may contain country-specific extensions. The namespace of such extensions are usually defined in a separated class dedicated to the profile. Some of them are listed below:
  - "http://www.cnig.gouv.fr/2005/fra"
  Since:
    0.3

  Defined in the `sis-metadata` module

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static String` | `CAT` | The `"http://standards​.iso​.org/iso/19115/-3/cat/1.0"` URL.
    `static String` | `CIT` | The `"http://standards​.iso​.org/iso/19115/-3/cit/1.0"` URL.
    `static String` | `CSW` | The `"http://www​.opengis​.net/cat/csw/3.0"` URL.
    `static String` | `DQC` | The `"http://standards​.iso​.org/iso/19157/-2/dqc/1.0"` URL.
    `static String` | `FCC` | The `"http://standards​.iso​.org/iso/19110/fcc/1.0"` URL.
    `static String` | `GCO` | The `"http://standards​.iso​.org/iso/19115/-3/gco/1.0"` URL.
    `static String` | `GCX` | The `"http://standards​.iso​.org/iso/19115/-3/gcx/1.0"` URL.
    `static String` | `GEX` | The `"http://standards​.iso​.org/iso/19115/-3/gex/1.0"` URL.
    `static String` | `GFC` | The `"http://standards​.iso​.org/iso/19110/gfc/1.1"` URL.
    `static String` | `GMD` | Deprecated. as of ISO 19115-3, splitted in many different namespaces.
    `static String` | `GMI` | Deprecated. as of ISO 19115-4, splitted in many different namespaces.
    `static String` | `GML` | The `"http://www​.opengis​.net/gml/3.2"` URL.
    `static String` | `GMW` | The `"http://standards​.iso​.org/iso/19115/-3/gmw/1.0"` URL.
    `static String` | `GMX` | Deprecated. as of ISO 19115-3, splitted in many different namespaces.
    `static String` | `GTS` | Deprecated. as of ISO 19115-3, splitted in many different namespaces.
    `static String` | `LAN` | The `"http://standards​.iso​.org/iso/19115/-3/lan/1.0"` URL.
    `static String` | `MAC` | The `"http://standards​.iso​.org/iso/19115/-3/mac/1.0"` URL.
    `static String` | `MAS` | The `"http://standards​.iso​.org/iso/19115/-3/mas/1.0"` URL.
    `static String` | `MCC` | The `"http://standards​.iso​.org/iso/19115/-3/mcc/1.0"` URL.
    `static String` | `MCO` | The `"http://standards​.iso​.org/iso/19115/-3/mco/1.0"` URL.
    `static String` | `MD1` | The `"http://standards​.iso​.org/iso/19115/-3/md1/1.0"` URL.
    `static String` | `MD2` | The `"http://standards​.iso​.org/iso/19115/-3/md2/1.0"` URL.
    `static String` | `MDA` | The `"http://standards​.iso​.org/iso/19115/-3/mda/1.0"` URL.
    `static String` | `MDB` | The `"http://standards​.iso​.org/iso/19115/-3/mdb/1.0"` URL.
    `static String` | `MDQ` | The `"http://standards​.iso​.org/iso/19157/-2/mdq/1.0"` URL.
    `static String` | `MDS` | The `"http://standards​.iso​.org/iso/19115/-3/mds/1.0"` URL.
    `static String` | `MDT` | The `"http://standards​.iso​.org/iso/19115/-3/mdt/1.0"` URL.
    `static String` | `MEX` | The `"http://standards​.iso​.org/iso/19115/-3/mex/1.0"` URL.
    `static String` | `MMI` | The `"http://standards​.iso​.org/iso/19115/-3/mmi/1.0"` URL.
    `static String` | `MPC` | The `"http://standards​.iso​.org/iso/19115/-3/mpc/1.0"` URL.
    `static String` | `MRC` | The `"http://standards​.iso​.org/iso/19115/-3/mrc/1.0"` URL.
    `static String` | `MRD` | The `"http://standards​.iso​.org/iso/19115/-3/mrd/1.0"` URL.
    `static String` | `MRI` | The `"http://standards​.iso​.org/iso/19115/-3/mri/1.0"` URL.
    `static String` | `MRL` | The `"http://standards​.iso​.org/iso/19115/-3/mrl/1.0"` URL.
    `static String` | `MRS` | The `"http://standards​.iso​.org/iso/19115/-3/mrs/1.0"` URL.
    `static String` | `MSR` | The `"http://standards​.iso​.org/iso/19115/-3/msr/1.0"` URL.
    `static String` | `RCE` | The `"http://standards​.iso​.org/iso/19111/rce/1.0"` URL.
    `static String` | `SRV` | The `"http://standards​.iso​.org/iso/19115/-3/srv/2.0"` URL.
    `static String` | `XLINK` | The `"http://www​.w3​.org/1999/xlink"` URL.
    `static String` | `XSI` | The `"http://www​.w3​.org/2001/XMLSchema-instance"` URL.

  - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `static String` | `getPreferredPrefix​(String namespace, String defaultValue)` | Returns the preferred prefix for the given namespace URI.
    `static String` | `guessForType​(String type)` | Guesses the namespace for a type of the given ISO name.

    - ### Methods inherited from class Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### LAN

          public static final String LAN

      The `"http://standards​.iso​.org/iso/19115/-3/lan/1.0"` URL. This is the namespace of Language localization (LAN) version 1.0. The usual prefix for this namespace is `"lan"`.
      Since:
        1.0
      See Also:
        Constant Field Values

    - #### GCO

          public static final String GCO

      The `"http://standards​.iso​.org/iso/19115/-3/gco/1.0"` URL. This is the namespace of Geographic COmmon (GCO) version 1.0. The usual prefix for this namespace is `"gco"`.

      History

      Change log
      SIS version | URL
      --- | ---
      0.3 to 0.8 | http://www.isotc211.org/2005/gco
      Since 1.0 | http://standards.iso.org/iso/19115/-3/gco/1.0

      See Also:
        Constant Field Values

    - #### MCC

          public static final String MCC

      The `"http://standards​.iso​.org/iso/19115/-3/mcc/1.0"` URL. This is the namespace of Metadata Common Classes (MCC) version 1.0. The usual prefix for this namespace is `"mcc"`.
      Since:
        1.0
      See Also:
        Constant Field Values

    - #### FCC

          public static final String FCC

      The `"http://standards​.iso​.org/iso/19110/fcc/1.0"` URL. This is the namespace of Feature Catalog Common (FCC) version 1.0. The usual prefix for this namespace is `"fcc"`.
      Since:
        1.0
      See Also:
        Constant Field Values

    - #### GFC

          public static final String GFC

      The `"http://standards​.iso​.org/iso/19110/gfc/1.1"` URL. This is the namespace of General Feature Catalog (GFC) version 1.1. The usual prefix for this namespace is `"gfc"`.

      History

      Change log
      SIS version | URL
      --- | ---
      0.3 to 0.8 | http://www.isotc211.org/2005/gfc
      Since 1.0 | http://standards.iso.org/iso/19110/gfc/1.1

      See Also:
        Constant Field Values

    - #### CAT

          public static final String CAT

      The `"http://standards​.iso​.org/iso/19115/-3/cat/1.0"` URL. This is the namespace of CATalogue (CAT) version 1.0. The usual prefix for this namespace is `"cat"`.
      Since:
        1.0
      See Also:
        Constant Field Values

    - #### MDB

          public static final String MDB

      The `"http://standards​.iso​.org/iso/19115/-3/mdb/1.0"` URL. This is the namespace of Metadata Base (MDB) version 1.0. The usual prefix for this namespace is `"mdb"`.
      Since:
        1.0
      See Also:
        Constant Field Values

    - #### CIT

          public static final String CIT

      The `"http://standards​.iso​.org/iso/19115/-3/cit/1.0"` URL. This is the namespace of Citation and responsible party information (CIT) version 1.0. The usual prefix for this namespace is `"cit"`.
      Since:
        1.0
      See Also:
        Constant Field Values

    - #### GEX

          public static final String GEX

      The `"http://standards​.iso​.org/iso/19115/-3/gex/1.0"` URL. This is the namespace of Geospatial EXtent (GEX) version 1.0. The usual prefix for this namespace is `"gex"`.
      Since:
        1.0
      See Also:
        Constant Field Values

    - #### MRS

          public static final String MRS

      The `"http://standards​.iso​.org/iso/19115/-3/mrs/1.0"` URL. This is the namespace of Metadata for Reference System (MRS) version 1.0. The usual prefix for this namespace is `"mrs"`.
      Since:
        1.0
      See Also:
        Constant Field Values

    - #### RCE

          public static final String RCE

      The `"http://standards​.iso​.org/iso/19111/rce/1.0"` URL. This is the namespace of Referencing By Coordinates Common (RCE) version 1.0. The usual prefix for this namespace is `"rce"`.
      Since:
        1.0
      See Also:
        Constant Field Values

    - #### MSR

          public static final String MSR

      The `"http://standards​.iso​.org/iso/19115/-3/msr/1.0"` URL. This is the namespace of Metadata for Spatial Representation (MSR) version 1.0. The usual prefix for this namespace is `"msr"`.
      Since:
        1.0
      See Also:
        Constant Field Values

    - #### MRC

          public static final String MRC

      The `"http://standards​.iso​.org/iso/19115/-3/mrc/1.0"` URL. This is the namespace of Metadata for Resource Content (MRC) version 1.0. The usual prefix for this namespace is `"mrc"`.
      Since:
        1.0
      See Also:
        Constant Field Values

    - #### MRI

          public static final String MRI

      The `"http://standards​.iso​.org/iso/19115/-3/mri/1.0"` URL. This is the namespace of Metadata for Resource Identification (MRI) version 1.0. The usual prefix for this namespace is `"mri"`.
      Since:
        1.0
      See Also:
        Constant Field Values

    - #### MRD

          public static final String MRD

      The `"http://standards​.iso​.org/iso/19115/-3/mrd/1.0"` URL. This is the namespace of Metadata for Resource Distribution (MRD) version 1.0. The usual prefix for this namespace is `"mrd"`.
      Since:
        1.0
      See Also:
        Constant Field Values

    - #### MDT

          public static final String MDT

      The `"http://standards​.iso​.org/iso/19115/-3/mdt/1.0"` URL. This is the namespace of Metadata for Data Transfer (MDT) version 1.0. The usual prefix for this namespace is `"mdt"`.
      Since:
        1.0
      See Also:
        Constant Field Values

    - #### MCO

          public static final String MCO

      The `"http://standards​.iso​.org/iso/19115/-3/mco/1.0"` URL. This is the namespace of Metadata for Constraints (MCO) version 1.0. The usual prefix for this namespace is `"mco"`.
      Since:
        1.0
      See Also:
        Constant Field Values

    - #### MAC

          public static final String MAC

      The `"http://standards​.iso​.org/iso/19115/-3/mac/1.0"` URL. This is the namespace of Metadata for Acquisition (MAC) version 1.0. The usual prefix for this namespace is `"mac"`.
      Since:
        1.0
      See Also:
        Constant Field Values

    - #### MRL

          public static final String MRL

      The `"http://standards​.iso​.org/iso/19115/-3/mrl/1.0"` URL. This is the namespace of Metadata for Resource Lineage (MRL) version 1.0. The usual prefix for this namespace is `"mrl"`.
      Since:
        1.0
      See Also:
        Constant Field Values

    - #### MMI

          public static final String MMI

      The `"http://standards​.iso​.org/iso/19115/-3/mmi/1.0"` URL. This is the namespace of Metadata for Maintenance Information (MMI) version 1.0. The usual prefix for this namespace is `"mmi"`.
      Since:
        1.0
      See Also:
        Constant Field Values

    - #### DQC

          public static final String DQC

      The `"http://standards​.iso​.org/iso/19157/-2/dqc/1.0"` URL. This is the namespace of Data Quality Common Classes (DQC) version 1.0. The usual prefix for this namespace is `"dqc"`.
      Since:
        1.0
      See Also:
        Constant Field Values

    - #### MDQ

          public static final String MDQ

      The `"http://standards​.iso​.org/iso/19157/-2/mdq/1.0"` URL. This is the namespace of Metadata for Data Quality (MDQ) version 1.0. The usual prefix for this namespace is `"mdq"`.
      Since:
        1.0
      See Also:
        Constant Field Values

    - #### MDS

          public static final String MDS

      The `"http://standards​.iso​.org/iso/19115/-3/mds/1.0"` URL. This is the namespace of Metadata for Data and Services (MDS) version 1.0. The usual prefix for this namespace is `"mds"`.
      Since:
        1.0
      See Also:
        Constant Field Values

    - #### SRV

          public static final String SRV

      The `"http://standards​.iso​.org/iso/19115/-3/srv/2.0"` URL. This is the namespace of Metadata for Services (SRV) version 2.0. The usual prefix for this namespace is `"srv"`.

      History

      Change log
      SIS version | URL
      --- | ---
      0.3 to 0.8 | http://www.isotc211.org/2005/srv
      Since 1.0 | http://standards.iso.org/iso/19115/-3/srv/2.0

      Since:
        1.0
      See Also:
        Constant Field Values

    - #### MPC

          public static final String MPC

      The `"http://standards​.iso​.org/iso/19115/-3/mpc/1.0"` URL. This is the namespace of Metadata for Portrayal Catalog (MPC) version 1.0. The usual prefix for this namespace is `"mpc"`.
      Since:
        1.0
      See Also:
        Constant Field Values

    - #### MDA

          public static final String MDA

      The `"http://standards​.iso​.org/iso/19115/-3/mda/1.0"` URL. This is the namespace of MetaData Application (MDA) version 1.0. The usual prefix for this namespace is `"mda"`.
      Since:
        1.0
      See Also:
        Constant Field Values

    - #### MAS

          public static final String MAS

      The `"http://standards​.iso​.org/iso/19115/-3/mas/1.0"` URL. This is the namespace of Metadata for Application Schema (MAS) version 1.0. The usual prefix for this namespace is `"mas"`.
      Since:
        1.0
      See Also:
        Constant Field Values

    - #### MEX

          public static final String MEX

      The `"http://standards​.iso​.org/iso/19115/-3/mex/1.0"` URL. This is the namespace of Metadata with Schema Extensions (MEX) version 1.0. The usual prefix for this namespace is `"mex"`.
      Since:
        1.0
      See Also:
        Constant Field Values

    - #### GCX

          public static final String GCX

      The `"http://standards​.iso​.org/iso/19115/-3/gcx/1.0"` URL. This is the namespace of Geospatial Common eXtension (GCX) version 1.0. The usual prefix for this namespace is `"gcx"`.
      Since:
        1.0
      See Also:
        Constant Field Values

    - #### MD1

          public static final String MD1

      The `"http://standards​.iso​.org/iso/19115/-3/md1/1.0"` URL. This is the namespace of Metadata for Data and Services with Geospatial Common Extensions (MD1) version 1.0. The usual prefix for this namespace is `"md1"`.
      Since:
        1.0
      See Also:
        Constant Field Values

    - #### MD2

          public static final String MD2

      The `"http://standards​.iso​.org/iso/19115/-3/md2/1.0"` URL. This is the namespace of Metadata for Data and Services with Geospatial Common Extensions (MD2) version 1.0. The usual prefix for this namespace is `"md2"`.
      Since:
        1.0
      See Also:
        Constant Field Values

    - #### GMW

          public static final String GMW

      The `"http://standards​.iso​.org/iso/19115/-3/gmw/1.0"` URL. This is the namespace of Geographic Markup Wrappers (GMW) version 1.0. The usual prefix for this namespace is `"gmw"`.
      Since:
        1.0
      See Also:
        Constant Field Values

    - #### GMD

          @Deprecated
          public static final String GMD

      Deprecated.
      as of ISO 19115-3, splitted in many different namespaces.
      The `"http://www​.isotc211​.org/2005/gmd"` URL. The usual prefix for this namespace is `"gmd"`.
      See Also:
        Constant Field Values

    - #### GMI

          @Deprecated
          public static final String GMI

      Deprecated.
      as of ISO 19115-4, splitted in many different namespaces.
      The `"http://standards​.iso​.org/iso/19115/-2/gmi/1.0"` URL. The usual prefix for this namespace is `"gmi"`.
      See Also:
        Constant Field Values

    - #### GMX

          @Deprecated
          public static final String GMX

      Deprecated.
      as of ISO 19115-3, splitted in many different namespaces.
      The `"http://www​.isotc211​.org/2005/gmx"` URL. The usual prefix for this namespace is `"gmx"`.
      See Also:
        Constant Field Values

    - #### GTS

          @Deprecated
          public static final String GTS

      Deprecated.
      as of ISO 19115-3, splitted in many different namespaces.
      The `"http://www​.isotc211​.org/2005/gts"` URL. The usual prefix for this namespace is `"gts"`.
      See Also:
        Constant Field Values

    - #### GML

          public static final String GML

      The `"http://www​.opengis​.net/gml/3.2"` URL. The usual prefix for this namespace is `"gml"`. The 3.2 version is equivalent to ISO 19136.

      History

      Change log
      SIS version | URL
      --- | ---
      0.3 | http://www.opengis.net/gml
      Since 0.4 | http://www.opengis.net/gml/3.2

      See Also:
        Constant Field Values

    - #### CSW

          public static final String CSW

      The `"http://www​.opengis​.net/cat/csw/3.0"` URL. The usual prefix for this namespace is `"csw"`.

      History

      Change log
      SIS version | URL
      --- | ---
      0.3 | http://www.opengis.net/cat/csw/2.0.2
      Since 1.0 | http://www.opengis.net/cat/csw/3.0

      See Also:
        Constant Field Values

    - #### XSI

          public static final String XSI

      The `"http://www​.w3​.org/2001/XMLSchema-instance"` URL. The usual prefix for this namespace is `"xsi"`. This is also defined by `XMLConstants​.W3C_XML_SCHEMA_INSTANCE_NS_URI`.
      See Also:
        `XMLConstants​.W3C_XML_SCHEMA_INSTANCE_NS_URI`, Constant Field Values

    - #### XLINK

          public static final String XLINK

      The `"http://www​.w3​.org/1999/xlink"` URL. The usual prefix for this namespace is `"xlink"`.
      See Also:
        Constant Field Values

  - ### Method Detail

    - #### getPreferredPrefix

          public static String getPreferredPrefix​(String namespace,
                                                  String defaultValue)

      Returns the preferred prefix for the given namespace URI.
      Parameters:
        `namespace` - the namespace URI for which the prefix needs to be found. Can not be `null`.
        `defaultValue` - the default prefix to return if the given `namespace` is not recognized, or `null`.
      Returns:
        the prefix inferred from the namespace URI, or `null` if the given namespace is unrecognized and the `defaultValue` is null.

    - #### guessForType

          public static String guessForType​(String type)

      Guesses the namespace for a type of the given ISO name. The argument given to this method must be a class name defined by ISO 19115 or other standards to be added in the future. Those ISO class names usually start with a two letter prefix, e.g. `"CI"` in `CI_Citation`.

      This method uses heuristic rules, first looking at the prefix, then the rest of the name in case of ambiguity. A namespace is returned on a best effort basis only; this method may or may not check the full name, and values returned by this method may change in future SIS versions (e.g. when new standards become supported by SIS or when existing standards are upgraded). This method should be used in last resort only, when this information can not be obtained easily in a more reliable way.

      Parameters:
        `type` - a class name defined by ISO 19115 or related standards (e.g. `"CI_Citation"`.
      Returns:
        a possible namespace for the given type, or `null` if unknown.
      Since:
        1.0