Class DefaultCitation

  • All Implemented Interfaces:
    Serializable, Emptiable, Lenient­Comparable, Identified­Object, Citation

    @TitleProperty(name="title")
    public class DefaultCitation
    extends ISOMetadata
    implements Citation
    Standardized resource reference. The following properties are mandatory in a well-formed metadata according ISO 19115:
    CI_Citation   ├─title……………………… Name by which the cited resource is known.   └─date………………………… Reference date for the cited resource.
    Unified identifiers view
    The ISO 19115 model provides specific attributes for the ISBN and ISSN codes. However the SIS library handles those codes like any other identifiers. Consequently the ISBN and ISSN codes are included in the collection returned by get­Identifiers(), except at XML marshalling time (for ISO 19115-3 compliance).
    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

      • DefaultCitation

        public DefaultCitation()
        Constructs an initially empty citation.
      • DefaultCitation

        public DefaultCitation​(CharSequence title)
        Constructs a citation with the specified title.
        Parameters:
        title - the title as a String or an International­String object, or null if none.
      • DefaultCitation

        public DefaultCitation​(Citation 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(Citation)
    • Method Detail

      • castOrCopy

        public static DefaultCitation castOrCopy​(Citation 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 already an instance of Default­Citation, then it is returned unchanged.
        • Otherwise a new Default­Citation 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.
      • getTitle

        public InternationalString getTitle()
        Returns the name by which the cited resource is known.
        Specified by:
        get­Title in interface Citation
        Returns:
        the cited resource name, or null.
      • setTitle

        public void setTitle​(InternationalString newValue)
        Sets the name by which the cited resource is known.
        Parameters:
        new­Value - the new title, or null if none.
      • getAlternateTitles

        public Collection<InternationalString> getAlternateTitles()
        Returns short name or other language name by which the cited information is known.
        Example: "DCW" as an alternative title for "Digital Chart of the World".
        Specified by:
        get­Alternate­Titles in interface Citation
        Returns:
        other names for the resource, or an empty collection if none.
      • setAlternateTitles

        public void setAlternateTitles​(Collection<? extends InternationalString> newValues)
        Sets the short name or other language name by which the cited information is known.
        Parameters:
        new­Values - the new alternate titles, or null if none.
      • setDates

        public void setDates​(Collection<? extends CitationDate> newValues)
        Sets the reference date for the cited resource.
        Parameters:
        new­Values - the new dates, or null if none.
      • setEdition

        public void setEdition​(InternationalString newValue)
        Sets the version of the cited resource.
        Parameters:
        new­Value - the new edition, or null if none.
      • getEditionDate

        public Date getEditionDate()
        Returns the date of the edition.
        Specified by:
        get­Edition­Date in interface Citation
        Returns:
        the edition date, or null if none.
      • setEditionDate

        public void setEditionDate​(Date newValue)
        Sets the date of the edition.
        Parameters:
        new­Value - the new edition date, or null if none.
      • getIdentifiers

        public Collection<Identifier> getIdentifiers()
        Returns the unique identifier for the resource.
        Example: Universal Product Code (UPC), National Stock Number (NSN).
        Unified identifiers view
        In this SIS implementation, the collection returned by this method includes the XML identifiers (ID, UUID, etc.), as well as the ISBN and ISSN codes, thus providing a unified view of every kind of identifiers associated to this citation.
        XML note: The <cit:identifier> element marshalled to XML will exclude all the above cited identifiers, for ISO 19115-3 compliance. Those identifiers will appear in other XML elements or attributes.
        Specified by:
        get­Identifiers in interface Citation
        Specified by:
        get­Identifiers in interface Identified­Object
        Overrides:
        get­Identifiers in class ISOMetadata
        Returns:
        the identifiers, or an empty collection if none.
        See Also:
        get­ISBN(), get­ISSN(), ISOMetadata​.get­Identifier­Map()
      • setIdentifiers

        public void setIdentifiers​(Collection<? extends Identifier> newValues)
        Sets the unique identifier for the resource. Example: Universal Product Code (UPC), National Stock Number (NSN).

        XML identifiers (ID, UUID, etc.), ISBN and ISSN codes are not affected by this method, unless they are explicitly provided in the given collection.

        Parameters:
        new­Values - the new identifiers, or null if none.
        See Also:
        set­ISBN(String), set­ISSN(String)
      • getCitedResponsibleParties

        public Collection<ResponsibleParty> getCitedResponsibleParties()
        Returns the role, name, contact and position information for an individual or organization that is responsible for the resource.
        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­Cited­Responsible­Parties in interface Citation
        Returns:
        the individual or organization that is responsible, or an empty collection if none.
      • setCitedResponsibleParties

        public void setCitedResponsibleParties​(Collection<? extends ResponsibleParty> newValues)
        Sets the role, name, contact and position information for an individual or organization that is responsible for the resource.
        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 cited responsible parties, or null if none.
      • setPresentationForms

        public void setPresentationForms​(Collection<? extends PresentationForm> newValues)
        Sets the mode in which the resource is represented.
        Parameters:
        new­Values - the new presentation form, or null if none.
      • getSeries

        public Series getSeries()
        Returns the information about the series, or aggregate dataset, of which the dataset is a part.
        Specified by:
        get­Series in interface Citation
        Returns:
        the series of which the dataset is a part, or null if none.
      • setSeries

        public void setSeries​(Series newValue)
        Sets the information about the series, or aggregate dataset, of which the dataset is a part.
        Parameters:
        new­Value - the new series.
      • getOtherCitationDetails

        public InternationalString getOtherCitationDetails()
        Returns other information required to complete the citation that is not recorded elsewhere.
        Upcoming API change — multiplicity
        As of ISO 19115:2014, this singleton has been replaced by a collection. This change may be applied in GeoAPI 4.0.
        Specified by:
        get­Other­Citation­Details in interface Citation
        Returns:
        other details, or null if none.
      • setOtherCitationDetails

        public void setOtherCitationDetails​(InternationalString newValue)
        Sets other information required to complete the citation that is not recorded elsewhere.
        Upcoming API change — multiplicity
        As of ISO 19115:2014, this singleton has been replaced by a collection. This change may be applied in GeoAPI 4.0.
        Parameters:
        new­Value - Other citations details, or null if none.
      • setCollectiveTitle

        @Deprecated
        public void setCollectiveTitle​(InternationalString newValue)
        Deprecated.
        Removed as of ISO 19115:2014.
        Sets the common title with holdings note. This title identifies elements of a series collectively, combined with information about what volumes are available at the source cited.
        Parameters:
        new­Value - the new collective title, or null if none.
      • getISBN

        public String getISBN()
        Returns the International Standard Book Number. In this SIS implementation, invoking this method is equivalent to:
        return getIdentifierMap().getSpecialized(Citations.ISBN);
        Specified by:
        get­ISBN in interface Citation
        Returns:
        the ISBN, or null if none.
        See Also:
        get­Identifiers(), Citations​.ISBN
      • setISBN

        public void setISBN​(String newValue)
        Sets the International Standard Book Number. In this SIS implementation, invoking this method is equivalent to:
        getIdentifierMap().putSpecialized(Citations.ISBN, newValue);
        Parameters:
        new­Value - the new ISBN, or null if none.
        See Also:
        set­Identifiers(Collection), Citations​.ISBN
      • getISSN

        public String getISSN()
        Returns the International Standard Serial Number. In this SIS implementation, invoking this method is equivalent to:
        return getIdentifierMap().getSpecialized(Citations.ISSN);
        Specified by:
        get­ISSN in interface Citation
        Returns:
        the ISSN, or null if none.
        See Also:
        get­Identifiers(), Citations​.ISSN
      • setISSN

        public void setISSN​(String newValue)
        Sets the International Standard Serial Number. In this SIS implementation, invoking this method is equivalent to:
        getIdentifierMap().putSpecialized(Citations.ISSN, newValue);
        Parameters:
        new­Value - the new ISSN.
        See Also:
        set­Identifiers(Collection), Citations​.ISSN
      • setOnlineResources

        public void setOnlineResources​(Collection<? extends OnlineResource> newValues)
        Sets online references to the cited resource.
        Parameters:
        new­Values - the new online references to the cited resource.
        Since:
        0.5
      • setGraphics

        public void setGraphics​(Collection<? extends BrowseGraphic> newValues)
        Sets citation graphics or logo for cited party.
        Parameters:
        new­Values - the new citation graphics or logo for cited party.
        Since:
        0.5