Object
AbstractMetadata
ModifiableMetadata
ISOMetadata
DefaultCitation
- All Implemented Interfaces:
Serializable
,Emptiable
,LenientComparable
,IdentifiedObject
,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 bygetIdentifiers()
, 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:
-
Nested Class Summary
Nested classes/interfaces inherited from class ModifiableMetadata
ModifiableMetadata.State
-
Field Summary
Fields inherited from class ISOMetadata
identifiers
-
Constructor Summary
ConstructorDescriptionConstructs an initially empty citation.DefaultCitation
(CharSequence title) Constructs a citation with the specified title.DefaultCitation
(Citation object) Constructs a new instance initialized with the values from the specified metadata object. -
Method Summary
Modifier and TypeMethodDescriptionstatic DefaultCitation
castOrCopy
(Citation object) Returns a SIS metadata implementation with the values of the given arbitrary implementation.Returns short name or other language name by which the cited information is known.Returns the role, name, contact and position information for an individual or organization that is responsible for the resource.Deprecated.Removed as of ISO 19115:2014.Returns the reference date for the cited resource.Returns the version of the cited resource.Returns the date of the edition.Returns citation graphics or logo for cited party.Returns the unique identifier for the resource.getISBN()
Returns the International Standard Book Number.getISSN()
Returns the International Standard Serial Number.Returns online references to the cited resource.Returns other information required to complete the citation that is not recorded elsewhere.Returns the mode in which the resource is represented.Returns the information about the series, or aggregate dataset, of which the dataset is a part.Returns the name by which the cited resource is known.void
setAlternateTitles
(Collection<? extends InternationalString> newValues) Sets the short name or other language name by which the cited information is known.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.void
setCollectiveTitle
(InternationalString newValue) Deprecated.Removed as of ISO 19115:2014.void
setDates
(Collection<? extends CitationDate> newValues) Sets the reference date for the cited resource.void
setEdition
(InternationalString newValue) Sets the version of the cited resource.void
setEditionDate
(Date newValue) Sets the date of the edition.void
setGraphics
(Collection<? extends BrowseGraphic> newValues) Sets citation graphics or logo for cited party.void
setIdentifiers
(Collection<? extends Identifier> newValues) Sets the unique identifier for the resource.void
Sets the International Standard Book Number.void
Sets the International Standard Serial Number.void
setOnlineResources
(Collection<? extends OnlineResource> newValues) Sets online references to the cited resource.void
setOtherCitationDetails
(InternationalString newValue) Sets other information required to complete the citation that is not recorded elsewhere.void
setPresentationForms
(Collection<? extends PresentationForm> newValues) Sets the mode in which the resource is represented.void
setSeries
(Series newValue) Sets the information about the series, or aggregate dataset, of which the dataset is a part.void
setTitle
(InternationalString newValue) Sets the name by which the cited resource is known.Methods inherited from class ISOMetadata
getIdentifier, getIdentifierMap, getStandard, setIdentifier, transitionTo
Methods inherited from class ModifiableMetadata
checkWritePermission, collectionType, copyCollection, copyList, copyMap, copySet, deepCopy, nonNullCollection, nonNullList, nonNullMap, nonNullSet, singleton, state, writeCollection, writeList, writeMap, writeSet
Methods inherited from class AbstractMetadata
asMap, asTreeTable, equals, equals, getInterface, hashCode, isEmpty, prune, toString
-
Constructor Details
-
DefaultCitation
public DefaultCitation()Constructs an initially empty citation. -
DefaultCitation
Constructs a citation with the specified title.- Parameters:
title
- the title as aString
or anInternationalString
object, ornull
if none.
-
DefaultCitation
Constructs a new instance initialized with the values from the specified metadata object. This is a shallow copy constructor, because the other metadata contained in the given object are not recursively copied.- Parameters:
object
- the metadata to copy values from, ornull
if none.- See Also:
-
-
Method Details
-
castOrCopy
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 returnsnull
. - Otherwise if the given object is already an instance of
DefaultCitation
, then it is returned unchanged. - Otherwise a new
DefaultCitation
instance is created using the copy constructor and returned. Note that this is a shallow copy operation, because the other metadata contained in the given object are not recursively copied.
- Parameters:
object
- the object to get as a SIS implementation, ornull
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.
- If the given object is
-
getTitle
Returns the name by which the cited resource is known. -
setTitle
Sets the name by which the cited resource is known.- Parameters:
newValue
- the new title, ornull
if none.
-
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:
getAlternateTitles
in interfaceCitation
- Returns:
- other names for the resource, or an empty collection if none.
-
setAlternateTitles
Sets the short name or other language name by which the cited information is known.- Parameters:
newValues
- the new alternate titles, ornull
if none.
-
getDates
Returns the reference date for the cited resource. -
setDates
Sets the reference date for the cited resource.- Parameters:
newValues
- the new dates, ornull
if none.
-
getEdition
Returns the version of the cited resource.- Specified by:
getEdition
in interfaceCitation
- Returns:
- the version, or
null
if none.
-
setEdition
Sets the version of the cited resource.- Parameters:
newValue
- the new edition, ornull
if none.
-
getEditionDate
Returns the date of the edition.- Specified by:
getEditionDate
in interfaceCitation
- Returns:
- the edition date, or
null
if none.
-
setEditionDate
Sets the date of the edition.- Parameters:
newValue
- the new edition date, ornull
if none.
-
getIdentifiers
Returns the unique identifier for the resource.Examples
- 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 marshalling 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:
getIdentifiers
in interfaceCitation
- Specified by:
getIdentifiers
in interfaceIdentifiedObject
- Overrides:
getIdentifiers
in classISOMetadata
- Returns:
- the identifiers, or an empty collection if none.
- See Also:
-
setIdentifiers
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:
newValues
- the new identifiers, ornull
if none.- See Also:
-
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,ResponsibleParty
is replaced by theResponsibility
parent interface. This change may be applied in GeoAPI 4.0.- Specified by:
getCitedResponsibleParties
in interfaceCitation
- Returns:
- the individual or organization that is responsible, or an empty collection if none.
-
setCitedResponsibleParties
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,ResponsibleParty
is replaced by theResponsibility
parent interface. This change may be applied in GeoAPI 4.0.- Parameters:
newValues
- the new cited responsible parties, ornull
if none.
-
getPresentationForms
Returns the mode in which the resource is represented.- Specified by:
getPresentationForms
in interfaceCitation
- Returns:
- the presentation modes, or an empty collection if none.
-
setPresentationForms
Sets the mode in which the resource is represented.- Parameters:
newValues
- the new presentation form, ornull
if none.
-
getSeries
Returns the information about the series, or aggregate dataset, of which the dataset is a part.- Specified by:
getSeries
in interfaceCitation
- Returns:
- the series of which the dataset is a part, or
null
if none.
-
setSeries
Sets the information about the series, or aggregate dataset, of which the dataset is a part.- Parameters:
newValue
- the new series.
-
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:
getOtherCitationDetails
in interfaceCitation
- Returns:
- other details, or
null
if none.
-
setOtherCitationDetails
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:
newValue
- Other citations details, ornull
if none.
-
getCollectiveTitle
Deprecated.Removed as of ISO 19115:2014.Returns the common title with holdings note.- Specified by:
getCollectiveTitle
in interfaceCitation
- Returns:
- the common title, or
null
if none.
-
setCollectiveTitle
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:
newValue
- the new collective title, ornull
if none.
-
getISBN
Returns the International Standard Book Number. In this SIS implementation, invoking this method is equivalent to:return getIdentifierMap().getSpecialized(Citations.ISBN);
-
setISBN
Sets the International Standard Book Number. In this SIS implementation, invoking this method is equivalent to:getIdentifierMap().putSpecialized(Citations.ISBN, newValue);
- Parameters:
newValue
- the new ISBN, ornull
if none.- See Also:
-
getISSN
Returns the International Standard Serial Number. In this SIS implementation, invoking this method is equivalent to:return getIdentifierMap().getSpecialized(Citations.ISSN);
-
setISSN
Sets the International Standard Serial Number. In this SIS implementation, invoking this method is equivalent to:getIdentifierMap().putSpecialized(Citations.ISSN, newValue);
- Parameters:
newValue
- the new ISSN.- See Also:
-
getOnlineResources
@UML(identifier="onlineResource", obligation=OPTIONAL, specification=ISO_19115) public Collection<OnlineResource> getOnlineResources()Returns online references to the cited resource.- Returns:
- online references to the cited resource, or an empty collection if there is none.
- Since:
- 0.5
-
setOnlineResources
Sets online references to the cited resource.- Parameters:
newValues
- the new online references to the cited resource.- Since:
- 0.5
-
getGraphics
@UML(identifier="graphic", obligation=OPTIONAL, specification=ISO_19115) public Collection<BrowseGraphic> getGraphics()Returns citation graphics or logo for cited party.- Returns:
- graphics or logo for cited party, or an empty collection if there is none.
- Since:
- 0.5
-
setGraphics
Sets citation graphics or logo for cited party.- Parameters:
newValues
- the new citation graphics or logo for cited party.- Since:
- 0.5
-