Interface Metadata


public interface Metadata

The Metadata interface defines a set of methods describing a the syntax and rules for creating and updating a data element inside an OsidForm . Metadata provides the means to retrieve restrictions placed upon data elements such as sizes and ranges and help guide user input.

Example:

getElementLabel() = "primary color" // input label
getInstructions() = "Supply a primary color, I really need one."
getSyntax() = DISPLAYTEXT
isArray() = false                 // single value allowed
isRequired() = true               // not optional
isReadOnly() = false              // element can be updated
isLinked() = false                // no side effects
isValueKnown() = true             // known that no value exists
hasSuppliedValue() = false        // no value exists
getMinimumElements() = 1          // must have at least one value
getMaximumElements() = 1          // no more than one value
isEnumerated() = true             // value must be one of an enumerated set
getDisplayTextLanguageTypes() = { EN/US }
getDisplayTextScriptTypes() = { LATN }
getDisplayTextFormatTypes() = { plain }
isMultilineDisplayText() = false  // value must be on a single line
getMinimumStringLength() = 3      // no fewer than three characters
getMaximumStringLength() = 6      // no more than 6 characters
getStringMatchTypes() = {}
getDisplayTextSet() = { "red", "yellow", "blue" }  // enumerated list
getDefaultDisplayTextValues() = {} // no defaulting available            
  

An application may display a one-line text input box sized up to 6 characters in English or it may display a drop-down menu with the enumerated values or it may use a radio box to select from the enumeration. Following a create transaction, the Metadata for update now has:

isValueKnown() = true                       // known that a value exists
hasSuppliedValue() = true                   // a value exists
getExistingDisplayTextValues() = { "red" }  // existing value            
  
  • Method Details

    • getElementId

      Id getElementId()
      Gets a unique Id for the data element.
      Returns:
      an Id
      Compliance:
      mandatory - This method must be implemented.
    • getElementLabel

      DisplayText getElementLabel()
      Gets a display label for the data element.
      Returns:
      a display label
      Compliance:
      mandatory - This method must be implemented.
    • getInstructions

      DisplayText getInstructions()
      Gets instructions for updating this element value. This is a human readable description of the data element or property that may include special instructions or caveats to the end-user above and beyond what this interface provides.
      Returns:
      instructions
      Compliance:
      mandatory - This method must be implemented.
    • getSyntax

      Syntax getSyntax()
      Gets the syntax of this data.
      Returns:
      an enumeration indicating the type of value
      Compliance:
      mandatory - This method must be implemented.
    • isArray

      boolean isArray()
      Tests if this data element is an array.
      Returns:
      true if this data is an array, false if a single element
      Compliance:
      mandatory - This method must be implemented.
    • isRequired

      boolean isRequired()
      Tests if this data element is required to be supplied when creating new objects and cannot be cleared when updating objects. Elements that implement a fallback to default values are not required in this sense.
      Returns:
      true if this element value is required, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • isReadOnly

      boolean isReadOnly()
      Tests if this data can be updated. This may indicate the result of a pre-authorization but is not a guarantee that an authorization failure will not occur when the create or update transaction is issued.
      Returns:
      true if this data is not updatable, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • isLinked

      boolean isLinked()
      Tests if this data element is linked to other data in the object. Updating linked data elements should refresh all metadata and revalidate object elements.
      Returns:
      true if this element is linked, false if updates have no side effect
      Compliance:
      mandatory - This method must be implemented.
    • isValueKnown

      boolean isValueKnown()
      Tests if an existing value is known for this data element. If it is known that a value does not exist, then this method returns true .
      Returns:
      true if the element value is known, false if the element value is not known
      Compliance:
      mandatory - This method must be implemented.
    • hasValue

      boolean hasValue()
      Tests if this data element has a value.
      Returns:
      true if this element has a value, false otherwise
      Throws:
      IllegalStateException - isValueKnown() is false
      Compliance:
      mandatory - This method must be implemented.
    • getUnits

      DisplayText getUnits()
      Gets the units of this data for display purposes ('lbs', 'gills', 'furlongs').
      Returns:
      the display units of this data or an empty string if not applicable
      Compliance:
      mandatory - This method must be implemented.
    • getMinimumElements

      long getMinimumElements()
      In the case where an array or list of elements is specified in an OsidForm , this specifies the minimum number of elements that must be included.
      Returns:
      the minimum elements or 1 if isArray() is false
      Compliance:
      mandatory - This method must be implemented.
    • getMaximumElements

      long getMaximumElements()
      In the case where an array or list of elements is specified in an OsidForm , this specifies the maximum number of elements that can be specified.
      Returns:
      the maximum elements or 1 if isArray() is false
      Compliance:
      mandatory - This method must be implemented.
    • getMinimumCardinal

      long getMinimumCardinal()
      Gets the minimum cardinal value.
      Returns:
      the minimum cardinal
      Throws:
      IllegalStateException - syntax is not a CARDINAL
      Compliance:
      mandatory - This method must be implemented.
    • getMaximumCardinal

      long getMaximumCardinal()
      Gets the maximum cardinal value.
      Returns:
      the maximum cardinal
      Throws:
      IllegalStateException - syntax is not a CARDINAL
      Compliance:
      mandatory - This method must be implemented.
    • getCardinalSet

      long[] getCardinalSet()
      Gets the set of acceptable cardinal values.
      Returns:
      a set of cardinals or an empty array if not restricted
      Throws:
      IllegalStateException - syntax is not a CARDINAL or isEnumerated() is false
      Compliance:
      mandatory - This method must be implemented.
    • getDefaultCardinalValues

      long[] getDefaultCardinalValues()
      Gets the default cardinal values. These are the values used if the element value is not provided or is cleared. If isArray() is false, then this method returns at most a single value.
      Returns:
      the default cardinal values
      Throws:
      IllegalStateException - syntax is not a CARDINAL
      Compliance:
      mandatory - This method must be implemented.
    • getExistingCardinalValues

      long[] getExistingCardinalValues()
      Gets the existing cardinal values. If hasSuppliedValue() is false , then these values are the default values. If isArray() is false and hasValidValue() is true , then this method returns at most a single value.
      Returns:
      the existing cardinal values
      Throws:
      IllegalStateException - syntax is not a CARDINAL or isValueKnown() is false
      Compliance:
      mandatory - This method must be implemented.
    • getCoordinateTypes

      Type[] getCoordinateTypes()
      Gets the set of acceptable coordinate types.
      Returns:
      the set of coordinate types
      Throws:
      IllegalStateException - syntax is not a COORDINATE or SPATIALUNIT
      Compliance:
      mandatory - This method must be implemented.
    • supportsCoordinateType

      boolean supportsCoordinateType(Type coordinateType)
      Tests if the given coordinate type is supported.
      Parameters:
      coordinateType - a coordinate Type
      Returns:
      true if the type is supported, false otherwise
      Throws:
      IllegalStateException - syntax is not a COORDINATE
      NullArgumentException - coordinateType is null
      Compliance:
      mandatory - This method must be implemented.
    • getAxesForCoordinateType

      long getAxesForCoordinateType(Type coordinateType)
      Gets the number of axes for a given supported coordinate type.
      Parameters:
      coordinateType - a coordinate Type
      Returns:
      the number of axes
      Throws:
      IllegalStateException - syntax is not a COORDINATE
      NullArgumentException - coordinateType is null
      UnsupportedException - supportsCoordinateType(coordinateType) is false
      Compliance:
      mandatory - This method must be implemented.
    • getMinimumCoordinateValues

      BigDecimal[] getMinimumCoordinateValues(Type coordinateType)
      Gets the minimum coordinate values given supported coordinate type.
      Parameters:
      coordinateType - a coordinate Type
      Returns:
      the minimum coordinate values
      Throws:
      IllegalStateException - syntax is not a COORDINATE
      NullArgumentException - coordinateType is null
      UnsupportedException - supportsCoordinateType(coordinateType) is false
      Compliance:
      mandatory - This method must be implemented.
    • getMaximumCoordinateValues

      BigDecimal[] getMaximumCoordinateValues(Type coordinateType)
      Gets the maximum coordinate values given supported coordinate type.
      Parameters:
      coordinateType - a coordinate Type
      Returns:
      the maximum coordinate values
      Throws:
      IllegalStateException - syntax is not a COORDINATE
      NullArgumentException - coordinateType is null
      UnsupportedException - supportsCoordinateType(coordinateType) is false
      Compliance:
      mandatory - This method must be implemented.
    • getCoordinateSet

      Coordinate[] getCoordinateSet()
      Gets the set of acceptable coordinate values.
      Returns:
      a set of coordinates or an empty array if not restricted
      Throws:
      IllegalStateException - syntax is not a COORDINATE or isEnumerated() is false
      UnsupportedException - supportsCoordinateType(coordinateType) is false
      Compliance:
      mandatory - This method must be implemented.
    • getDefaultCoordinateValues

      Coordinate[] getDefaultCoordinateValues()
      Gets the default coordinate values. These are the values used if the element value is not provided or is cleared. If isArray() is false, then this method returns at most a single value.
      Returns:
      the default coordinate values
      Throws:
      IllegalStateException - syntax is not a COORDINATE
      Compliance:
      mandatory - This method must be implemented.
    • getExistingCoordinateValues

      Coordinate[] getExistingCoordinateValues()
      Gets the existing coordinate values. If hasSuppliedValue() is false , then these values are the default values. If isArray() is false and hasValidValue() is true, then this method returns at most a single value.
      Returns:
      the existing coordinate values
      Throws:
      IllegalStateException - syntax is not a COORDINATE or isValueKnown() is false
      Compliance:
      mandatory - This method must be implemented.
    • getCurrencyTypes

      Type[] getCurrencyTypes()
      Gets the set of acceptable currency types.
      Returns:
      the set of currency types
      Throws:
      IllegalStateException - syntax is not a CURRENCY
      Compliance:
      mandatory - This method must be implemented.
    • supportsCurrencyType

      boolean supportsCurrencyType(Type currencyType)
      Tests if the given currency type is supported.
      Parameters:
      currencyType - a currency Type
      Returns:
      true if the type is supported, false otherwise
      Throws:
      IllegalStateException - syntax is not a CURRENCY
      NullArgumentException - currencyType is null
      Compliance:
      mandatory - This method must be implemented.
    • getMinimumCurrency

      Currency getMinimumCurrency()
      Gets the minimum currency value.
      Returns:
      the minimum currency
      Throws:
      IllegalStateException - syntax is not a CURRENCY
      UnsupportedException - supportsCurrencyType(currencyType) is false
      Compliance:
      mandatory - This method must be implemented.
    • getMaximumCurrency

      Currency getMaximumCurrency()
      Gets the maximum currency value.
      Returns:
      the maximum currency
      Throws:
      IllegalStateException - syntax is not a CURRENCY
      UnsupportedException - supportsCurrencyType(currencyType) is false
      Compliance:
      mandatory - This method must be implemented.
    • getCurrencySet

      Currency[] getCurrencySet()
      Gets the set of acceptable currency values.
      Returns:
      a set of currencies or an empty array if not restricted
      Throws:
      IllegalStateException - syntax is not a CURRENCY or isEnumerated() is false
      UnsupportedException - supportsCurrencyType(currencyType) is false
      Compliance:
      mandatory - This method must be implemented.
    • getDefaultCurrencyValues

      Currency[] getDefaultCurrencyValues()
      Gets the default currency values. These are the values used if the element value is not provided or is cleared. If isArray() is false, then this method returns at most a single value.
      Returns:
      the default currency values
      Throws:
      IllegalStateException - syntax is not a CURRENCY
      UnsupportedException - supportsCurrencyType(currencyType) is false
      Compliance:
      mandatory - This method must be implemented.
    • getExistingCurrencyValues

      Currency[] getExistingCurrencyValues()
      Gets the existing currency values. If hasSuppliedValue() is false , then these values are the default values. If isArray() is false and hasValidValue() is true , then this method returns at most a single value.
      Returns:
      the existing currency values
      Throws:
      IllegalStateException - syntax is not a CURRENCY or isValueKnown() is false
      Compliance:
      mandatory - This method must be implemented.
    • getDateTimeResolution

      DateTimeResolution getDateTimeResolution()
      Gets the smallest resolution of the date time value.
      Returns:
      the resolution
      Throws:
      IllegalStateException - syntax is not a DATETIME, DURATION , or TIME
      Compliance:
      mandatory - This method must be implemented.
    • getCalendarTypes

      Type[] getCalendarTypes()
      Gets the set of acceptable calendar types.
      Returns:
      the set of calendar types
      Throws:
      IllegalStateException - syntax is not a DATETIME or DURATION
      Compliance:
      mandatory - This method must be implemented.
    • supportsCalendarType

      boolean supportsCalendarType(Type calendarType)
      Tests if the given calendar type is supported.
      Parameters:
      calendarType - a calendar Type
      Returns:
      true if the type is supported, false otherwise
      Throws:
      IllegalStateException - syntax is not a DATETIME or DURATION
      NullArgumentException - calendarType is null
      Compliance:
      mandatory - This method must be implemented.
    • getTimeTypes

      Type[] getTimeTypes()
      Gets the set of acceptable time types.
      Returns:
      a set of time types or an empty array if not restricted
      Throws:
      IllegalStateException - syntax is not a DATETIME, DURATION , or TIME
      Compliance:
      mandatory - This method must be implemented.
    • supportsTimeType

      boolean supportsTimeType(Type timeType)
      Tests if the given time type is supported.
      Parameters:
      timeType - a time Type
      Returns:
      true if the type is supported, false otherwise
      Throws:
      IllegalStateException - syntax is not a DATETIME, DURATION , or TIME
      NullArgumentException - timeType is null
      Compliance:
      mandatory - This method must be implemented.
    • getMinimumDateTime

      DateTime getMinimumDateTime()
      Gets the minimum date time value.
      Returns:
      the minimum value
      Throws:
      IllegalStateException - syntax is not a DATETIME
      UnsupportedException - supportsCalendarTimeType(calendarType, timeType) is false
      Compliance:
      mandatory - This method must be implemented.
    • getMaximumDateTime

      DateTime getMaximumDateTime()
      Gets the maximum date time value.
      Returns:
      the maximum value
      Throws:
      IllegalStateException - syntax is not a DATETIME
      UnsupportedException - supportsCalendarTimeType(calendarType, timeType) is false
      Compliance:
      mandatory - This method must be implemented.
    • getDateTimeSet

      DateTime[] getDateTimeSet()
      Gets the set of acceptable date time values.
      Returns:
      a set of values or an empty array if not restricted
      Throws:
      IllegalStateException - syntax is not a DATETIME or isEnumerated() is false
      Compliance:
      mandatory - This method must be implemented.
    • getDefaultDateTimeValues

      DateTime[] getDefaultDateTimeValues()
      Gets the default date time values. These are the values used if the element value is not provided or is cleared. If isArray() is false, then this method returns at most a single value.
      Returns:
      the default date time values
      Throws:
      IllegalStateException - syntax is not a DATETIME
      Compliance:
      mandatory - This method must be implemented.
    • getExistingDateTimeValues

      DateTime[] getExistingDateTimeValues()
      Gets the existing date time values. If hasSuppliedValue() is false , then these values are the default values. If isArray() is false and hasValidValue() is true , then this method returns at most a single value.
      Returns:
      the existing date time values
      Throws:
      IllegalStateException - syntax is not a DATETIME or isValueKnown() is false
      Compliance:
      mandatory - This method must be implemented.
    • getDecimalScale

      long getDecimalScale()
      Gets the number of digits to the right of the decimal point.
      Returns:
      the scale
      Throws:
      IllegalStateException - syntax is not a DECIMAL
      Compliance:
      mandatory - This method must be implemented.
    • getMinimumDecimal

      BigDecimal getMinimumDecimal()
      Gets the minimum decimal value.
      Returns:
      the minimum decimal
      Throws:
      IllegalStateException - syntax is not a DECIMAL
      Compliance:
      mandatory - This method must be implemented.
    • getMaximumDecimal

      BigDecimal getMaximumDecimal()
      Gets the maximum decimal value.
      Returns:
      the maximum decimal
      Throws:
      IllegalStateException - syntax is not a DECIMAL
      Compliance:
      mandatory - This method must be implemented.
    • getDecimalSet

      BigDecimal[] getDecimalSet()
      Gets the set of acceptable decimal values.
      Returns:
      a set of decimals or an empty array if not restricted
      Throws:
      IllegalStateException - syntax is not a DECIMAL or isEnumerated() is false
      Compliance:
      mandatory - This method must be implemented.
    • getDefaultDecimalValues

      BigDecimal[] getDefaultDecimalValues()
      Gets the default decimal values. These are the values used if the element value is not provided or is cleared. If isArray() is false, then this method returns at most a single value.
      Returns:
      the default decimal values
      Throws:
      IllegalStateException - syntax is not a DECIMAL
      Compliance:
      mandatory - This method must be implemented.
    • getExistingDecimalValues

      BigDecimal[] getExistingDecimalValues()
      Gets the existing decimal values. If hasSuppliedValue() is false , then these values are the default values. If isArray() is false and hasValidValue() is true , then this method returns at most a single value.
      Returns:
      the existing decimal values
      Throws:
      IllegalStateException - syntax is not a DECIMAL or isValueKnown() is false
      Compliance:
      mandatory - This method must be implemented.
    • getDistanceResolution

      DistanceResolution getDistanceResolution()
      Gets the smallest resolution of the distance value.
      Returns:
      the resolution
      Throws:
      IllegalStateException - syntax is not a DISTANCE
      Compliance:
      mandatory - This method must be implemented.
    • getMinimumDistance

      Distance getMinimumDistance()
      Gets the minimum distance value.
      Returns:
      the minimum value
      Throws:
      IllegalStateException - syntax is not a DISTANCE
      Compliance:
      mandatory - This method must be implemented.
    • getMaximumDistance

      Distance getMaximumDistance()
      Gets the maximum distance value.
      Returns:
      the maximum value
      Throws:
      IllegalStateException - syntax is not a DISTANCE
      Compliance:
      mandatory - This method must be implemented.
    • getDistanceSet

      Distance[] getDistanceSet()
      Gets the set of acceptable distance values.
      Returns:
      a set of values or an empty array if not restricted
      Throws:
      IllegalStateException - syntax is not a DECIMAL or isEnumerated() is false
      Compliance:
      mandatory - This method must be implemented.
    • getDefaultDistanceValues

      Distance[] getDefaultDistanceValues()
      Gets the default distance values. These are the values used if the element value is not provided or is cleared. If isArray() is false, then this method returns at most a single value.
      Returns:
      the default distance values
      Throws:
      IllegalStateException - syntax is not a DISTANCE
      Compliance:
      mandatory - This method must be implemented.
    • getExistingDistanceValues

      Distance[] getExistingDistanceValues()
      Gets the existing distance values. If hasSuppliedValue() is false , then these values are the default values. If isArray() is false and hasValidValue() is true , then this method returns at most a single value.
      Returns:
      the existing distance values
      Throws:
      IllegalStateException - syntax is not a DISTANCE or isValueKnown() is false
      Compliance:
      mandatory - This method must be implemented.
    • getMinimumDuration

      Duration getMinimumDuration()
      Gets the minimum duration.
      Returns:
      the minimum duration
      Throws:
      IllegalStateException - syntax is not a DURATION
      Compliance:
      mandatory - This method must be implemented.
    • getMaximumDuration

      Duration getMaximumDuration()
      Gets the maximum duration.
      Returns:
      the maximum duration
      Throws:
      IllegalStateException - syntax is not a DURATION
      Compliance:
      mandatory - This method must be implemented.
    • getDurationSet

      Duration[] getDurationSet()
      Gets the set of acceptable duration values.
      Returns:
      a set of durations or an empty array if not restricted
      Throws:
      IllegalStateException - syntax is not a DURATION or isEnumerated() is false
      Compliance:
      mandatory - This method must be implemented.
    • getDefaultDurationValues

      Duration[] getDefaultDurationValues()
      Gets the default duration values. These are the values used if the element value is not provided or is cleared. If isArray() is false, then this method returns at most at most a single value.
      Returns:
      the default duration values
      Throws:
      IllegalStateException - syntax is not a DURATION
      Compliance:
      mandatory - This method must be implemented.
    • getExistingDurationValues

      Duration[] getExistingDurationValues()
      Gets the existing duration values. If hasSuppliedValue() is false , then these values are the default values. If isArray() is false and hasValidValue() is true , then this method returns at most a single value.
      Returns:
      the existing duration values
      Throws:
      IllegalStateException - syntax is not a DURATION or isValueKnown() is false
      Compliance:
      mandatory - This method must be implemented.
    • getHeadingTypes

      Type[] getHeadingTypes()
      Gets the set of acceptable heading types.
      Returns:
      a set of heading types or an empty array if not restricted
      Throws:
      IllegalStateException - syntax is not a HEADING
      Compliance:
      mandatory - This method must be implemented.
    • supportsHeadingType

      boolean supportsHeadingType(Type headingType)
      Tests if the given heading type is supported.
      Parameters:
      headingType - a heading Type
      Returns:
      true if the type is supported, false otherwise
      Throws:
      IllegalStateException - syntax is not a HEADING
      NullArgumentException - headingType is null
      Compliance:
      mandatory - This method must be implemented.
    • getAxesForHeadingType

      long getAxesForHeadingType(Type headingType)
      Gets the number of axes for a given supported heading type.
      Parameters:
      headingType - a heading Type
      Returns:
      the number of axes
      Throws:
      IllegalStateException - syntax is not a HEADING
      NullArgumentException - headingType is null
      UnsupportedException - supportsHeadingType(headingType) is false
      Compliance:
      mandatory - This method must be implemented.
    • getMinimumHeadingValues

      BigDecimal[] getMinimumHeadingValues(Type headingType)
      Gets the minimum heading values given supported heading type.
      Parameters:
      headingType - a heading Type
      Returns:
      the minimum heading values
      Throws:
      IllegalStateException - syntax is not a HEADING
      NullArgumentException - headingType is null
      UnsupportedException - supportsHeadingType(headingType) is false
      Compliance:
      mandatory - This method must be implemented.
    • getMaximumHeadingValues

      BigDecimal[] getMaximumHeadingValues(Type headingType)
      Gets the maximum heading values given supported heading type.
      Parameters:
      headingType - a heading Type
      Returns:
      the maximum heading values
      Throws:
      IllegalStateException - syntax is not a HEADING
      NullArgumentException - headingType is null
      UnsupportedException - supportsHeadingType(headingType) is false
      Compliance:
      mandatory - This method must be implemented.
    • getHeadingSet

      Heading[] getHeadingSet()
      Gets the set of acceptable heading values.
      Returns:
      the set of heading
      Throws:
      IllegalStateException - syntax is not a HEADING or isEnumerated() is false
      Compliance:
      mandatory - This method must be implemented.
    • getDefaultHeadingValues

      Heading[] getDefaultHeadingValues()
      Gets the default heading values. These are the values used if the element value is not provided or is cleared. If isArray() is false, then this method returns at most a single value.
      Returns:
      the default heading values
      Throws:
      IllegalStateException - syntax is not a HEADING
      Compliance:
      mandatory - This method must be implemented.
    • getExistingHeadingValues

      Heading[] getExistingHeadingValues()
      Gets the existing heading values. If hasSuppliedValue() is false , then these values are the default values. If isArray() is false and hasValidValue() is true , then this method returns at most a single value.
      Returns:
      the existing heading values
      Throws:
      IllegalStateException - syntax is not a HEADING or isValueKnown() is false
      Compliance:
      mandatory - This method must be implemented.
    • getIdSet

      Id[] getIdSet()
      Gets the set of acceptable Ids .
      Returns:
      a set of Ids or an empty array if not restricted
      Throws:
      IllegalStateException - syntax is not an ID or isEnumerated() is false
      Compliance:
      mandatory - This method must be implemented.
    • getDefaultIdValues

      Id[] getDefaultIdValues()
      Gets the default Id values. These are the values used if the element value is not provided or is cleared. If isArray() is false, then this method returns at most a single value.
      Returns:
      the default Id values
      Throws:
      IllegalStateException - syntax is not an ID
      Compliance:
      mandatory - This method must be implemented.
    • getExistingIdValues

      Id[] getExistingIdValues()
      Gets the existing Id values. If hasSuppliedValue() is false , then these values are the default values. If isArray() is false and hasValidValue() is true , then this method returns at most a single value.
      Returns:
      the existing Id values
      Throws:
      IllegalStateException - syntax is not an ID
      Compliance:
      mandatory - This method must be implemented.
    • getMinimumInteger

      long getMinimumInteger()
      Gets the minimum integer value.
      Returns:
      the minimum value
      Throws:
      IllegalStateException - syntax is not an INTEGER
      Compliance:
      mandatory - This method must be implemented.
    • getMaximumInteger

      long getMaximumInteger()
      Gets the maximum integer value.
      Returns:
      the maximum value
      Throws:
      IllegalStateException - syntax is not an INTEGER
      Compliance:
      mandatory - This method must be implemented.
    • getIntegerSet

      long[] getIntegerSet()
      Gets the set of acceptable integer values.
      Returns:
      a set of values or an empty array if not restricted
      Throws:
      IllegalStateException - syntax is not an INTEGER or isEnumerated() is false
      Compliance:
      mandatory - This method must be implemented.
    • getDefaultIntegerValues

      long[] getDefaultIntegerValues()
      Gets the default integer values. These are the values used if the element value is not provided or is cleared. If isArray() is false then this method returns at most a single value.
      Returns:
      the default integer values
      Throws:
      IllegalStateException - syntax is not an INTEGER
      Compliance:
      mandatory - This method must be implemented.
    • getExistingIntegerValues

      long[] getExistingIntegerValues()
      Gets the existing integer values. If hasSuppliedValue() is false , then these values are the default values. If isArray() is false and hasValidValue() is true , then this method returns at most a single value.
      Returns:
      the existing integer values
      Throws:
      IllegalStateException - syntax is not a INTEGER or isValueKnown() is false
      Compliance:
      mandatory - This method must be implemented.
    • getObjectTypes

      Type[] getObjectTypes()
      Gets the set of acceptable Types for an arbitrary object.
      Returns:
      a set of Types or an empty array if not restricted
      Throws:
      IllegalStateException - syntax is not an OBJECT
      Compliance:
      mandatory - This method must be implemented.
    • supportsObjectType

      boolean supportsObjectType(Type objectType)
      Tests if the given object type is supported.
      Parameters:
      objectType - an object Type
      Returns:
      true if the type is supported, false otherwise
      Throws:
      IllegalStateException - syntax is not an OBJECT
      NullArgumentException - objectType is null
      Compliance:
      mandatory - This method must be implemented.
    • getObjectSet

      Object[] getObjectSet()
      Gets the set of acceptable object values.
      Returns:
      a set of values or an empty array if not restricted
      Throws:
      IllegalStateException - syntax is not an OBJECT or isEnumerated() is false
      Compliance:
      mandatory - This method must be implemented.
    • getDefaultObjectValues

      Object[] getDefaultObjectValues()
      Gets the default object values. These are the values used if the element value is not provided or is cleared. If isArray() is false, then this method returns at most a single value.
      Returns:
      the default object values
      Throws:
      IllegalStateException - syntax is not an OBJECT
      Compliance:
      mandatory - This method must be implemented.
    • getExistingObjectValues

      Object[] getExistingObjectValues()
      Gets the existing object values. If hasSuppliedValue() is false , then these values are the default values. If isArray() is false and hasValidValue() is true , then this method returns at most a single value.
      Returns:
      the existing object values
      Throws:
      IllegalStateException - syntax is not an OBJECT or isValueKnown() is false
      Compliance:
      mandatory - This method must be implemented.
    • getSpatialUnitRecordTypes

      Type[] getSpatialUnitRecordTypes()
      Gets the set of acceptable spatial unit record types.
      Returns:
      the set of spatial unit types
      Throws:
      IllegalStateException - syntax is not SPATIALUNIT
      Compliance:
      mandatory - This method must be implemented.
    • supportsSpatialUnitRecordType

      boolean supportsSpatialUnitRecordType(Type spatialUnitRecordType)
      Tests if the given spatial unit record type is supported.
      Parameters:
      spatialUnitRecordType - a spatial unit record Type
      Returns:
      true if the type is supported, false otherwise
      Throws:
      IllegalStateException - syntax is not an SPATIALUNIT
      NullArgumentException - spatialUnitRecordType is null
      Compliance:
      mandatory - This method must be implemented.
    • getSpatialUnitSet

      SpatialUnit[] getSpatialUnitSet()
      Gets the set of acceptable spatial unit values.
      Returns:
      a set of spatial units or an empty array if not restricted
      Throws:
      IllegalStateException - syntax is not a SPATIALUNIT or isEnumerated() is false
      Compliance:
      mandatory - This method must be implemented.
    • getDefaultSpatialUnitValues

      SpatialUnit[] getDefaultSpatialUnitValues()
      Gets the default spatial unit values. These are the values used if the element value is not provided or is cleared. If isArray() is false, then this method returns at most a single value.
      Returns:
      the default spatial unit values
      Throws:
      IllegalStateException - syntax is not a SPATIALUNIT
      Compliance:
      mandatory - This method must be implemented.
    • getExistingSpatialUnitValues

      SpatialUnit[] getExistingSpatialUnitValues()
      Gets the existing spatial unit values. If hasSuppliedValue() is false , then these values are the default values. If isArray() is false and hasValidValue() is true , then this method returns at most a single value.
      Returns:
      the existing spatial unit values
      Throws:
      IllegalStateException - syntax is not a SPATIALUNIT or isValueKnown() is false
      Compliance:
      mandatory - This method must be implemented.
    • getMinimumSpeed

      Speed getMinimumSpeed()
      Gets the minimum speed value.
      Returns:
      the minimum speed
      Throws:
      IllegalStateException - syntax is not a SPEED
      Compliance:
      mandatory - This method must be implemented.
    • getMaximumSpeed

      Speed getMaximumSpeed()
      Gets the maximum speed value.
      Returns:
      the maximum speed
      Throws:
      IllegalStateException - syntax is not a SPEED
      Compliance:
      mandatory - This method must be implemented.
    • getSpeedSet

      Speed[] getSpeedSet()
      Gets the set of acceptable speed values.
      Returns:
      a set of speeds or an empty array if not restricted
      Throws:
      IllegalStateException - syntax is not a SPEED or isEnumerated() is false
      Compliance:
      mandatory - This method must be implemented.
    • getDefaultSpeedValues

      Speed[] getDefaultSpeedValues()
      Gets the default speed values. These are the values used if the element value is not provided or is cleared. If isArray() is false, then this method returns at most a single value.
      Returns:
      the default speed values
      Throws:
      IllegalStateException - syntax is not a SPEED
      Compliance:
      mandatory - This method must be implemented.
    • getExistingSpeedValues

      Speed[] getExistingSpeedValues()
      Gets the existing speed values. If hasSuppliedValue() is false , then these values are the default values. If isArray() is false and hasValidValue() is true , then this method returns at most a single value.
      Returns:
      the existing speed values
      Throws:
      IllegalStateException - syntax is not a SPEED or isValueKnown() is false
      Compliance:
      mandatory - This method must be implemented.
    • getMinimumStringLength

      long getMinimumStringLength()
      Gets the minimum string length.
      Returns:
      the minimum string length
      Throws:
      IllegalStateException - syntax is not a STRING or DISPLAYTEXT
      Compliance:
      mandatory - This method must be implemented.
    • getMaximumStringLength

      long getMaximumStringLength()
      Gets the maximum string length.
      Returns:
      the maximum string length
      Throws:
      IllegalStateException - syntax is not a STRING or DISPLAYTEXT
      Compliance:
      mandatory - This method must be implemented.
    • getStringMatchTypes

      Type[] getStringMatchTypes()
      Gets the set of valid string match types for use in validating a string. If the string match type indicates a regular expression then getStringExpression() returns a regular expression.
      Returns:
      the set of string match types
      Throws:
      IllegalStateException - syntax is not a STRING or DISPLAYTEXT
      Compliance:
      mandatory - This method must be implemented.
    • supportsStringMatchType

      boolean supportsStringMatchType(Type stringMatchType)
      Tests if the given string match type is supported.
      Parameters:
      stringMatchType - a string match type
      Returns:
      true if the given string match type Is supported, false otherwise
      Throws:
      IllegalStateException - syntax is not a STRING or DISPLAYTEXT
      NullArgumentException - stringMatchType is null
      Compliance:
      mandatory - This method must be implemented.
    • getStringExpression

      String getStringExpression(Type stringMatchType)
      Gets the regular expression of an acceptable string for the given string match type.
      Parameters:
      stringMatchType - a string match type
      Returns:
      the regular expression
      Throws:
      NullArgumentException - stringMatchType is null
      IllegalStateException - syntax is not a STRING or DISPLAYTEXT
      UnsupportedException - supportsStringMatchType(stringMatchType ) is false
      Compliance:
      mandatory - This method must be implemented.
    • getStringFormatTypes

      Type[] getStringFormatTypes()
      Gets the set of valid string formats.
      Returns:
      the set of valid text format types
      Throws:
      IllegalStateException - syntax is not a STRING
      Compliance:
      mandatory - This method must be implemented.
    • getStringSet

      String[] getStringSet()
      Gets the set of acceptable string values.
      Returns:
      a set of strings or an empty array if not restricted
      Throws:
      IllegalStateException - syntax is not a STRING or isEnumerated() is false
      Compliance:
      mandatory - This method must be implemented.
    • getDefaultStringValues

      String[] getDefaultStringValues()
      Gets the default string values. These are the values used if the element value is not provided or is cleared. If isArray() is false, then this method returns at most a single value.
      Returns:
      the default string values
      Throws:
      IllegalStateException - syntax is not a STRING
      Compliance:
      mandatory - This method must be implemented.
    • getExistingStringValues

      String[] getExistingStringValues()
      Gets the existing string values. If hasSuppliedValue() is false , then these values are the default values. If isArray() is false and hasValidValue() is true , then this method returns at most a single value.
      Returns:
      the existing string values
      Throws:
      IllegalStateException - syntax is not a STRING or isValueKnown() is false
      Compliance:
      mandatory - This method must be implemented.
    • getMinimumTime

      Time getMinimumTime()
      Gets the minimum time value.
      Returns:
      the minimum time
      Throws:
      IllegalStateException - syntax is not a TIME
      Compliance:
      mandatory - This method must be implemented.
    • getMaximumTime

      Time getMaximumTime()
      Gets the maximum time value.
      Returns:
      the maximum time
      Throws:
      IllegalStateException - syntax is not a TIME
      Compliance:
      mandatory - This method must be implemented.
    • getTimeSet

      Time[] getTimeSet()
      Gets the set of acceptable time values.
      Returns:
      a set of times or an empty array if not restricted
      Throws:
      IllegalStateException - syntax is not a TIME or isEnumerated() is false
      Compliance:
      mandatory - This method must be implemented.
    • getDefaultTimeValues

      Time[] getDefaultTimeValues()
      Gets the default time values. These are the values used if the element value is not provided or is cleared. If isArray() is false, then this method returns at most a single value.
      Returns:
      the default time values
      Throws:
      IllegalStateException - syntax is not a TIME
      Compliance:
      mandatory - This method must be implemented.
    • getExistingTimeValues

      Time[] getExistingTimeValues()
      Gets the existing time values. If hasSuppliedValue() are false , then these values are the default values. If isArray() is false and hasValidValue() is true , then this method returns at most a single value.
      Returns:
      the existing time values
      Throws:
      IllegalStateException - syntax is not a TIME
      Compliance:
      mandatory - This method must be implemented.
    • getTypeSet

      Type[] getTypeSet()
      Gets the set of acceptable Types .
      Returns:
      a set of Types or an empty array if not restricted
      Throws:
      IllegalStateException - syntax is not a TYPE or isEnumerated() is false
      Compliance:
      mandatory - This method must be implemented.
    • getDefaultTypeValues

      Type[] getDefaultTypeValues()
      Gets the default type values. These are the values used if the element value is not provided or is cleared. If isArray() is false, then this method returns at most a single value.
      Returns:
      the default type values
      Throws:
      IllegalStateException - syntax is not a TYPE
      Compliance:
      mandatory - This method must be implemented.
    • getExistingTypeValues

      Type[] getExistingTypeValues()
      Gets the existing type values. If hasSuppliedValue() is false , then these values are the default values. If isArray() is false and hasValidValue() is true , then this method returns at most a single value.
      Returns:
      the existing type values
      Throws:
      IllegalStateException - syntax is not a TYPE or isValueKnown() is false
      Compliance:
      mandatory - This method must be implemented.
    • getVersionTypes

      Type[] getVersionTypes()
      Gets the set of acceptable version types.
      Returns:
      the set of version types
      Throws:
      IllegalStateException - syntax is not a VERSION
      Compliance:
      mandatory - This method must be implemented.
    • supportsVersionType

      boolean supportsVersionType(Type versionType)
      Tests if the given version type is supported.
      Parameters:
      versionType - a version Type
      Returns:
      true if the type is supported, false otherwise
      Throws:
      IllegalStateException - syntax is not a VERSION
      NullArgumentException - versionType is null
      Compliance:
      mandatory - This method must be implemented.
    • getMinimumVersion

      Version getMinimumVersion()
      Gets the minumim acceptable Version .
      Returns:
      the minumim Version
      Throws:
      IllegalStateException - syntax is not a VERSION
      Compliance:
      mandatory - This method must be implemented.
    • getMaximumVersion

      Version getMaximumVersion()
      Gets the maximum acceptable Version .
      Returns:
      the maximum Version
      Throws:
      IllegalStateException - syntax is not a VERSION
      Compliance:
      mandatory - This method must be implemented.
    • getVersionSet

      Version[] getVersionSet()
      Gets the set of acceptable Versions .
      Returns:
      a set of Versions or an empty array if not restricted
      Throws:
      IllegalStateException - syntax is not a VERSION or isEnumerated() is false
      Compliance:
      mandatory - This method must be implemented.
    • getDefaultVersionValues

      Version[] getDefaultVersionValues()
      Gets the default version values. These are the values used if the element value is not provided or is cleared. If isArray() is false, then this method returns at most a single value.
      Returns:
      the default version values
      Throws:
      IllegalStateException - syntax is not a TIME or isValueKnown() is false
      Compliance:
      mandatory - This method must be implemented.
    • getExistingVersionValues

      Version[] getExistingVersionValues()
      Gets the existing version values. If hasSuppliedValue() is false , then these values are the default values. If isArray() is false and hasValidValue() is true , then this method returns at most a single value.
      Returns:
      the existing version values
      Throws:
      IllegalStateException - syntax is not a VERSION or isValueKnown() is false
      Compliance:
      mandatory - This method must be implemented.