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

Parser.py - AbstractArrayDescriptor?.uom can now accept a UnitDefinition? object or a reference to a UnitDefinition?)
parser_extra.py - uom now resolved in post-processing step

File:
1 edited

Legend:

Unmodified
Added
Removed
  • TI02-CSML/trunk/newparser/Parser.py

    r809 r812  
    13711371    AbstractArrayDescriptor(AbstractGML): 
    13721372     +arraySize[1..*]: int 
    1373      +uom[0..1]: anyURI 
     1373     +uom[0..1]: anyURI  #Amended to also take a 'UnitDefinition' - needed to resolve internal references 
    13741374     +numericType[0..1]: string 
    13751375     +regExpTransform[0..1]: string 
     
    13951395                self.arraySize = map(int,frag.text.split()) 
    13961396            elif frag.tag == CSML('uom'): 
    1397                 self.uom = frag.text 
     1397                if frag.getchildren() !=[]: 
     1398                    subFrag= frag.getchildren()[0] 
     1399                    if subFrag.tag == GML ('UnitDefinition'): 
     1400                        self.uom=UnitDefinition() 
     1401                        UnitDefinition.fromXML(self.uom, subFrag) 
     1402                else: 
     1403                    self.uom=frag.text 
     1404                 
     1405                 
    13981406            elif frag.tag == CSML('numericType'): 
    13991407                self.numericType = frag.text 
     
    14101418        if hasattr(self,'uom'): 
    14111419            frag = Element(CSML('uom')) 
    1412             frag.text = self.uom 
     1420            if isinstance(self.uom,UnitDefinition): 
     1421                subFrag=Element(GML('UnitDefinition')) 
     1422                UnitDefinition.toXML(self.uom,subFrag) 
     1423                frag.append(subFrag) 
     1424            else: 
     1425                frag.text = self.uom 
    14131426            csmlFrag.append(frag) 
    14141427        if hasattr(self,'numericType'): 
Note: See TracChangeset for help on using the changeset viewer.