Changeset 2362 for TI02-CSML/trunk


Ignore:
Timestamp:
02/04/07 15:37:42 (12 years ago)
Author:
domlowe
Message:

correct handling of xlinks in domain

Location:
TI02-CSML/trunk/csml
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • TI02-CSML/trunk/csml/API/ops_GridSeriesFeature.py

    r2320 r2362  
    2828        if hasattr(gridOrd.coordAxisValues, '__insertedExtract'): 
    2929            self.domain[name], fill, axisorder, units=gridOrd.coordAxisValues.__insertedExtract.getData() 
    30         else: 
     30        else:             
    3131            try: 
    3232                vals=gridOrd.coordAxisValues.coordinateList.CONTENT 
  • TI02-CSML/trunk/csml/csmllibs/csmlfeaturetypes.py

    r2357 r2362  
    152152                    #(axisid stored in dictionary = current filename + variable name) 
    153153                    axisid=self.repfilename+dimName[1] 
    154                     sptList.coordinateList=cp.csString('#'+ self.fileExtractDictionary[axisid]) #todo, fix xlink 
     154                    #sptList.coordinateList=cp.csString('#'+ self.fileExtractDictionary[axisid]) #todo, fix xlink 
     155                    sptList.href='#'+self.fileExtractDictionary[axisid] 
     156                    sptList.show='embed' 
     157                    sptList.arcrole='http://ndg.nerc.ac.uk/xlinkUsage/insert#coordinateList' 
     158                    sptList.role='http://ndg.nerc.ac.uk/fileFormat/csmlStorageDescriptor' 
    155159                else: 
    156160                    #store inline 
  • TI02-CSML/trunk/csml/parser.py

    r2361 r2362  
    521521        csElement.__init__(self,**kwargs) 
    522522                 
    523 class SpatialOrTemporalPositionList(AbstractGML,csElement): 
    524     def __init__(self, **kwargs): 
    525         AbstractGML.__init__(self,**kwargs) 
     523class SpatialOrTemporalPositionList(AbstractGML, AssociationAttributeGroup, csElement): 
     524    def __init__(self, **kwargs): 
     525        AbstractGML.__init__(self,**kwargs) 
     526        AssociationAttributeGroup.__init__(self,**kwargs) 
    526527        elems=['coordinateList', 'timePositionList','__insertedExtract'] 
    527528        addelems(self,elems) 
  • TI02-CSML/trunk/csml/parser_extra.py

    r2361 r2362  
    108108         
    109109                         
    110     def __findSDmatch(self, href): 
     110    def __findSDmatch(self, href):      
    111111        for sd in csml.csmllibs.csmlextra.listify(self.dataset.storageDescriptor.descriptors): 
    112112            if type(sd) in [csml.parser.NetCDFExtract, csml.parser.AggregatedArray]: 
     
    141141                    domain=getattr(cvg,att) 
    142142                    for ordinate in domain.coordTransformTable.gridOrdinates: 
    143                         if hasattr(ordinate.coordAxisValues,'coordinateList'): 
    144                             if ordinate.coordAxisValues.coordinateList.CONTENT[:1] == '#': 
    145                                 dataforClist= self.__findSDmatch(ordinate.coordAxisValues.coordinateList.CONTENT[1:]) 
    146                                 if dataforClist is not None: 
     143                        if hasattr(ordinate.coordAxisValues,'href'): 
     144                            if ordinate.coordAxisValues.arcrole.split('#')[1] in ['coordinateList', 'timePositionList']: 
     145                                dataforClist= self.__findSDmatch(ordinate.coordAxisValues.href[1:]) 
     146                            if dataforClist is not None: 
    147147                                    setattr(ordinate.coordAxisValues, '__insertedExtract', dataforClist) 
    148                         #elif hasattr(ordinate.coordAxisValues,'timePositionList'): 
    149                             #if ordinate.coordAxisValues.timePositionList.CONTENT[:1] == '#': 
    150                                 #dataforClist= self.__findSDmatch(ordinate.coordAxisValues.timePositionList.CONTENT[1:]) 
    151                                 #if dataforClist is not None: 
    152                                     #setattr(ordinate.coordAxisValues, '__insertedExtract', dataforClist) 
    153148                    break 
    154149             
Note: See TracChangeset for help on using the changeset viewer.