Package org.apache.sis.storage.netcdf

## Class AttributeNames.Responsible

- Object
- - Responsible

- All Implemented Interfaces:
    `Serializable`
  Enclosing class:
    AttributeNames

      public static class AttributeNames.Responsible
      extends Object
      implements Serializable

  Holds the attribute names describing a responsible party. In the following table, the header lists the constants defined in the `AttributeNames` class and the other cells give the values assigned in this class fields for those constants.

  Names of netCDF attributes describing a responsible party
  Field in this class | `CREATOR` | `CONTRIBUTOR` | `PUBLISHER`
  --- | --- | --- | ---
  `NAME` | `"creator_name"` | `"contributor_name"` | `"publisher_name"`
  `TYPE` | `"creator_type"` |  | `"publisher_type"`
  `INSTITUTION` | `"creator_institution"` |  | `"publisher_institution"`
  `URL` | `"creator_url"` | `"contributor_url"` | `"publisher_url"`
  `EMAIL` | `"creator_email"` | `"contributor_email"` | `"publisher_email"`
  `ROLE` |  | `"contributor_role"` |
  `DEFAULT_ROLE` | `Role.ORIGINATOR` |  | `Role​.PUBLISHER`

  Note: The member names in this class are upper-cases because they should be considered as constants. For example `AttributeNames​.CREATOR​.EMAIL` maps exactly to the `"creator_email"` string and nothing else. A lower-case `email` member name could be misleading since it would suggest that the field contains the actual name value rather than the key by which the value is identified in a netCDF file.
  Since:
    0.3
  See Also:
    `AttributeNames​.Dimension`, Serialized Form

  Defined in the `sis-netcdf` module

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `Role` | `DEFAULT_ROLE` | The role to use as a fallback if no attribute value is associated to the `ROLE` key.
    `String` | `EMAIL` | The attribute name for the responsible's email address.
    `String` | `INSTITUTION` | The attribute name for the responsible's institution, or `null` if none.
    `String` | `NAME` | The attribute name for the responsible's name.
    `String` | `ROLE` | The attribute name for the responsible's role, or `null` if none.
    `String` | `TYPE` | The attribute name for the responsible's type.
    `String` | `URL` | The attribute name for the responsible's URL.

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `Responsible​(String name, String type, String institution, String url, String email, String role, Role defaultRole)` | Creates a new set of attribute names.

  - ### Method Summary

    - ### Methods inherited from class Object

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

- - ### Field Detail

    - #### NAME

          public final String NAME

      The attribute name for the responsible's name. Possible values for this field are `"creator_name"`, `"contributor_name"` or `"publisher_name"`.

      Path in ISO 19115:

      - `ResponsibleParty` / `individualName`

    - #### TYPE

          public final String TYPE

      The attribute name for the responsible's type. Possible values for this field are `"creator_type"` or `"publisher_type"`. Possible values in a netCDF file are `"person"`, `"group"`, `"institution"` or `"position"`.

    - #### INSTITUTION

          public final String INSTITUTION

      The attribute name for the responsible's institution, or `null` if none. Possible value is `"institution"`.

      Path in ISO 19115:

      - `ResponsibleParty` / `organisationName`

    - #### URL

          public final String URL

      The attribute name for the responsible's URL. Possible values are `"creator_url"`, `"contributor_url"` or `"publisher_url"`.

      Path in ISO 19115:

      - `ResponsibleParty` / `contactInfo` / `onlineResource` / `linkage`

    - #### EMAIL

          public final String EMAIL

      The attribute name for the responsible's email address. Possible values are `"creator_email"`, `"contributor_email"` or `"publisher_email"`.

      Path in ISO 19115:

      - `ResponsibleParty` / `contactInfo` / `address` / `electronicMailAddress`

    - #### ROLE

          public final String ROLE

      The attribute name for the responsible's role, or `null` if none. Possible value is `"contributor_role"`.

      Path in ISO 19115:

      - `ResponsibleParty` / `ResponsibleParty​.getRole()`
      See Also:
        `Role`

    - #### DEFAULT_ROLE

          public final Role DEFAULT_ROLE

      The role to use as a fallback if no attribute value is associated to the `ROLE` key.

  - ### Constructor Detail

    - #### Responsible

          public Responsible​(String name,
                             String type,
                             String institution,
                             String url,
                             String email,
                             String role,
                             Role defaultRole)

      Creates a new set of attribute names. Any argument can be `null` if not applicable.
      Parameters:
        `name` - the attribute name for the responsible's name.
        `type` - the attribute name for the responsible party type.
        `institution` - the attribute name for the responsible's institution.
        `url` - the attribute name for the responsible's URL.
        `email` - the attribute name for the responsible's email address.
        `role` - the attribute name for the responsible party role.
        `defaultRole` - the role to use as a fallback if no attribute value is associated to the `role` key.
      Since:
        0.8