If the second assocation end is an interface, the
program fails.
Suggested solution (at line 625 MisterModel.pm):
$partobj = $association_end-
>getElementsByTagName
('UML:AssociationEnd.participant')->item(0);
# is this participant a UML:Class?
$part = $partobj->getElementsByTagName
('UML:Class')->item(0);
# if not, is it a UML:Interface?
if (not defined $part) {
$part = $partobj->getElementsByTagName
('UML:Interface')->item(0);
}
# don't know what it is: print an error
if (not defined $part) {
print "Trying to get end for this assocation.\n";
print "Known types: UML:Class, UML:Interface \n";
print "Available children:\n";
foreach my $node ($partobj->getChildNodes()) {
if ($node->getNodeType() == 1) { #nodeType 3
is Element
print "\t".$node."(".$node->getTagName().")\n";
} else {
print "\t".$node."\n";
}
}
}
Chris