Ignore:
Timestamp:
31/01/07 19:35:50 (14 years ago)
Author:
selatham
Message:

implementing keywordAdder.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • TI01-discovery/trunk/ingestAutomation/OAIBatch/keywordAdder.py

    r2066 r2088  
    2929 
    3030def main(indir, outdir, keywords): 
    31     if len(sys.argv) < 2 or indir == "" or outdir == "" or keywords == "": 
    32         print "USAGE: keywordAdder(indir, outdir, keywords) " 
     31    if len(sys.argv) < 2 or indir == "" or outdir == "" or keywords == []: 
     32        print "USAGE: keywordAdder indir, outdir, keywords " 
    3333        print " where indir= full path of directory where MOLES records reside," 
    3434        print "       outdir= full path of where you want the updated records to go." 
    35         print "       keywords = nested list of [[keyword, namespace, key],...] which need to be added" 
    36         sys.exit 
     35        print "       keywords = list triples:- keyword, namespace, key. Must be multiple of three." 
     36        sys.exit() 
     37 
     38    if (len(keywords))%3 != 0: 
     39        print "Keywords must be in triples. keyword namespace key." 
     40        sys.exit() 
    3741 
    3842    print "INFO: moles records are in %s" %indir 
     
    4246    # initialise variables 
    4347    numfilesproc = 0 
     48    keywordList=[] 
     49 
     50    #split the keywords into list of triples 
     51    count=0 
     52    while count < len(keywords)/3: 
     53        #print "count = %s. keywordList = %s" %(count, keywordList) 
     54        keywordList.append([]) 
     55        keywordList[count].append(keywords[(count*3)]) 
     56        keywordList[count].append(keywords[(count*3)+1]) 
     57        keywordList[count].append(keywords[(count*3)+2]) 
     58        count=count+1 
     59    #print "Final keywordList = %s" %keywordList 
    4460 
    4561    # moles skeleton for creating new objects 
     
    6076                continue 
    6177 
    62             strValidTerm= str(keywords[1][0]) 
    63             strParentListID=str(keywords[1][1]) 
    64             strTermID=str(keywords[1][2]) 
    65             print strValidTerm, strParentListID, strTermID 
    66             dgVTID=M.dgValidTermID(ParentListID=strParentListID, TermID=strTermID) 
    67             dgSK=M.dgStructuredKeyword(dgValidTerm=strValidTerm, dgValidTermID=dgVTID) 
    68             dgMeta.dgMetadataRecord.addChildElem('dgStructuredKeyword', dgSK) 
     78            for keyword in keywordList: 
     79                strValidTerm= str(keyword[0]) 
     80                strParentListID=str(keyword[1]) 
     81                strTermID=str(keyword[2]) 
     82                print strValidTerm, strParentListID, strTermID 
     83                dgVTID=M.dgValidTermID(ParentListID=strParentListID, TermID=strTermID) 
     84                dgSK=M.dgStructuredKeyword(dgValidTerm=strValidTerm, dgValidTermID=dgVTID) 
     85                dgMeta.dgMetadataRecord.addChildElem('dgStructuredKeyword', dgSK) 
    6986 
    7087            # now write out updated document 
    71             print dir(dgMeta.dgMetadataRecord) 
     88            #print dir(dgMeta.dgMetadataRecord) 
    7289            molestree=dgMeta.toXML() 
    7390            moles=PrettyPrint(molestree) 
Note: See TracChangeset for help on using the changeset viewer.