Interface XMLDataValue

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