Interface XMLDataValue

All Superinterfaces:
DataValueDescriptor, Externalizable, Formatable, Orderable, Serializable, Storable, TypedFormat
All Known Implementing Classes:
XML

public interface XMLDataValue extends DataValueDescriptor
  • Method Details

    • 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 operations
      result - 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.