- assigned_to: nobody --> detrout
In the code 'classAttribute =
self.currentTable.getAttributeByName(class_name, None)'
in parseGenexSchemaXML.py, classAttribute becomes none.
and then breaks when 'classAttribute.setUnique(1)' is
called. I added
a run time warning to parseGenexSchemaXML.py to see
what is the last attribute that is referenced before it
crashes. According to the debug ouput below
'RuntimeWarning: Class Name: identifier
warn('Class Name: %s' % (class_name),
RuntimeWarning)', it's identifier from Identifiable.xml
I can't see a reason why that would cause an error at
this point in time. Any ideas?
---parseGenexSchemaXML.py---
elif name == "unique":
# get the list of unique fields and set an
inidcator flag
class_names = attributes['column_ids']
class_name_list = re.split("\s+", class_names)
for class_name in class_name_list:
warn('Class Name: %s' % (class_name),
RuntimeWarning)
classAttribute =
self.currentTable.getAttributeByName(class_name, None)
classAttribute.setUnique(1)
---parseGenexSchemaXML.py---
-----output--------
Element: linking_keys([u'link1', u'link2'])
/usr/lib/python2.2/site-packages/pymerase/input/parseGenexSchemaXML.py:379:
RuntimeWarning: Class Name: pba_fk
warn('Class Name: %s' % (class_name), RuntimeWarning)
/usr/lib/python2.2/site-packages/pymerase/input/parseGenexSchemaXML.py:379:
RuntimeWarning: Class Name: ef_fk
warn('Class Name: %s' % (class_name), RuntimeWarning)
/usr/lib/python2.2/site-packages/pymerase/input/parseGenexSchemaXML.py:379:
RuntimeWarning: Class Name: value
warn('Class Name: %s' % (class_name), RuntimeWarning)
/usr/lib/python2.2/site-packages/pymerase/input/parseGenexSchemaXML.py:379:
RuntimeWarning: Class Name: feature_fk
warn('Class Name: %s' % (class_name), RuntimeWarning)
Element: linking_keys([u'link1', u'link2'])
/usr/lib/python2.2/site-packages/pymerase/input/parseGenexSchemaXML.py:379:
RuntimeWarning: Class Name: ams_fk
<snip>
/usr/lib/python2.2/site-packages/pymerase/input/parseGenexSchemaXML.py:379:
RuntimeWarning: Class Name: make
warn('Class Name: %s' % (class_name), RuntimeWarning)
/usr/lib/python2.2/site-packages/pymerase/input/parseGenexSchemaXML.py:379:
RuntimeWarning: Class Name: producer_con_fk
warn('Class Name: %s' % (class_name), RuntimeWarning)
Element: linking_keys([u'link1', u'link2'])
/usr/lib/python2.2/site-packages/pymerase/input/parseGenexSchemaXML.py:379:
RuntimeWarning: Class Name: identifier
warn('Class Name: %s' % (class_name), RuntimeWarning)
Traceback (most recent call last):
File "./driver.py", line 17, in ?
pymerase.output.CreateGraphvizUML)
File
"/usr/lib/python2.2/site-packages/pymerase/__init__.py",
line 300, in run
parsedInput = translator.read(source, None, {})
File
"/usr/lib/python2.2/site-packages/pymerase/__init__.py",
line 271, in read
parsedInput = inputTranslator.read(source,
self.pymeraseConfig, classesInModel)
File
"/usr/lib/python2.2/site-packages/pymerase/input/parseGenexSchemaXML.py",
line 409, in read
parser.parse()
File
"/usr/lib/python2.2/site-packages/pymerase/input/parseGenexSchemaXML.py",
line 190, in parse
self.addFile(f)
File
"/usr/lib/python2.2/site-packages/pymerase/input/parseGenexSchemaXML.py",
line 211, in addFile
parser.parse(pathname)
File
"/usr/lib/python2.2/site-packages/_xmlplus/sax/expatreader.py",
line 107, in parse
xmlreader.IncrementalParser.parse(self, source)
File
"/usr/lib/python2.2/site-packages/_xmlplus/sax/xmlreader.py",
line 123, in parse
self.feed(buffer)
File
"/usr/lib/python2.2/site-packages/_xmlplus/sax/expatreader.py",
line 207, in feed
self._parser.Parse(data, isFinal)
File
"/usr/lib/python2.2/site-packages/_xmlplus/sax/expatreader.py",
line 300, in start_element
self._cont_handler.startElement(name,
AttributesImpl(attrs))
File
"/usr/lib/python2.2/site-packages/pymerase/input/parseGenexSchemaXML.py",
line 381, in startElement
classAttribute.setUnique(1)
AttributeError: 'NoneType' object has no attribute
'setUnique'