Changeset 1756 for TI02-CSML


Ignore:
Timestamp:
24/11/06 09:59:21 (13 years ago)
Author:
domlowe
Message:

more changes to ReferencableGridCoverage - commiting at convenient point

File:
1 edited

Legend:

Unmodified
Added
Removed
  • TI02-CSML/branches/CSML2/csParser.py

    r1746 r1756  
    22import elementtree.ElementTree as etree 
    33import csml.parser_extra 
    4  
     4import sys 
    55'''CSML v2 Parser '''  
    66 
     
    8080        for att in self.__dict__: 
    8181            if att not in ['ATTRIBUTES', 'CHILDREN', 'CONTENT']: 
     82                #print 'ELEMENT: %s'%att 
    8283                for child in self.CHILDREN: 
    83                     if child == att:                         
     84                    if child == att:                
     85                    #    print self.__dict__[att]        
    8486                        #found a match. 
    8587                        if type(self.CHILDREN[child][0]) is not list: 
     
    118120         ####################################### 
    119121        # deal with attributes, e.g. gml id's 
     122        if csmlfrag.tag == '{http://ndg.nerc.ac.uk/csml}value': 
     123            print 'VALUE DETAILS - from XML' 
    120124        if csmlfrag.text is not None: 
    121125                self.CONTENT = csmlfrag.text 
     126                if csmlfrag.tag == '{http://ndg.nerc.ac.uk/csml}value': 
     127                    print 'content %s'%self.CONTENT 
    122128        for item in csmlfrag.items(): 
    123129            if item[0] in self.ATTRIBUTES: 
     130                if csmlfrag.tag == '{http://ndg.nerc.ac.uk/csml}value': 
     131                    print 'attributes %s'%self.ATTRIBUTES 
    124132                setattr(self, item[0], item[1]) 
    125133        # self.CHILDREN (recursive - calls the fromXML method of children 
     
    151159                    else: 
    152160                        setattr(self, child, childobj) 
    153                 
     161                    
     162                     
    154163class csString(csElement): 
    155164    pass 
     
    190199class referenceableGridDomain(domainSet): 
    191200    def __init__(self, **kwargs): 
     201        print 'rgd init' 
    192202        domainSet.__init__(self,**kwargs) 
    193         self.CHILDREN={} 
     203        self.CHILDREN=inherit(self.CHILDREN,{}) 
    194204 
    195205class AbstractCoverage(AbstractFeature, csElement): 
     
    207217        AbstractDiscreteCoverage.__init__(self,**kwargs) 
    208218        self.CHILDREN = inherit(self.CHILDREN,{'referenceableGridDomain':[CSML('referenceableGridDomain'), 'referenceableGridDomain']}) 
     219    def toXML(self,csmlfrag): 
     220        print 'calling toXML' 
     221        AbstractDiscreteCoverage.toXML(self,csmlfrag)    
     222    def fromXML(self,csmlfrag): 
     223        print 'calling fromXML' 
     224        AbstractDiscreteCoverage.fromXML(self,csmlfrag)    
    209225     
    210226class Definition(AbstractGML): 
     
    257273    def __init__(self, **kwargs): 
    258274        AbstractGML.__init__(self,**kwargs) 
    259         self.CHILDREN = {'ncExtract':[CSML('NetCDFExtract'), 'NetCDFExtract'], 'featureCollection':[CSML('featureCollection'),'FeatureCollection']} 
     275        self.CHILDREN = {'ncExtract':[CSML('NetCDFExtract'), 'NetCDFExtract'], 'featureCollection':[CSML('featureCollection') ,'FeatureCollection']} 
    260276    def toXML(self): 
    261277        csmlfrag=ET.Element(CSML('Dataset')) 
     
    274290    csmlout=csml.parser_extra.removeInlineNS(csmlout) 
    275291    print '\n %s'% csmlout 
    276     #print dir(csmlout) 
    277  
    278     #test writing a document from scratch: 
     292    print dir(ds.featureCollection.members[1].value.CHILDREN) 
     293     
    279294     
    280295 
Note: See TracChangeset for help on using the changeset viewer.