<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 12pt;
font-family:Calibri
}
--></style></head>
<body class='hmmessage'><div dir='ltr'>Hi Bernd,<br><br>I think the no-dup-rule-evaluation-v2.patch solves this problem.<br>The logging function for the style stats now shows more clearly<br>how a single rule in the style file is translated into one or more rules,<br>e.g. (a |b | c) & (e | f) { action xyz}<br>is translated to <br>(a ) & (e | f) { action xyz}<br>(b) & (e | f) { action xyz}<br>(c) & (e | f) { action xyz}<br><br>Without the patch it is possible that each part is executed.<br><br>The style stats will now look like this:<br>INFO: uk.me.parabola.mkgmap.osmstyle.stats 63240001.o5m: points stats (rule/evals/true) <b>rule-id: 16</b> ((($public_transport='platform')&($ref=*|$route_ref=*)) | ((($highway='bus_stop')|(($railway='tram_stop')|(($railway='halt')|($railway='station'))))&($ref=*|$route_ref=*))) {set ref='${ref}(${route_ref})';}/95/60<br>INFO: uk.me.parabola.mkgmap.osmstyle.stats 63240001.o5m: points stats (rule/evals/true) <b>rule-id: 16</b> ((($highway='bus_stop')&($ref=*|$route_ref=*)) | ((($railway='tram_stop')|(($railway='halt')|($railway='station')))&($ref=*|$route_ref=*))) {set ref='${ref}(${route_ref})';}/984/490<br>INFO: uk.me.parabola.mkgmap.osmstyle.stats 63240001.o5m: points stats (rule/evals/true)<b> rule-id: 16</b> ((($railway='tram_stop')&($ref=*|$route_ref=*)) | ((($railway='halt')|($railway='station'))&($ref=*|$route_ref=*))) {set ref='${ref}(${route_ref})';}/0/0<br>INFO: uk.me.parabola.mkgmap.osmstyle.stats 63240001.o5m: points stats (rule/evals/true) <b>rule-id: 16 </b>((($railway='halt')&($ref=*|$route_ref=*)) | (($railway='station')&($ref=*|$route_ref=*))) {set ref='${ref}(${route_ref})';}/11/11<br>INFO: uk.me.parabola.mkgmap.osmstyle.stats 63240001.o5m: points stats (rule/evals/true) <b>rule-id: 16</b> # Part of the previous OR expression: ((($railway='station')&($ref=*|$route_ref=*))) {set ref='${ref}(${route_ref})';}/23/9<br><br>Gerd<br><br><div>> From: weigelt.bernd@web.de<br>> To: mkgmap-dev@lists.mkgmap.org.uk<br>> Date: Mon, 2 Feb 2015 09:35:26 +0100<br>> Subject: Re: [mkgmap-dev] Bug in handling of bus stops<br>> <br>> Am Sonntag, 1. Februar 2015, 11:42:38 schrieb GerdP:<br>> > This is clearly not intended and should be fixed.<br>> <br>> Hi<br>> FYI<br>> <br>> Franco fixed this in May 2014 in our style with this workaround<br>> <br>> https://github.com/berndw1960/aiostyles/commit/0209b139bd7ec07ff24a31d86ba30194b5b2f268<br>> <br>> public_transport=platform &<br>> (amenity=bus_station |<br>> highway=bus_stop |<br>> railway=tram_stop |<br>> railway=halt |<br>> railway=station)<br>> <br>> {<br>> #eliminate double ^ or double - ; no idea why they are entered twice otherwise<br>>         delete public_transport;<br>> }<br>> <br>> <br>> Bernd<br>> _______________________________________________<br>> mkgmap-dev mailing list<br>> mkgmap-dev@lists.mkgmap.org.uk<br>> http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev<br></div>                                            </div></body>
</html>