Ignore:
Timestamp:
14/03/07 21:02:11 (12 years ago)
Author:
lawrence
Message:

Better handling of DIF parameters as currently reported by
mini-MOLES

File:
1 edited

Legend:

Unmodified
Added
Removed
  • TI07-MOLES/trunk/PythonCode/wsgi/DIF.py

    r2104 r2278  
    1717        # if you've egged it this is the way it comes 
    1818        from elementtree import ElementTree as ET 
    19  
     19debug=1 
    2020class DIFService: 
    2121    ''' A DIF only knows about a related URL ''' 
     
    7777         
    7878        #need entity.parameters, entity.bbox, entity.timeCoverage, entity.curator, entity.creators 
    79  
     79        # nb, two ways of parameters being stored 
    8080        self.parameters=[] 
    8181        for parameter in helper.findall(self.tree,'Parameters'): 
    82             name='' 
    83             for level in ['Category','Topic','Term','Variable','Detailed_Variable']: 
    84                 name+=helper.getText(parameter,level)+'/' 
    85             self.parameters.append(name.rstrip('/')) 
    86              
     82            name=parameter.text 
     83            if name is not None:  
     84                self.parameters.append(name.replace('>','/')) 
     85            else: 
     86                name='' 
     87                for level in ['Category','Topic','Term','Variable','Detailed_Variable']: 
     88                    name+=helper.getText(parameter,level)+'/' 
     89                self.parameters.append(name.rstrip('/')) 
    8790 
    8891        #load up information about spatial bounding box  
     
    155158 
    156159    inputFile = 'examples/neodc.eg1.dif' 
     160    inputFile2= 'examples/bodc.eg2.edmed.dif' 
    157161    configFile='examples/example.config' 
    158162     
    159163    def setUp(self): 
    160164        ''' Load example config and DIF files for testing ''' 
    161         f=file(self.inputFile,'r') 
     165        f=file(self.inputFile2,'r') 
    162166        xml=f.read() 
    163167        self.dif=DIF(xml) 
     
    175179        g=file('difOutput.html','w') 
    176180        g.write(html) 
     181     
     182    def testParameters(self): 
     183        ''' Testing obtaining parameters from an edmed dif in original format ''' 
     184        print 'Parameters %s'%self.dif.parameters 
    177185 
    178186if __name__=="__main__": 
Note: See TracChangeset for help on using the changeset viewer.