
On Mon, Jan 04, 2010 at 11:26:39PM +0200, Marko Mäkelä wrote:
The bug apparently is in the relation parser, in the way how uk.me.parabola.mkgmap.reader.osm.Relation.addElement() is invoked.
Fixed in src/uk/me/parabola/mkgmap/reader/osm/xml/Osm5XmlHandler.java revision 1466.
Another bug in Relation.addElement() is that it allows members to occur in at most one role. Route relations can legitimately contain members multiple times in different roles.
This only affects style files containing apply role=blah {} constructs. Only one role of the member element would be recorded. I plan to address that by defining Relation.roles as a poor man's MultiMap, similar to what I did in Osm5XmlHandler.deferredRelationMap. (Only the role information will be lost. All relation members will be recorded in order, because otherwise apply_once would not have been necessary.) Marko