- Timestamp:
- 25/01/07 11:04:54 (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
TI02-CSML/trunk/csml/parser.py
r2034 r2050 64 64 65 65 def __init__(self, **kwargs): 66 for kw in kwargs: 67 self.__dict__[kw]=kwargs[kw] 66 68 if not hasattr(self, 'ATTRIBUTES'): 67 69 self.__dict__['ATTRIBUTES']=[] … … 143 145 setattr(self,childname, childobj) 144 146 145 def toXML(self, csmlfrag ):147 def toXML(self, csmlfrag, **kwargs): 146 148 #process self and convert to XML 149 147 150 if hasattr(self, 'CONTENT'): 148 151 if self.CONTENT is not None: csmlfrag.text=self.CONTENT … … 275 278 a=[GML('id'), GML('description'), GML('name'), GML('MetaDataProperty')] 276 279 addatts(self,a) 277 280 csElement.__init__(self,**kwargs) 281 278 282 class AssociationAttributeGroup(csElement): 279 283 def __init__(self, **kwargs): 280 284 a =[XLINK('href'),XLINK('role'), XLINK('arcrole'),XLINK('title'), XLINK('show'), XLINK('actuate')] 281 285 addatts(self,a) 282 286 csElement.__init__(self,**kwargs) 287 283 288 class csString(AssociationAttributeGroup, csElement): 284 289 def __init__(self, text=None,**kwargs): … … 291 296 children={} 292 297 addchildren(self,children) 293 298 csElement.__init__(self,**kwargs) 299 294 300 class SRSReferenceGroup(csElement): 295 301 def __init__(self, **kwargs): 296 302 a =['srsName','srsDimension'] 297 303 addatts(self,a) 298 304 csElement.__init__(self,**kwargs) 305 299 306 class SRSInformationGroup(csElement): 300 307 def __init__(self, **kwargs): 301 308 a =['uomLabels','axisLabels'] 302 309 addatts(self,a) 303 310 csElement.__init__(self,**kwargs) 311 304 312 class ArrayDescriptor(AbstractGML, csElement): 305 313 def __init__(self,**kwargs): … … 307 315 children={'arraySize':[CSML('arraySize'), 'csString'], 'uom':[CSML('uom'),'csString'], 'numericType':[CSML('numericType'),'csString'], 'regExpTransform':[CSML('regExpTransform'),'csString'], 'numericTransform':[CSML('numericTransform'),'csString']} 308 316 addchildren(self,children) 309 317 csElement.__init__(self,**kwargs) 318 310 319 class DirectPosition(AbstractGML, SRSReferenceGroup,SRSInformationGroup,csElement): 311 320 def __init__(self, **kwargs): 312 321 AbstractGML.__init__(self,**kwargs) 313 322 csElement.__init__(self,**kwargs) 323 314 324 class GridEnvelope(AbstractGML,SRSReferenceGroup, csElement): 315 325 def __init__(self, **kwargs): … … 318 328 children={'low':[GML('low'), 'csString'],'high':[GML('high'), 'csString']} 319 329 addchildren(self,children) 320 330 csElement.__init__(self,**kwargs) 331 321 332 class Envelope(AbstractGML,SRSReferenceGroup, csElement): 322 333 def __init__(self, **kwargs): … … 325 336 children={'lowerCorner':[GML('lowerCorner'), 'DirectPosition'],'upperCorner':[GML('upperCorner'), 'DirectPosition']} 326 337 addchildren(self,children) 327 338 csElement.__init__(self,**kwargs) 339 328 340 329 341 class AbstractFeature(AbstractGML,csElement): … … 332 344 children={'boundedBy':[GML('boundedBy'), 'Envelope']} 333 345 addchildren(self,children) 334 346 csElement.__init__(self,**kwargs) 347 335 348 class AbstractFeatureCollection(AbstractFeature,csElement): 336 349 def __init__(self, **kwargs): 337 350 AbstractFeature.__init__(self,**kwargs) 338 351 csElement.__init__(self,**kwargs) 352 339 353 class DomainSet(AbstractGML,AssociationAttributeGroup,csElement): 340 354 def __init__(self, **kwargs): 341 355 AbstractGML.__init__(self,**kwargs) 342 356 addchildren(self,{}) 343 357 csElement.__init__(self,**kwargs) 358 344 359 class AggregatedArray(ArrayDescriptor,csElement): 345 360 def __init__(self, **kwargs): … … 347 362 children={'aggType':[CSML('aggType'),'csString'], 'aggIndex':[CSML('aggIndex'),'csString'],'components':[FILEFORMATS, 'ArrayDescriptor',CSML('component')]} 348 363 addchildren(self,children) 364 csElement.__init__(self,**kwargs) 349 365 #'component':[CSML:('component'), 'ArrayDescriptor', CSML('component')], 350 366 class MeasureOrNullList(AbstractGML,csElement): … … 355 371 a =['uom'] 356 372 addatts(self,a) 373 csElement.__init__(self,**kwargs) 357 374 358 375 class CompositeValue(AbstractGML,csElement): … … 361 378 children={'measures':[GML('measure'),'csString',GML('valueComponents')]} 362 379 addchildren(self,children) 380 csElement.__init__(self,**kwargs) 363 381 364 382 class DataBlock(AbstractGML,csElement): … … 368 386 children={'doubleOrNullTupleList':[GML('doubleOrNullTupleList'),'csString'],'rangeParameters':[GML('CompositeValue'), 'CompositeValue', GML('rangeParameters')]} 369 387 addchildren(self,children) 370 388 csElement.__init__(self,**kwargs) 371 389 372 390 class ValueComponent(AbstractGML, AssociationAttributeGroup, csElement): … … 376 394 children=children={'quantityList':[GML('QuantityList'), 'MeasureOrNullList']} 377 395 addchildren(self,children) 378 396 csElement.__init__(self,**kwargs) 379 397 380 398 class ValueArray(AbstractGML, csElement): … … 385 403 children=children={'valueComponent':[GML('valueComponent'), 'ValueComponent', ]} 386 404 addchildren(self,children) 405 csElement.__init__(self,**kwargs) 387 406 388 407 class RangeSet(AbstractGML,AssociationAttributeGroup,csElement): … … 393 412 'valueArray':[GML('ValueArray'),'ValueArray']} 394 413 addchildren(self,children) 395 414 csElement.__init__(self,**kwargs) 415 396 416 class MultiPoint(AbstractGML, SRSReferenceGroup,csElement): 397 417 def __init__(self, **kwargs): … … 400 420 children={'pointMember':[GML('pointMember'), 'csString'],'pointMembers':[GML('pointMember'), 'csString']} 401 421 addchildren(self,children) 402 422 csElement.__init__(self,**kwargs) 423 403 424 class Point(AbstractGML,SRSReferenceGroup,csElement): 404 425 def __init__(self, **kwargs): … … 407 428 children={'pos':[GML('pos'), 'csString'],'coordinates':[GML('coordinates'), 'csString']} 408 429 addchildren(self,children) 409 430 csElement.__init__(self,**kwargs) 431 410 432 class PointDomain(DomainSet, MultiPoint,csElement): 411 433 def __init__(self, **kwargs): … … 414 436 children={} 415 437 addchildren(self,children) 416 438 csElement.__init__(self,**kwargs) 439 417 440 class ProfileDomain(DomainSet, MultiPoint,csElement): 418 441 def __init__(self, **kwargs): … … 421 444 children={} 422 445 addchildren(self,children) 423 446 csElement.__init__(self,**kwargs) 424 447 425 448 … … 427 450 def __init__(self, **kwargs): 428 451 AbstractFeature.__init__(self,**kwargs) 429 452 csElement.__init__(self,**kwargs) 453 430 454 class AbstractDiscreteCoverage(AbstractCoverage, csElement): 431 455 def __init__(self, **kwargs): 432 456 AbstractCoverage.__init__(self,**kwargs) 433 457 addchildren(self,{}) 458 csElement.__init__(self,**kwargs) 434 459 435 460 class Definition(AbstractGML): … … 437 462 AbstractGML.__init__(self,**kwargs) 438 463 addchildren(self,{}) 439 464 csElement.__init__(self,**kwargs) 465 440 466 class Phenomenon(Definition,AssociationAttributeGroup): 441 467 def __init__(self, **kwargs): … … 444 470 children = {'':[CSML(''), '']} 445 471 addchildren(self,children) 446 472 csElement.__init__(self,**kwargs) 473 447 474 class SpatialOrTemporalPositionList(AbstractGML,csElement): 448 475 def __init__(self, **kwargs): … … 452 479 a=['frame'] 453 480 addatts(self,a) 481 csElement.__init__(self,**kwargs) 454 482 455 483 class GridOrdinateDescription(AbstractGML,csElement): … … 458 486 children={'coordAxisLabel':[CSML('coordAxisLabel'), 'csString'], 'coordAxisValues':[CSML('SpatialOrTemporalPositionList'),'SpatialOrTemporalPositionList',CSML('coordAxisValues')], 'gridAxesSpanned':[CSML('gridAxesSpanned'), 'csString'], 'sequenceRule':[CSML('sequenceRule'),'SequenceRule']} 459 487 addchildren(self,children) 460 488 csElement.__init__(self,**kwargs) 489 461 490 class SequenceRule(csElement): 462 491 def __init__(self, **kwargs): … … 465 494 children={} 466 495 addchildren(self,children) 467 496 csElement.__init__(self,**kwargs) 497 468 498 class GridPointDescription(AbstractGML,csElement): 469 499 def __init__(self, **kwargs): … … 471 501 children={'posList':[CSML('posList'),'csString'],'sequenceRule':[CSML('sequenceRule'),'SequenceRule']} 472 502 addchildren(self,children) 473 503 csElement.__init__(self,**kwargs) 474 504 475 505 class TimePositionList(AbstractGML,csElement): … … 478 508 addatts(self,a) 479 509 addchildren(self,{}) 480 510 csElement.__init__(self,**kwargs) 481 511 482 512 class GridCoordinatesTable(AbstractGML,csElement): … … 498 528 children={'gridOrdinates':[CSML('GridOrdinateDescription'), 'GridOrdinateDescription',CSML('gridOrdinate'),1], 'gridPoints':[CSML('GridPointDescription'),'GridPointDescription',CSML('gridPoints')]} 499 529 addchildren(self,children) 530 csElement.__init__(self,**kwargs) 500 531 501 532 class ReferenceableGrid(AbstractGML, AssociationAttributeGroup, SRSInformationGroup, SRSReferenceGroup,csElement): … … 507 538 children={'coordTransformTable':[CSML('GridCoordinatesTable'), 'GridCoordinatesTable', CSML('coordTransformTable')],'aLabels':[CSML('axisLabels'),'csString'], 'limits':[GML('GridEnvelope'),'GridEnvelope',CSML('limits')]} 508 539 addchildren(self,children) 509 540 csElement.__init__(self,**kwargs) 510 541 511 542 class ReferenceableGridCoverage(AbstractDiscreteCoverage, csElement): … … 514 545 children={'referenceableGridDomain':[CSML('ReferenceableGrid'),'ReferenceableGrid' ,CSML('referenceableGridDomain') ]} 515 546 addchildren(self,children) 547 csElement.__init__(self,**kwargs) 516 548 517 549 class AlternatePointCoverage(AbstractDiscreteCoverage, csElement): … … 520 552 children={'alternatePointDomain':[GML('Point'),'Point', CSML('alternatePointDomain')], 'rangeSet':[GML('rangeSet'), 'RangeSet'],'coverageFunction':[GML('coverageFunction'),'csString']} 521 553 addchildren(self,children) 522 554 csElement.__init__(self,**kwargs) 523 555 524 556 class ProfileCoverage(AbstractDiscreteCoverage, csElement): … … 527 559 children={'profileDomain':[CSML('ProfileDomain'),'ProfileDomain' ,CSML('profileDomain') ], 'rangeSet':[GML('rangeSet'), 'RangeSet'],'coverageFunction':[GML('coverageFunction'),'csString']} 528 560 addchildren(self,children) 529 561 csElement.__init__(self,**kwargs) 562 530 563 class PointCoverage(AbstractDiscreteCoverage, csElement): 531 564 def __init__(self, **kwargs): … … 533 566 children={'pointDomain':[CSML('PointDomain'),'PointDomain' ,CSML('pointDomain') ], 'rangeSet':[GML('rangeSet'), 'RangeSet'],'coverageFunction':[GML('coverageFunction'),'csString']} 534 567 addchildren(self,children) 568 csElement.__init__(self,**kwargs) 535 569 536 570 class TimeSeriesDomain(AbstractGML, csElement): … … 539 573 children={'time':[CSML('time'), 'csString']} 540 574 addchildren(self,children) 541 575 csElement.__init__(self,**kwargs) 542 576 543 577 class PointSeriesCoverage(AbstractDiscreteCoverage, csElement): … … 546 580 children={'pointSeriesDomain':[CSML('TimeSeriesDomain'),'TimeSeriesDomain' ,CSML('pointSeriesDomain') ], 'rangeSet':[GML('rangeSet'), 'RangeSet'],'coverageFunction':[GML('coverageFunction'),'csString']} 547 581 addchildren(self,children) 548 582 csElement.__init__(self,**kwargs) 583 549 584 class ProfileSeriesDomain(ReferenceableGrid, DomainSet, csElement): 550 585 def __init__(self, **kwargs): … … 553 588 children={} 554 589 addchildren(self,children) 555 590 csElement.__init__(self,**kwargs) 591 556 592 class ProfileSeriesCoverage(AbstractDiscreteCoverage,csElement): 557 593 def __init__(self, **kwargs): … … 559 595 children={'profileSeriesDomain':[CSML('ProfileSeriesDomain'),'ProfileSeriesDomain' ,CSML('profileSeriesDomain') ], 'rangeSet':[GML('rangeSet'), 'RangeSet'],'coverageFunction':[GML('coverageFunction'),'csString']} 560 596 addchildren(self,children) 597 csElement.__init__(self,**kwargs) 561 598 562 599 class SectionDomain(ReferenceableGrid, DomainSet, csElement): … … 566 603 children={} 567 604 addchildren(self,children) 605 csElement.__init__(self,**kwargs) 568 606 569 607 class SectionCoverage(AbstractDiscreteCoverage,csElement): … … 572 610 children={'sectionDomain':[CSML('SectionDomain'),'SectionDomain' ,CSML('sectionDomain') ], 'rangeSet':[GML('rangeSet'), 'RangeSet'],'coverageFunction':[GML('coverageFunction'),'csString']} 573 611 addchildren(self,children) 574 612 csElement.__init__(self,**kwargs) 613 575 614 class TrajectoryDomain(ReferenceableGrid, DomainSet, csElement): 576 615 def __init__(self, **kwargs): … … 579 618 children={} 580 619 addchildren(self,children) 620 csElement.__init__(self,**kwargs) 581 621 582 622 class TrajectoryCoverage(AbstractDiscreteCoverage,csElement): … … 585 625 children={'trajectoryDomain':[CSML('TrajectoryDomain'),'TrajectoryDomain' ,CSML('trajectoryDomain') ], 'rangeSet':[GML('rangeSet'), 'RangeSet'],'coverageFunction':[GML('coverageFunction'),'csString']} 586 626 addchildren(self,children) 587 627 csElement.__init__(self,**kwargs) 588 628 589 629 class ScanningRadarDomain(ReferenceableGrid, DomainSet, csElement): … … 593 633 children={} 594 634 addchildren(self,children) 635 csElement.__init__(self,**kwargs) 595 636 596 637 class ScanningRadarCoverage(AbstractDiscreteCoverage,csElement): … … 599 640 children={'scanningRadarDomain':[CSML('ScanningRadarDomain'),'ScanningRadarDomain' ,CSML('scanningRadarDomain') ], 'rangeSet':[GML('rangeSet'), 'RangeSet'],'coverageFunction':[GML('coverageFunction'),'csString']} 600 641 addchildren(self,children) 642 csElement.__init__(self,**kwargs) 601 643 602 644 … … 607 649 children={} 608 650 addchildren(self,children) 609 651 csElement.__init__(self,**kwargs) 652 610 653 class GridSeriesCoverage(AbstractDiscreteCoverage,csElement): 611 654 def __init__(self, **kwargs): … … 613 656 children={'gridSeriesDomain':[CSML('GridSeriesDomain'),'GridSeriesDomain' ,CSML('gridSeriesDomain') ], 'rangeSet':[GML('rangeSet'), 'RangeSet'],'coverageFunction':[GML('coverageFunction'),'csString']} 614 657 addchildren(self,children) 658 csElement.__init__(self,**kwargs) 615 659 616 660 class AlternatePointFeature(AbstractFeature, csElement): … … 619 663 children={'location':[CSML('location'), 'csString'],'time':[CSML('time'), 'csString'], 'value':[CSML('AlternatePointCoverage'), 'AlternatePointCoverage', CSML('value')], 'parameter':[CSML('parameter'), 'Phenomenon']} 620 664 addchildren(self,children) 665 csElement.__init__(self,**kwargs) 621 666 622 667 class PointFeature(AbstractFeature, csElement): … … 625 670 children={'location':[CSML('location'), 'csString'],'time':[CSML('time'), 'csString'], 'value':[CSML('PointCoverage'), 'PointCoverage', CSML('value')], 'parameter':[CSML('parameter'), 'Phenomenon']} 626 671 addchildren(self,children) 672 csElement.__init__(self,**kwargs) 627 673 628 674 class PointCollectionFeature(AbstractFeature, csElement): … … 631 677 children={'time':[CSML('time'), 'csString'], 'value':[CSML('MultiPointCoverage'), 'MultiPointCoverage', CSML('value')], 'parameter':[CSML('parameter'), 'Phenomenon']} 632 678 addchildren(self,children) 679 csElement.__init__(self,**kwargs) 633 680 634 681 … … 638 685 children={'location':[CSML('location'), 'csString'], 'value':[CSML('PointSeriesCoverage'), 'PointSeriesCoverage', CSML('value')], 'parameter':[CSML('parameter'), 'Phenomenon']} 639 686 addchildren(self,children) 687 csElement.__init__(self,**kwargs) 640 688 641 689 … … 645 693 children={'time':[CSML('time'), 'csString'], 'value':[CSML('ReferenceableGridCoverage'), 'ReferenceableGridCoverage', CSML('value')], 'parameter':[CSML('parameter'), 'Phenomenon']} 646 694 addchildren(self,children) 695 csElement.__init__(self,**kwargs) 647 696 648 697 class GridSeriesFeature(AbstractFeature, csElement): … … 651 700 children={'value':[CSML('GridSeriesCoverage'), 'GridSeriesCoverage', CSML('value')], 'parameter':[CSML('parameter'), 'Phenomenon']} 652 701 addchildren(self,children) 702 csElement.__init__(self,**kwargs) 653 703 654 704 class ProfileFeature(AbstractFeature, csElement): … … 657 707 children={'time':[CSML('time'), 'csString'],'location':[CSML('location'), 'csString'], 'value':[CSML('ProfileCoverage'), 'ProfileCoverage', CSML('value')], 'parameter':[CSML('parameter'), 'Phenomenon']} 658 708 addchildren(self,children) 709 csElement.__init__(self,**kwargs) 659 710 660 711 class ProfileSeriesFeature(AbstractFeature, csElement): … … 663 714 children={'location':[CSML('location'), 'csString'], 'value':[CSML('ProfileSeriesCoverage'), 'ProfileSeriesCoverage', CSML('value')], 'parameter':[CSML('parameter'), 'Phenomenon']} 664 715 addchildren(self,children) 716 csElement.__init__(self,**kwargs) 665 717 666 718 class RaggedProfileSeriesFeature(AbstractFeature, csElement): … … 669 721 children={'location':[CSML('location'), 'csString'], 'profileLength':[CSML('profileLength'), 'csString'],'value':[CSML('ProfileSeriesCoverage'), 'ProfileSeriesCoverage', CSML('value')], 'parameter':[CSML('parameter'), 'Phenomenon']} 670 722 addchildren(self,children) 723 csElement.__init__(self,**kwargs) 671 724 672 725 class RaggedSectionFeature(AbstractFeature, csElement): … … 675 728 children={'stationLocations':[CSML('stationLocations'), 'csString'], 'stationTimes':[CSML('stationTimes'), 'csString'],'profileLength':[CSML('profileLength'),'csString'],'value':[CSML('SectionCoverage'), 'SectionCoverage', CSML('value')], 'parameter':[CSML('parameter'), 'Phenomenon']} 676 729 addchildren(self,children) 730 csElement.__init__(self,**kwargs) 677 731 678 732 class SectionFeature(AbstractFeature, csElement): … … 681 735 children={'stationLocations':[CSML('stationLocations'), 'csString'], 'stationTimes':[CSML('stationTimes'), 'TimePositionList'],'value':[CSML('SectionCoverage'), 'SectionCoverage', CSML('value')], 'parameter':[CSML('parameter'), 'Phenomenon']} 682 736 addchildren(self,children) 683 684 685 737 csElement.__init__(self,**kwargs) 686 738 687 739 class ScanningRadarFeature(AbstractFeature, csElement): … … 690 742 children={'elevation':[CSML('elevation'), 'csString'], 'value':[CSML('ScanningRadarCoverage'), 'ScanningRadarCoverage', CSML('value')], 'parameter':[CSML('parameter'), 'Phenomenon']} 691 743 addchildren(self,children) 692 744 csElement.__init__(self,**kwargs) 745 746 693 747 class SwathFeature(AbstractFeature, csElement): 694 748 def __init__(self, **kwargs): … … 696 750 children={'eqCrossLon':[CSML('eqCrossLon'), 'csString'],'eqCrossTime':[CSML('eqCrossTime'), 'csString'], 'value':[CSML('ReferenceableGridCoverage'), 'ReferenceableGridCoverage', CSML('value')], 'parameter':[CSML('parameter'), 'Phenomenon']} 697 751 addchildren(self,children) 698 752 csElement.__init__(self,**kwargs) 753 699 754 class TrajectoryFeature(AbstractFeature, csElement): 700 755 def __init__(self, **kwargs): … … 702 757 children={'value':[CSML('TrajectoryCoverage'), 'TrajectoryCoverage', CSML('value')], 'parameter':[CSML('parameter'), 'Phenomenon']} 703 758 addchildren(self,children) 704 759 csElement.__init__(self,**kwargs) 760 705 761 class FileList(AssociationAttributeGroup,AbstractGML,csElement): 706 762 def __init__(self,**kwargs): … … 710 766 children= {'fileNames':[CSML('fileNames'), 'csString']} 711 767 addchildren(self,children) 712 768 csElement.__init__(self,**kwargs) 769 713 770 class FileExtract(ArrayDescriptor, csElement): 714 771 def __init__(self,**kwargs): … … 716 773 children= {'fileName':[CSML('fileName'), 'csString'], 'fileList':[CSML('FileList'), 'FileList', CSML('fileList')],'fileListXLINK':[CSML('fileList'), 'csString']} 717 774 addchildren(self,children) 775 csElement.__init__(self,**kwargs) 718 776 719 777 class NetCDFExtract(FileExtract, csElement): … … 722 780 children={'variableName':[CSML('variableName'), 'csString']} 723 781 addchildren(self,children) 782 csElement.__init__(self,**kwargs) 724 783 725 784 class NASAAmesExtract(FileExtract, csElement): … … 728 787 children={'variableName':[CSML('variableName'), 'csString'], 'index':[CSML('index'),'csString']} 729 788 addchildren(self,children) 789 csElement.__init__(self,**kwargs) 730 790 731 791 class CSMLStorageDescriptor(csElement): … … 734 794 children={'descriptors':[[CSML('NetCDFExtract'),CSML('PointFeature'),CSML('AggregatedArray')], 'FileExtract', CSML('descriptor'),1]} 735 795 addchildren(self,children) 736 737 738 class CSMLFeatureCollection(AbstractFeatureCollection,csElement ):796 csElement.__init__(self,**kwargs) 797 798 class CSMLFeatureCollection(AbstractFeatureCollection,csElement,): 739 799 def __init__(self,**kwargs): 740 800 AbstractFeatureCollection.__init__(self,**kwargs) 741 801 children={'featureMembers':[[CSML('GridFeature'), CSML('GridSeriesFeature'),CSML('PointFeature'),CSML('TrajectoryFeature'),CSML('ProfileFeature'),CSML('ProfileSeriesFeature'),CSML('RaggedProfileSeriesFeature'),CSML('RaggedSectionFeature'),CSML('SectionFeature'),CSML('ScanningRadarFeature'),CSML('PointSeriesFeature'),CSML('AlternatePointFeature')], 'AbstractFeature', GML('featureMember'),1]} 742 743 addchildren(self,children)802 addchildren(self,children) 803 csElement.__init__(self,**kwargs) 744 804 def _getSubstitutionType(self,tag): 745 805 if tag==CSML('GridFeature'): … … 801 861 AbstractGML.__init__(self,**kwargs) 802 862 children = {'featureCollection':[CSML('CSMLFeatureCollection') ,'CSMLFeatureCollection'],'storageDescriptor':[CSML('CSMLStorageDescriptor'), 'CSMLStorageDescriptor']} 803 804 addchildren(self,children) 863 addchildren(self,children) 864 csElement.__init__(self,**kwargs) 865 805 866 def toXML(self): 806 867 csmlfrag=ET.Element(CSML('Dataset'))
Note: See TracChangeset
for help on using the changeset viewer.