/* Returns the CR_OK if the selection ran correctly, an error code otherwise.  */
enum CRStatus cr_sel_eng_matches_node(CRSelEng *a_this, CRSimpleSel *a_sel, xmlNode *a_node, gboolean *a_result)
/* Returns the CR_OK if the selection ran correctly, an error code otherwise.  */
enum CRStatus cr_sel_eng_matches_node(CRSelEng *a_this, CRSimpleSel *a_sel, xmlNode *a_node, gboolean *a_result)
{
        g_return_val_if_fail (a_this && PRIVATE (a_this)
                              && a_this && a_node
                              && a_result, CR_BAD_PARAM_ERROR);
        if (a_node->type != XML_ELEMENT_NODE) {
                *a_result = FALSE;
                return CR_OK;
        }
        return sel_matches_node_real (a_this, a_sel, 
                                      a_node, a_result, 
                                      TRUE, TRUE);
}