7675ff684c82b3740b83f5bda6e472ae4a96f329 kate Thu Jun 30 16:13:25 2011 -0700 Allow Control terms for Antibody type (non-canonical validation of term for type -- should eventually go into cv.c diff --git src/hg/lib/mdb.c src/hg/lib/mdb.c index 96db5b4..2abc6ee 100644 --- src/hg/lib/mdb.c +++ src/hg/lib/mdb.c @@ -2439,30 +2439,31 @@ boolean mdbObjIsCompositeMember(struct mdbObj *mdbObj) // returns TRUE if this is a valid member of a composite. DOES not confirm that composite obj exists { char *objType = mdbObjFindValue(mdbObj,MDB_OBJ_TYPE); assert(objType != NULL); if (differentWord(objType,MDB_OBJ_TYPE_TABLE) && differentWord(objType,MDB_OBJ_TYPE_FILE)) return FALSE; return mdbObjContains(mdbObj,MDB_VAR_COMPOSITE,NULL); } int mdbObjsValidate(struct mdbObj *mdbObjs, boolean full) // Validates vars and vals against cv.ra. Returns count of errors found. // Full considers vars not defined in cv as invalids { +//TODO: move CV_VALIDATE* support to cv.c and merge with validation there struct hash *termTypeHash = (struct hash *)cvTermTypeHash(); struct mdbObj *mdbObj = NULL; int invalids = 0; for( mdbObj=mdbObjs; mdbObj!=NULL; mdbObj=mdbObj->next ) { struct mdbVar *mdbVar = NULL; for(mdbVar = mdbObj->vars;mdbVar != NULL;mdbVar=mdbVar->next) { struct hash *termHash = hashFindVal(termTypeHash,mdbVar->var); if (termHash == NULL) // No cv definition for term so no validation can be done { if (!full) continue; if (sameString(mdbVar->var,MDB_OBJ_TYPE) && ( sameString(mdbVar->val,MDB_OBJ_TYPE_TABLE)