Package org.apache.derby.iapi.types
Interface XMLDataValue
-
- All Superinterfaces:
DataValueDescriptor
,java.io.Externalizable
,Formatable
,Orderable
,java.io.Serializable
,Storable
,TypedFormat
- All Known Implementing Classes:
XML
public interface XMLDataValue extends DataValueDescriptor
-
-
Field Summary
-
Fields inherited from interface org.apache.derby.iapi.types.DataValueDescriptor
UNKNOWN_LOGICAL_LENGTH
-
Fields inherited from interface org.apache.derby.iapi.types.Orderable
ORDER_OP_EQUALS, ORDER_OP_GREATEROREQUALS, ORDER_OP_GREATERTHAN, ORDER_OP_LESSOREQUALS, ORDER_OP_LESSTHAN
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description int
getXType()
Retrieve this XML value's qualified type.boolean
hasTopLevelAttr()
Return whether or not this XML value represents a sequence that has one or more top-level attribute nodes.void
markAsHavingTopLevelAttr()
Take note of the fact this XML value represents an XML sequence that has one or more top-level attribute nodes.void
setXType(int xtype)
Set this XML value's qualified type.BooleanDataValue
XMLExists(SqlXmlUtil sqlxUtil)
The SQL/XML XMLExists operator.XMLDataValue
XMLParse(StringDataValue stringValue, boolean preserveWS, SqlXmlUtil sqlxUtil)
Method to parse an XML string and, if it's valid, store the _serialized_ version locally and then return this XMLDataValue.XMLDataValue
XMLQuery(SqlXmlUtil sqlxUtil, XMLDataValue result)
Evaluate the XML query expression contained within the received util object against this XML value and store the results into the received XMLDataValue "result" param (assuming "result" is non-null; else create a new XMLDataValue).StringDataValue
XMLSerialize(StringDataValue result, int targetType, int targetWidth, int targetCollationType)
The SQL/XML XMLSerialize operator.-
Methods inherited from interface org.apache.derby.iapi.types.DataValueDescriptor
checkHostVariable, cloneHolder, cloneValue, coalesce, compare, compare, compare, compare, equals, estimateMemoryUsage, getBoolean, getByte, getBytes, getDate, getDouble, getFloat, getInt, getLength, getLong, getNewNull, getObject, getShort, getStream, getString, getTime, getTimestamp, getTraceString, getTypeName, greaterOrEquals, greaterThan, hasStream, in, isNotNull, isNullOp, lessOrEquals, lessThan, normalize, notEquals, readExternalFromArray, recycle, setBigDecimal, setInto, setInto, setObjectForCast, setToNull, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValueFromResultSet, typePrecedence, typeToBigDecimal
-
Methods inherited from interface org.apache.derby.iapi.services.io.Storable
isNull, restoreToNull
-
Methods inherited from interface org.apache.derby.iapi.services.io.TypedFormat
getTypeFormatId
-
-
-
-
Method Detail
-
XMLParse
XMLDataValue XMLParse(StringDataValue stringValue, boolean preserveWS, SqlXmlUtil sqlxUtil) throws StandardException
Method to parse an XML string and, if it's valid, store the _serialized_ version locally and then return this XMLDataValue.- Parameters:
stringValue
- The string value to check.preserveWS
- Whether or not to preserve ignorable whitespace.sqlxUtil
- Contains SQL/XML objects and util methods that facilitate execution of XML-related operations- Returns:
- If 'text' constitutes a valid XML document, it has been stored in this XML value and this XML value returned; otherwise, an exception is thrown.
- Throws:
StandardException
- Thrown on error.
-
XMLSerialize
StringDataValue XMLSerialize(StringDataValue result, int targetType, int targetWidth, int targetCollationType) throws StandardException
The SQL/XML XMLSerialize operator. Serializes this XML value into a string with a user-specified character type, and returns that string via the received StringDataValue (if the received StringDataValue is non-null and of the correct type; else, a new StringDataValue is returned).- Parameters:
result
- The result of a previous call to this method, null if not called yet.targetType
- The string type to which we want to serialize.targetWidth
- The width of the target type.targetCollationType
- The collation type of the target type.- Returns:
- A serialized (to string) version of this XML object, in the form of a StringDataValue object.
- Throws:
StandardException
- Thrown on error
-
XMLExists
BooleanDataValue XMLExists(SqlXmlUtil sqlxUtil) throws StandardException
The SQL/XML XMLExists operator. Checks to see if evaluation of the query expression contained within the received util object against this XML value returns at least one item. NOTE: For now, the query expression must be XPath only (XQuery not supported) because that's what Xalan supports.- Parameters:
sqlxUtil
- Contains SQL/XML objects and util methods that facilitate execution of XML-related operations- Returns:
- True if evaluation of the query expression stored in sqlxUtil returns at least one node for this XML value; unknown if the xml value is NULL; false otherwise.
- Throws:
StandardException
- Thrown on error
-
XMLQuery
XMLDataValue XMLQuery(SqlXmlUtil sqlxUtil, XMLDataValue result) throws StandardException
Evaluate the XML query expression contained within the received util object against this XML value and store the results into the received XMLDataValue "result" param (assuming "result" is non-null; else create a new XMLDataValue).- Parameters:
sqlxUtil
- Contains SQL/XML objects and util methods that facilitate execution of XML-related operationsresult
- The result of a previous call to this method; null if not called yet.- Returns:
- An XMLDataValue whose content corresponds to the serialized version of the results from evaluation of the query expression. Note: this XMLDataValue may not be storable into Derby XML columns.
- Throws:
StandardException
- thrown on error
-
setXType
void setXType(int xtype)
Set this XML value's qualified type.
-
getXType
int getXType()
Retrieve this XML value's qualified type.
-
markAsHavingTopLevelAttr
void markAsHavingTopLevelAttr()
Take note of the fact this XML value represents an XML sequence that has one or more top-level attribute nodes.
-
hasTopLevelAttr
boolean hasTopLevelAttr()
Return whether or not this XML value represents a sequence that has one or more top-level attribute nodes.
-
-