Ignore:
Timestamp:
26/10/06 12:45:30 (13 years ago)
Author:
domlowe
Message:

moles roundtripping

File:
1 edited

Legend:

Unmodified
Added
Removed
  • TI02-CSML/trunk/csml2MolesStuff/csml2moles.py

    r1621 r1629  
    3636        #http://some.namespace/something#somevar  # standard name 
    3737        #from these extract text (description), termid and vocabid where possible.         
     38        #for starters split at '#' 
     39        #this can't be finalised till we agree on a convention. 
     40 
     41        sections=somename.split('#') 
    3842        self.text='' 
    39         self.term=somename 
    40         self.vocab='' 
     43        if len(sections)==2: 
     44            self.vocab=sections[0] 
     45            self.term=sections[1] 
     46        else: 
     47            self.term=somename 
     48            self.vocab='' 
    4149 
    4250class EnvelopeAggregator(object): 
     
    144152            if hasattr(feature.parameter, 'href'): 
    145153                sn=StandardName(feature.parameter.href) 
    146             SPM=M.dgStdParameterMeasured(dgValidTerm= sn.text) 
     154                if hasattr(feature, 'description'): 
     155                    sn.text=feature.description 
     156            VTID=M.dgValidTermID(ParentListID=sn.vocab, TermID=sn.term) 
     157             
     158            SPM=M.dgStdParameterMeasured(dgValidTerm= sn.text, dgValidTermID=VTID) 
    147159            RDP=M.dgRangeDataParameter(HighValue='', LowValue='') 
    148160            PS  = M.dgParameterSummary(dgRangeDataParameter=RDP, dgStdParameterMeasured=SPM) 
     
    181193    #create data summary: 
    182194    DS = M.dgDataSummary(dgCoverage=dgCv, dgParameterSummary=parameterSummaries) 
    183      
    184195    #create data entity: 
    185196    dgDE= M.dgDataEntity(dgDataGranule=datagranules, dgDataSummary=DS) 
    186197     
     198    #create metadata description: 
     199    mdID=M.metadataDescriptionID(schemeIdentifier='1',repositoryIdentifier='2', localIdentifier='3') 
     200    dgMD=M.dgMetadataDescription(metadataDescriptionID=mdID) 
    187201    #create metadata record 
    188     dgMR=M.dgMetadataRecord(dgMetadataID=dgMID, dgDataEntity=dgDE) 
     202    dgMR=M.dgMetadataRecord(dgMetadataID=dgMID, dgDataEntity=dgDE, dgMetadataDescription=dgMD) 
    189203    dgMeta=MW.dgMetadata(dgMetadataRecord=dgMR) 
    190204 
    191     #produce XML  
     205    #round trip 
     206    #produce XML  and save to file 
    192207    molestree=dgMeta.toXML() 
    193     #print it out. 
    194208    moles=csml.parser_extra.PrettyPrint(molestree) 
    195     print moles 
     209    f=open('molesout.xml','w') 
     210    f.write(moles) 
     211    f.close() 
     212    
     213    
     214    #produce XML again (round trip) 
     215    tree=cElementTree.ElementTree(file='molesout.xml') 
     216    dgMeta=MW.dgMetadata() 
     217    dgMeta.fromXML(tree.getroot()) 
     218    molestree=dgMeta.toXML() 
     219    moles=csml.parser_extra.PrettyPrint(molestree) 
     220    print moles    
    196221    
    197222if __name__=='__main__': 
Note: See TracChangeset for help on using the changeset viewer.