case EDG_WLL_QUERY_ATTR_OWNER:
        case EDG_WLL_QUERY_ATTR_LOCATION: 
        case EDG_WLL_QUERY_ATTR_DESTINATION:
+       case EDG_WLL_QUERY_ATTR_JDL_ATTR:
                free(qr->value.c);
                break;
 
        case EDG_WLL_QUERY_ATTR_LOCATION:
        case EDG_WLL_QUERY_ATTR_DESTINATION:
        case EDG_WLL_QUERY_ATTR_USERTAG:
+       case EDG_WLL_QUERY_ATTR_JDL_ATTR:
                if ( !(cond->value.c = strdup(tmps)) )
                        return 0;
                break;
        case EDG_WLL_QUERY_ATTR_USERTAG:
        case EDG_WLL_QUERY_ATTR_HOST:
        case EDG_WLL_QUERY_ATTR_INSTANCE:
+       case EDG_WLL_QUERY_ATTR_JDL_ATTR:
                if ( !(cond->value.c = strdup(tmps)) )
                        return 0;
                break;
                        case EDG_WLL_QUERY_ATTR_HOST:
                        case EDG_WLL_QUERY_ATTR_INSTANCE:
                        case EDG_WLL_QUERY_ATTR_USERTAG:
+                       case EDG_WLL_QUERY_ATTR_JDL_ATTR:
                                printf("%s", cond[i][j].value.c);
                                break;
                        case EDG_WLL_QUERY_ATTR_STATUS:
 
                case EDG_WLL_QUERY_ATTR_HOST:
                case EDG_WLL_QUERY_ATTR_CHKPT_TAG:
                case EDG_WLL_QUERY_ATTR_NETWORK_SERVER:
+               case EDG_WLL_QUERY_ATTR_JDL_ATTR:
                        /* XXX: 255 may not be enough for location or destination */
                        return "varchar(255) binary null"; 
 
 
                        ct++;
                        break;
 
+               case EDG_WLL_QUERY_ATTR_JDL_ATTR:
+                       if ( ec[m][n].op != EDG_WLL_QUERY_OP_EQUAL && ec[m][n].op != EDG_WLL_QUERY_OP_UNEQUAL )
+                       {
+                               edg_wll_SetError(ctx, EINVAL, "only `=' and '!=' supported with jdl_attr");
+                               return NULL;
+                       }
+                       ct++;
+                       break;
+
                case EDG_WLL_QUERY_ATTR_INSTANCE:
                        if ( ec[m][n].op != EDG_WLL_QUERY_OP_EQUAL && ec[m][n].op != EDG_WLL_QUERY_OP_UNEQUAL )
                        {