Changeset 2387


Ignore:
Timestamp:
05/04/07 16:11:02 (12 years ago)
Author:
domlowe
Message:

storage descriptor separated from feature collection

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

Legend:

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

    r2385 r2387  
    5151        #append NetCDF file path to containerContents 
    5252        self.ncfiles.append(ncfile) 
     53     
     54    def attachDescriptor(self, descriptor): 
     55        self.sd.append(descriptor) 
    5356 
    54     def add(self, featureplusfile): 
    55         #featureplusfile should be a feature, and a filepath to the netcdf file  
    56         self.appendFeature(featureplusfile[0]) 
    57         self.attachNetCDFFile(featureplusfile[1]) 
     57    def add(self, featureplusfileplusdescriptor): 
     58        #featureplusfileplusdescriptor should be a feature, and a filepath to the netcdf file, and a storage descriptor 
     59        self.appendFeature(featureplusfileplusdescriptor[0]) 
     60        self.attachNetCDFFile(featureplusfileplusdescriptor[1]) 
     61        self.attachDescriptor(featureplusfileplusdescriptor[2]) 
    5862         
    5963    
    6064    def getContents(self): 
    61         self.ds.storageDescriptor=self.sd 
     65        self.ds.storageDescriptor=csml.parser.CSMLStorageDescriptor(descriptors=self.sd) 
    6266        self.ds.featureCollection=csml.parser.CSMLFeatureCollection(featureMembers=self.fm) 
    6367        self.ds.featureCollection.id=csml.csmllibs.csmlextra.getRandomID() 
  • TI02-CSML/trunk/csml/API/ops_GridSeriesFeature.py

    r2385 r2387  
    101101    newdomain.limits=env 
    102102    newdomain.aLabels=self.value.gridSeriesDomain.aLabels 
    103     rangeSet=csml.parser.RangeSet() 
    104     rangeSet.arrayDescriptor=csml.parser.NetCDFExtract(id=csml.csmllibs.csmlextra.getRandomID(),fileName=csml.parser.csString(pathToSubsetNetCDF),variableName=csml.parser.csString(self.id),arraySize=csml.parser.csString(totalArraySize)) 
    105      
     103    rs=csml.parser.RangeSet() 
     104    sdid=csml.csmllibs.csmlextra.getRandomID() 
     105    descriptor=csml.parser.NetCDFExtract(id=sdid,fileName=csml.parser.csString(pathToSubsetNetCDF),variableName=csml.parser.csString(self.id),arraySize=csml.parser.csString(totalArraySize)) 
     106    rs=csml.parser.RangeSet() 
     107    va=csml.parser.ValueArray() 
     108    vc=csml.parser.ValueComponent() 
     109    vc.href='#%s'%sdid 
     110    vc.arcrole="http://ndg.nerc.ac.uk/xlinkUsage/insert#QuantityList" 
     111    vc.role="http://ndg.nerc.ac.uk/fileFormat/csmlStorageDescriptor" 
     112    vc.show='embed' 
     113    ql=csml.parser.MeasureOrNullList() 
     114    #ql.uom=strUom  TODO 
     115    vc.quantityList=ql 
     116    va.valueComponent=vc 
     117    va.id=csml.csmllibs.csmlextra.getRandomID() 
     118    rs.valueArray=va 
    106119    #gridseries coverage 
    107120    cvg=csml.parser.GridSeriesCoverage() 
    108121    cvg.id=csml.csmllibs.csmlextra.getRandomID() 
    109     cvg.rangeSet=rangeSet 
     122    cvg.rangeSet=rs 
    110123    cvg.gridSeriesDomain=newdomain     
    111124     
     
    126139    nc.closeFinishedFile() 
    127140    print 'NetCDF file written to %s'%pathToSubsetNetCDF 
    128     return subsettedFeature, pathToSubsetNetCDF 
     141    return subsettedFeature, pathToSubsetNetCDF, descriptor 
    129142     
    130143 
  • TI02-CSML/trunk/csml/csmllibs/csmlfeaturetypes.py

    r2377 r2387  
    252252                sd.descriptors=aa 
    253253                setattr(self.ds_element, 'storageDescriptor',sd) 
    254             #rs.aggregatedArray=aa 
    255254            va=csml.parser.ValueArray() 
    256255            vc=csml.parser.ValueComponent() 
Note: See TracChangeset for help on using the changeset viewer.