org.jbind.xml.core.data
Interface ISimpleData

All Superinterfaces:
IAnyTypeData, ITextContentProvider
All Known Subinterfaces:
IAnyListTypeData, IAnySimpleTypeData, IAnyURIData, IBase64BinaryData, IBooleanData, IByteData, IComplexSCData, IDateData, IDateTimeData, IDecimalData, IDoubleData, IDurationData, IENTITIESData, IENTITYData, IFloatData, IGDayData, IGMonthData, IGMonthDayData, IGYearData, IGYearMonthData, IHexBinaryData, IIDData, IIDREFData, IIDREFSData, IIntData, IIntegerData, ILanguageData, ILongData, INameData, INCNameData, INegativeIntegerData, INMTOKENData, INMTOKENSData, INonNegativeIntegerData, INonPositiveIntegerData, INormalizedStringData, INOTATIONData, IPositiveIntegerData, IQNameData, IShortData, ISpaceData, IStringData, ITimeData, ITokenData, IUnsignedByteData, IUnsignedIntData, IUnsignedLongData, IUnsignedShortData
All Known Implementing Classes:
AbstractDecimalData, AbstractIntData, AbstractIntegerData, AbstractLongData, AbstractShortData, AbstractSimpleData, AbstractUnsignedIntData, AbstractUnsignedShortData, AnyListTypeData, AnySimpleTypeData, AnyURIData, Base64BinaryData, BooleanData, ByteData, DateData, DateTimeData, DoubleData, DurationData, ENTITIESData, ENTITYData, FloatData, GDayData, GMonthData, GMonthDayData, GYearData, GYearMonthData, HexBinaryData, IDData, IDREFData, IDREFSData, LanguageData, NameData, NCNameData, NegativeIntegerData, NMTOKENData, NMTOKENSData, NonNegativeIntegerData, NonPositiveIntegerData, NormalizedStringData, NOTATIONData, PositiveIntegerData, QNameData, SpaceData, StringData, TimeData, TokenData, UnsignedByteData, UnsignedLongData

public interface ISimpleData
extends IAnyTypeData, ITextContentProvider

Describes simple data. Simple data objects are the building blocks for complex data. A simple data object is characterized by the feature that it corresponds to a unique (simple) string representation. This string representation is called the "canonical form" of the data.

The values of simple data objects are store internally either by primitive types or by simple reference types (like strings). These types are called simple storage types. In addition there are so called simple storage objects. A simple storage object is always a "real" Java object, i.e. the primitive types are wrapped by their corresponding wrapper classes.


Method Summary
 java.lang.String getCanonicalForm_()
          Gets the canonical form.
 java.lang.String getLexicalValue_()
          Gets the lexical value.
 java.lang.String getNormalizedValue_()
          Gets the normalized value.
 java.lang.Object getSimpleStorageObject()
          Gets the simple storage object.
 void setLexicalValue_(java.lang.String aValue)
          Sets the lexical value.
 boolean simpleStorageValueEquals(IAnyTypeData aData)
          Checks if the simple storage value of this data object is equal to the simple storage object of the specified data objects.
 int simpleStorageValueHashCode()
          Calculates a hash code based on the simple storage value.
 
Methods inherited from interface org.jbind.xml.core.data.IAnyTypeData
accept_, acceptImpl_, addReferencedData_, createElement_, createElement_, equals, getAttribute_, getDataDesc_, getImpl_, getParent_, getSubstitutionHead_, getType_, hashCode, isDefault_, isNil_, iterAttributes_, iterElements_, setAttribute_, setDataDesc_, setImpl_, setSubstitutionHead_, setType_
 
Methods inherited from interface org.jbind.xml.core.base.ITextContentProvider
getTextContent_
 

Method Detail

getLexicalValue_

public java.lang.String getLexicalValue_()
Gets the lexical value. The lexical value is the original string before any processing took place.


getNormalizedValue_

public java.lang.String getNormalizedValue_()
Gets the normalized value. The normalized value results from transforming the lexical value according to the white space processing of the type of the data object.


getCanonicalForm_

public java.lang.String getCanonicalForm_()
Gets the canonical form. The canonical form of a data object is the result of converting the data into a string.

Returns:
A string (required).

setLexicalValue_

public void setLexicalValue_(java.lang.String aValue)
                      throws XmlException
Sets the lexical value.

Parameters:
aValue - (required).
Throws:
XmlException

getSimpleStorageObject

public java.lang.Object getSimpleStorageObject()
Gets the simple storage object. If the value of the simple data object is stored with a reference type then the simple storage object is the same as the value object. Otherwise the value is stored with a primitive type. In this case the simple storage object wraps the primitive value.

Returns:
(required).

simpleStorageValueEquals

public boolean simpleStorageValueEquals(IAnyTypeData aData)
Checks if the simple storage value of this data object is equal to the simple storage object of the specified data objects.

Returns:
Returns true iff the simple storage values are equal.

simpleStorageValueHashCode

public int simpleStorageValueHashCode()
Calculates a hash code based on the simple storage value.

Returns:
A hash code.