public final class TemporalCoverage extends AbstractBaseComponent
Before DDMS 4.0.1, a temporalCoverage element contains a locally defined TimePeriod construct. This TimePeriod construct is a container for the name, start, and end values of a time period. It exists only inside of a ddms:temporalCoverage parent, so it is not implemented as a Java object. Starting in DDMS 4.0.1, the TimePeriod wrapper has been removed.
Starting in DDMS 4.1, the start and end dates may optionally be replaced by an approximableStart or approximableEnd date.
To avoid confusion between the name of the temporalCoverage element and the name of the specified time period, the latter is referred to as the "time period name".
If not "Not Applicable" or "Unknown", date formats must adhere to one of the DDMS-allowed date formats.
| Strictness |
|---|
|
DDMSence allows the following legal, but nonsensical constructs:
|
| Nested Elements |
|---|
|
ddms:name: An interval of time, which can be expressed as a named era (0-1 optional, default=Unknown). Zero or
1 of these elements may appear. ddms:start: The start date of a period of time (exactly 1 optional, default=Unknown). ddms:end: The end date of a period of time (exactly 1 optional, default=Unknown). ddms:approximableStart: The approximable start date (exactly 1 optional) ddms:approximableEnd: The approximable end date (exactly 1 optional) |
| Attributes |
|---|
SecurityAttributes: The classification and ownerProducer attributes are optional. (starting in DDMS 3.0)
|
| Modifier and Type | Class and Description |
|---|---|
static class |
TemporalCoverage.Builder
Builder for this DDMS component.
|
| Constructor and Description |
|---|
TemporalCoverage(nu.xom.Element element)
Constructor for creating a component from a XOM Element
|
TemporalCoverage(String timePeriodName,
ApproximableDate approximableStart,
ApproximableDate approximableEnd,
SecurityAttributes securityAttributes)
Constructor for creating a component from raw data, using two approximable dates.
|
TemporalCoverage(String timePeriodName,
ApproximableDate approximableStart,
String endString,
SecurityAttributes securityAttributes)
Constructor for creating a component from raw data, using an approximable start date
and an exact end date.
|
TemporalCoverage(String timePeriodName,
String startString,
ApproximableDate approximableEnd,
SecurityAttributes securityAttributes)
Constructor for creating a component from raw data, using an exact start date
and an approximable end date.
|
TemporalCoverage(String timePeriodName,
String startString,
String endString,
SecurityAttributes securityAttributes)
Constructor for creating a component from raw data, using two exact date values.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
equals(Object obj)
Test for logical equality.
|
ApproximableDate |
getApproximableEnd()
Accessor for the approximableStart date.
|
ApproximableDate |
getApproximableStart()
Accessor for the approximableStart date.
|
javax.xml.datatype.XMLGregorianCalendar |
getEnd()
Deprecated.
Because DDMS 4.1 added a new allowable date format (ddms:DateHourMinType),
XMLGregorianCalendar is no longer a sufficient representation. This accessor will return
null for dates in the new format. Use
getEndString() to
access the raw XML format of the date, "Not Applicable", or "Unknown" values instead. |
String |
getEndString()
Accessor for the end date as a string.
|
protected String |
getLocatorSuffix()
Can be overridden to change the locator string used in warnings and errors.
|
static String |
getName(DDMSVersion version)
Accessor for the element name of this component, based on the version of DDMS used
|
protected List<IDDMSComponent> |
getNestedComponents()
Accessor for a collection of nested components.
|
String |
getOutput(boolean isHTML,
String prefix,
String suffix)
Renders this component as HTML or Text, with an optional prefix to nest it.
|
SecurityAttributes |
getSecurityAttributes()
Accessor for the Security Attributes.
|
javax.xml.datatype.XMLGregorianCalendar |
getStart()
Deprecated.
Because DDMS 4.1 added a new allowable date format (ddms:DateHourMinType),
XMLGregorianCalendar is no longer a sufficient representation. This accessor will return
null for dates in the new format. Use
getStartString() to
access the raw XML format of the date, "Not Applicable", or "Unknown" values instead. |
String |
getStartString()
Accessor for the start date as a string.
|
String |
getTimePeriodName()
Accessor for the TimePeriod name element child text.
|
int |
hashCode()
Returns a hashcode for the component.
|
protected void |
validate()
Validates the component.
|
protected void |
validateWarnings()
Validates any conditions that might result in a warning.
|
addDdms40Warning, addWarning, addWarnings, buildIndex, buildOutput, buildOutput, buildPrefix, getAttributeValue, getAttributeValue, getChild, getChildTextAsDouble, getDDMSVersion, getName, getNamespace, getPrefix, getQualifiedName, getStringAsDouble, getValidationWarnings, getXOMElement, getXOMElementCopy, requireVersion, setXOMElement, toHTML, toString, toText, toXMLpublic TemporalCoverage(nu.xom.Element element)
throws InvalidDDMSException
element - the XOM element representing thisInvalidDDMSException - if any required information is missing or malformedpublic TemporalCoverage(String timePeriodName,
String startString,
String endString,
SecurityAttributes securityAttributes)
throws InvalidDDMSException
timePeriodName - the time period name (optional) (if empty, defaults to Unknown)startString - a string representation of the date (required) (if empty, defaults to Unknown)endString - a string representation of the end date (required) (if empty, defaults to Unknown)securityAttributes - any security attributes (optional)InvalidDDMSException - if any required information is missing or malformedpublic TemporalCoverage(String timePeriodName,
String startString,
ApproximableDate approximableEnd,
SecurityAttributes securityAttributes)
throws InvalidDDMSException
timePeriodName - the time period name (optional) (if empty, defaults to Unknown)startString - a string representation of the date (required) (if empty, defaults to Unknown)approximableEnd - the end date, as an approximable date (required)securityAttributes - any security attributes (optional)InvalidDDMSException - if any required information is missing or malformedpublic TemporalCoverage(String timePeriodName,
ApproximableDate approximableStart,
String endString,
SecurityAttributes securityAttributes)
throws InvalidDDMSException
timePeriodName - the time period name (optional) (if empty, defaults to Unknown)approximableStart - the start date, as an approximable date (required)endString - a string representation of the end date (required) (if empty, defaults to Unknown)securityAttributes - any security attributes (optional)InvalidDDMSException - if any required information is missing or malformedpublic TemporalCoverage(String timePeriodName,
ApproximableDate approximableStart,
ApproximableDate approximableEnd,
SecurityAttributes securityAttributes)
throws InvalidDDMSException
timePeriodName - the time period name (optional) (if empty, defaults to Unknown)approximableStart - the start date, as an approximable date (required)approximableEnd - the end date, as an approximable date (required)securityAttributes - any security attributes (optional)InvalidDDMSException - if any required information is missing or malformedprotected void validate()
throws InvalidDDMSException
| Rules |
|---|
|
|
validate in class AbstractBaseComponentInvalidDDMSException - if any required information is missing or malformedAbstractBaseComponent.validate()protected void validateWarnings()
| Rules |
|---|
|
|
validateWarnings in class AbstractBaseComponentprotected String getLocatorSuffix()
AbstractBaseComponentFor components such as Format, there are wrapper elements that are not implemented as Java objects. These elements should be included in the XPath string used to identify the source of the error.
For example, if a ddms:extent element has a warning and the ddms:format element reports it, the locator information should be "/ddms:format/ddms:Media/ddms:extent" and not the default of "/ddms:format/ddms:extent"
getLocatorSuffix in class AbstractBaseComponentAbstractBaseComponent.getLocatorSuffix()public String getOutput(boolean isHTML,
String prefix,
String suffix)
AbstractBaseComponentgetOutput in class AbstractBaseComponentisHTML - true for HTML, false for Text.prefix - an optional prefix to put on each name.suffix - an optional suffix to append to each name, such as an index.AbstractBaseComponent.getOutput(boolean, String, String)protected List<IDDMSComponent> getNestedComponents()
AbstractBaseComponentgetNestedComponents in class AbstractBaseComponentAbstractBaseComponent.getNestedComponents()public boolean equals(Object obj)
AbstractBaseComponentThe base case tests against the name value and namespaceURI, as well as any child components classified as "nested components" and any security attributes. Extending classes may require additional rules for equality. This case automatically includes any nested components or security attributes.
equals in class AbstractBaseComponentObject.equals(Object)public int hashCode()
AbstractBaseComponentThis automatically includes any nested components or security attributes.
hashCode in class AbstractBaseComponentObject.hashCode()public static String getName(DDMSVersion version)
version - the DDMSVersionpublic String getTimePeriodName()
public javax.xml.datatype.XMLGregorianCalendar getStart()
getStartString() to
access the raw XML format of the date, "Not Applicable", or "Unknown" values instead.public String getStartString()
getStart to work with this value as a calendar date.public javax.xml.datatype.XMLGregorianCalendar getEnd()
getEndString() to
access the raw XML format of the date, "Not Applicable", or "Unknown" values instead.public String getEndString()
getEnd to work with this value as a calendar date.public ApproximableDate getApproximableStart()
public ApproximableDate getApproximableEnd()
public SecurityAttributes getSecurityAttributes()
getSecurityAttributes in interface IDDMSComponentgetSecurityAttributes in class AbstractBaseComponentCopyright 2010 - 2013 by Brian Uri!
Generated on 12/15/2013 10:22 AM
http://ddmsence.urizone.net/