Class AbstractIdentification

  • All Implemented Interfaces:
    Serializable, Emptiable, Lenient­Comparable, Identified­Object, Identification
    Direct Known Subclasses:
    Default­Data­Identification, Default­Service­Identification

    public class AbstractIdentification
    extends ISOMetadata
    implements Identification
    Basic information required to uniquely identify a resource or resources. The following properties are mandatory or conditional (i.e. mandatory under some circumstances) in a well-formed metadata according ISO 19115:
    MD_Identification   ├─citation……………………………………… Citation data for the resource(s).   │   ├─title…………………………………… Name by which the cited resource is known.   │   └─date……………………………………… Reference date for the cited resource.   ├─abstract……………………………………… Brief narrative summary of the content of the resource(s).   ├─extent…………………………………………… Bounding polygon, vertical, and temporal extent of the dataset.   │   ├─description…………………… The spatial and temporal extent for the referring object.   │   ├─geographic­Element…… Geographic component of the extent of the referring object.   │   ├─temporal­Element………… Temporal component of the extent of the referring object.   │   └─vertical­Element………… Vertical component of the extent of the referring object.   └─topic­Category………………………… Main theme(s) of the dataset.

    Limitations:

    • Instances of this class are not synchronized for multi-threading. Synchronization, if needed, is caller's responsibility.
    • Serialized objects of this class are not guaranteed to be compatible with future Apache SIS releases. Serialization support is appropriate for short term storage or RMI between applications running the same version of Apache SIS. For long term storage, use XML instead.
    Since:
    0.3
    See Also:
    Serialized Form

    Defined in the sis-metadata module

    • Constructor Detail

      • AbstractIdentification

        public AbstractIdentification()
        Constructs an initially empty identification.
      • AbstractIdentification

        public AbstractIdentification​(Citation citation,
                                      CharSequence abstracts)
        Creates an identification initialized to the specified values.
        Parameters:
        citation - the citation data for the resource(s), or null if none.
        abstracts - a brief narrative summary of the content of the resource(s), or null if none.
      • AbstractIdentification

        public AbstractIdentification​(Identification object)
        Constructs a new instance initialized with the values from the specified metadata object. This is a shallow copy constructor, since the other metadata contained in the given object are not recursively copied.
        Parameters:
        object - the metadata to copy values from, or null if none.
        See Also:
        cast­Or­Copy(Identification)
    • Method Detail

      • castOrCopy

        public static AbstractIdentification castOrCopy​(Identification object)
        Returns a SIS metadata implementation with the values of the given arbitrary implementation. This method performs the first applicable action in the following choices:
        • If the given object is null, then this method returns null.
        • Otherwise if the given object is an instance of Data­Identification or Service­Identification, then this method delegates to the cast­Or­Copy(…) method of the corresponding SIS subclass. Note that if the given object implements more than one of the above-cited interfaces, then the cast­Or­Copy(…) method to be used is unspecified.
        • Otherwise if the given object is already an instance of Abstract­Identification, then it is returned unchanged.
        • Otherwise a new Abstract­Identification instance is created using the copy constructor and returned. Note that this is a shallow copy operation, since the other metadata contained in the given object are not recursively copied.
        Parameters:
        object - the object to get as a SIS implementation, or null if none.
        Returns:
        a SIS implementation containing the values of the given object (may be the given object itself), or null if the argument was null.
      • getCitation

        public Citation getCitation()
        Returns the citation for the resource(s).
        Specified by:
        get­Citation in interface Identification
        Returns:
        citation for the resource(s).
      • setCitation

        public void setCitation​(Citation newValue)
        Sets the citation for the resource(s).
        Parameters:
        new­Value - the new citation.
      • setAbstract

        public void setAbstract​(InternationalString newValue)
        Sets a brief narrative summary of the resource(s).
        Parameters:
        new­Value - the new summary of resource(s).
      • getPurpose

        public InternationalString getPurpose()
        Returns a summary of the intentions with which the resource(s) was developed.
        Specified by:
        get­Purpose in interface Identification
        Returns:
        the intentions with which the resource(s) was developed, or null.
      • setPurpose

        public void setPurpose​(InternationalString newValue)
        Sets a summary of the intentions with which the resource(s) was developed.
        Parameters:
        new­Value - the new summary of intention.
      • getCredits

        public Collection<String> getCredits()
        Returns the recognition of those who contributed to the resource(s).
        Upcoming API change — generalization
        The element type may be changed to the International­String interface in GeoAPI 4.0.
        Specified by:
        get­Credits in interface Identification
        Returns:
        recognition of those who contributed to the resource(s).
      • setCredits

        public void setCredits​(Collection<? extends String> newValues)
        Sets the recognition of those who contributed to the resource(s).
        Upcoming API change — generalization
        The element type may be changed to the International­String interface in GeoAPI 4.0.
        Parameters:
        new­Values - the new credits.
      • setStatus

        public void setStatus​(Collection<? extends Progress> newValues)
        Sets the status of the resource(s).
        Parameters:
        new­Values - the new status.
      • getPointOfContacts

        public Collection<ResponsibleParty> getPointOfContacts()
        Returns the identification of, and means of communication with, person(s) and organizations(s) associated with the resource(s).
        Upcoming API change — generalization
        As of ISO 19115:2014, Responsible­Party is replaced by the Responsibility parent interface. This change may be applied in GeoAPI 4.0.
        Specified by:
        get­Point­Of­Contacts in interface Identification
        Returns:
        means of communication with person(s) and organizations(s) associated with the resource(s).
        See Also:
        Default­Metadata​.get­Contacts()
      • setPointOfContacts

        public void setPointOfContacts​(Collection<? extends ResponsibleParty> newValues)
        Sets the means of communication with persons(s) and organizations(s) associated with the resource(s).
        Upcoming API change — generalization
        As of ISO 19115:2014, Responsible­Party is replaced by the Responsibility parent interface. This change may be applied in GeoAPI 4.0.
        Parameters:
        new­Values - the new points of contacts.
      • setSpatialRepresentationTypes

        public void setSpatialRepresentationTypes​(Collection<? extends SpatialRepresentationType> newValues)
        Sets the method used to spatially represent geographic information.
        Parameters:
        new­Values - the new spatial representation types.
        Since:
        0.5
      • getSpatialResolutions

        @UML(identifier="spatialResolution",
             obligation=OPTIONAL,
             specification=ISO_19115)
        public Collection<Resolution> getSpatialResolutions()
        Returns the factor which provides a general understanding of the density of spatial data in the resource(s). This element should be repeated when describing upper and lower range.
        Returns:
        factor which provides a general understanding of the density of spatial data.
        Since:
        0.5
      • setSpatialResolutions

        public void setSpatialResolutions​(Collection<? extends Resolution> newValues)
        Sets the factor which provides a general understanding of the density of spatial data in the resource(s).
        Parameters:
        new­Values - the new spatial resolutions.
        Since:
        0.5
      • setTopicCategories

        public void setTopicCategories​(Collection<? extends TopicCategory> newValues)
        Sets the main theme(s) of the resource.
        Parameters:
        new­Values - the new topic categories.
        Since:
        0.5
      • setExtents

        public void setExtents​(Collection<? extends Extent> newValues)
        Sets the spatial and temporal extent of the resource.
        Parameters:
        new­Values - the new extents
        Since:
        0.5
      • setAdditionalDocumentations

        public void setAdditionalDocumentations​(Collection<? extends Citation> newValues)
        Sets other documentation associated with the resource.
        Parameters:
        new­Values - the documentation to associate with the resource.
        Since:
        0.5
      • getProcessingLevel

        @UML(identifier="processingLevel",
             obligation=OPTIONAL,
             specification=ISO_19115)
        public Identifier getProcessingLevel()
        Returns code(s) that identifies the level of processing in the producers coding system of a resource.
        Returns:
        code(s) that identifies the level of processing in the producers coding system of a resource.
        Since:
        0.5
      • setProcessingLevel

        public void setProcessingLevel​(Identifier newValue)
        Sets code that identifies the level of processing in the producers coding system of a resource.
        Parameters:
        new­Value - New code that identifies the level of processing.
        Since:
        0.5
      • setResourceMaintenances

        public void setResourceMaintenances​(Collection<? extends MaintenanceInformation> newValues)
        Sets information about the frequency of resource updates, and the scope of those updates.
        Parameters:
        new­Values - the new resource maintenance info.
      • setGraphicOverviews

        public void setGraphicOverviews​(Collection<? extends BrowseGraphic> newValues)
        Sets a graphic that illustrates the resource(s).
        Parameters:
        new­Values - the new graphics overviews.
      • setDescriptiveKeywords

        public void setDescriptiveKeywords​(Collection<? extends Keywords> newValues)
        Sets category keywords, their type, and reference source.
        Parameters:
        new­Values - the new descriptive keywords.
      • getResourceSpecificUsages

        public Collection<Usage> getResourceSpecificUsages()
        Provides basic information about specific application(s) for which the resource(s) has/have been or is being used by different users.
        Specified by:
        get­Resource­Specific­Usages in interface Identification
        Returns:
        information about specific application(s) for which the resource(s) has/have been or is being used.
      • setResourceSpecificUsages

        public void setResourceSpecificUsages​(Collection<? extends Usage> newValues)
        Sets basic information about specific application(s).
        Parameters:
        new­Values - the new resource specific usages.
      • setResourceConstraints

        public void setResourceConstraints​(Collection<? extends Constraints> newValues)
        Sets information about constraints which apply to the resource(s).
        Parameters:
        new­Values - the new resource constraints.
      • setAssociatedResources

        public void setAssociatedResources​(Collection<? extends DefaultAssociatedResource> newValues)
        Sets associated resource information.
        Upcoming API change — generalization
        The element type will be changed to the Associated­Resource interface when GeoAPI will provide it (tentatively in GeoAPI 3.1).
        Parameters:
        new­Values - the new associated resources.
        Since:
        0.5