mkgmap and values with semicolon in it

Hi, I haven't found anything about this beside a very old mail, that mkgmap does not support it. There are several entries with key=value1;value2, means there are several values with a semicolon seperated. All this entries are missing in my created map, so I assume that this still does not work? Or should it be? One of my rules for example is: amenity=vending_machine & (vending=parcel_pickup | vending=parcel_mail_in) .. The entries with: amenity=vending_machine vending=parcel_pickup or amenity=vending_machine vending=parcel_mail_in are rendered, but all points with: amenity=vending_machine vending=parcel_pickup;parcel_mail_in are not. Can mkgmap really not handle that? Is there any workaround? Thanks, Thorsten -- Thorsten Kukuk, Project Manager/Release Manager SLES SUSE LINUX Products GmbH, Maxfeldstr. 5, D-90409 Nuernberg GF: Markus Rex, HRB 16746 (AG Nuernberg)

Hi,
I haven't found anything about this beside a very old mail, that mkgmap does not support it. There are several entries with key=value1;value2, means there are several values with a semicolon seperated. All this entries are missing in my created map, so I assume that this still does not work? Or should it be?
One of my rules for example is: amenity=vending_machine& (vending=parcel_pickup | vending=parcel_mail_in) ..
The entries with: amenity=vending_machine vending=parcel_pickup
or
amenity=vending_machine vending=parcel_mail_in
are rendered, but all points with:
amenity=vending_machine vending=parcel_pickup;parcel_mail_in
are not. Can mkgmap really not handle that? Is there any workaround?
Thanks, Thorsten
Thorsten, what would you expect? - Two POIs at the same location? - One POI at the same location? - Two POIs at the same location if the two tags will be assigned with different garmin ids and one POI if will be assigned with same garmin id? WanMil

Am 24.02.2011 21:55, schrieb WanMil:
what would you expect? - Two POIs at the same location? - One POI at the same location? - Two POIs at the same location if the two tags will be assigned with different garmin ids and one POI if will be assigned with same garmin id? But be careful...there are also tags like surface=grass;asphalt at some streets or other tags with opposed meaning.
Henning

On Thu, Feb 24, WanMil wrote:
Hi,
I haven't found anything about this beside a very old mail, that mkgmap does not support it. There are several entries with key=value1;value2, means there are several values with a semicolon seperated. All this entries are missing in my created map, so I assume that this still does not work? Or should it be?
One of my rules for example is: amenity=vending_machine& (vending=parcel_pickup | vending=parcel_mail_in) ..
The entries with: amenity=vending_machine vending=parcel_pickup
or
amenity=vending_machine vending=parcel_mail_in
are rendered, but all points with:
amenity=vending_machine vending=parcel_pickup;parcel_mail_in
are not. Can mkgmap really not handle that? Is there any workaround?
Thanks, Thorsten
Thorsten,
what would you expect? - Two POIs at the same location? - One POI at the same location? - Two POIs at the same location if the two tags will be assigned with different garmin ids and one POI if will be assigned with same garmin id?
My expectation is that mkgmap handles "vending=parcel_pickup;parcel_mail_in" in the same way as if there are two tags: "vending=parcel_pickup" and "vending=parcel_mail_in" If there are one or two POIs at the same location would depend on the rules in the style file. As of today, where you can put two POIs at the same location, too. Currently there is a mismatch between what the OSM API 0.6 allows/requires and mkgmap makes out of them. And I don't think that rewriting all rules in something like "key~'.*value*.' is a good idea. Thorsten -- Thorsten Kukuk, Project Manager/Release Manager SLES SUSE LINUX Products GmbH, Maxfeldstr. 5, D-90409 Nuernberg GF: Markus Rex, HRB 16746 (AG Nuernberg)

Thorsten, I'm not very good at this, but had a similar problem that was solved by something like: amenity=vending_machine& vending~'.*parcel.*' [0x3006 resolution 18] I believe vending~'.*parcel.*' means the vending tag contains the word parcel, but I think the rule has to start with a regular expression like "amenity=vending_machine" Hope I'm not totally off base here BennieD

to add to my previous post: if you want two points: amenity=vending_machine& vending~'.*parcel_pickup.*' [0x3006 resolution 18 continue] amenity=vending_machine& vending~'.*parcel_mail_in.*' [0x3006 resolution 18] if you want one point, I wonder if the following will work? amenity=vending_machine& vending~'.*parcel_mail_in.*'& vending~'.*parcel_pickup.*' {set name=Parcel_in_out}[0x3006 resolution 18] for someone who knows so little, I'm talking way too much now BennieD

I think the best approach would be to cut values of any keys/tags but name and ref (or having "name" or "ref" as part of their key ) at the semicolon for the lines and polygons file. As for the points file all values with ";" should be seperated and cloned. So for amenity=hotel;restaurant & name=abc create two POI one matching all rules of amenity=restaurant and the second matching all rules amenity=hotel. Still everyone using semicolons should know that this tagging is potentially complicated and not usable and using semicolons is not good form of tagging.

Hi
I think the best approach would be to cut values of any keys/tags but name and ref (or having "name" or "ref" as part of their key ) at the semicolon for the lines and polygons file.
As for the points file all values with ";" should be seperated and cloned. So for amenity=hotel;restaurant& name=abc create two POI one matching all rules of amenity=restaurant and the second matching all rules amenity=hotel.
Still everyone using semicolons should know that this tagging is potentially complicated and not usable and using semicolons is not good form of tagging. +1 Seems to be a good proposal!
Henning

On Thu, Feb 24, Felix Hartmann wrote:
I think the best approach would be to cut values of any keys/tags but name and ref (or having "name" or "ref" as part of their key ) at the semicolon for the lines and polygons file.
As for the points file all values with ";" should be seperated and cloned. So for amenity=hotel;restaurant & name=abc create two POI one matching all rules of amenity=restaurant and the second matching all rules amenity=hotel.
Yes, I think that's the correct solution.
Still everyone using semicolons should know that this tagging is potentially complicated and not usable and using semicolons is not good form of tagging.
The problem is that the current OSM API does not allow the same key twice for a point. So there is no other possibility then to use the ";". From what I found out with google, using ";" is more or less the official solution for this. Thorsten -- Thorsten Kukuk, Project Manager/Release Manager SLES SUSE LINUX Products GmbH, Maxfeldstr. 5, D-90409 Nuernberg GF: Markus Rex, HRB 16746 (AG Nuernberg)

Felix Hartmann-2 wrote:
As for the points file all values with ";" should be seperated and cloned. So for amenity=hotel;restaurant & name=abc create two POI one matching all rules of amenity=restaurant and the second matching all rules amenity=hotel.
-1 Semicolons make only sense in the most simple cases: Only one tag using them and values that are menaingful as a list. You cannot formulate a general rule for evaluation because there are cases: - where several tags use semicolons: It is undefined whether that means corresponding lists or whether you'd have to cross-multiply all those lists or whether the intended meaning is even more complex - where the semicolons were introduced during a geometry merge in an editor. In this case it has the meaning of "fixme". E.g. highway=tertiary;track - some semicolons are actually _intended_ as a single value. I personally think this is complete nonsense, but people are using it, namely burg;schloss is intended as ONE value, not a list. Felix Hartmann-2 wrote:
Still everyone using semicolons should know that this tagging is potentially complicated and not usable and using semicolons is not good form of tagging.
+1 That sums it up nicely. It does not work, don't use it. And don't try to build half-hearted support for only the simple cases. :-) bye Nop -- View this message in context: http://gis.638310.n2.nabble.com/mkgmap-and-values-with-semicolon-in-it-tp606... Sent from the Mkgmap Development mailing list archive at Nabble.com.

On Fri, Feb 25, NopMap wrote:
Felix Hartmann-2 wrote:
Still everyone using semicolons should know that this tagging is potentially complicated and not usable and using semicolons is not good form of tagging.
+1
That sums it up nicely. It does not work, don't use it. And don't try to build half-hearted support for only the simple cases. :-)
Same as for Felix: Please provide an alternative form of tagging, which does not need semicolons. Thorsten -- Thorsten Kukuk, Project Manager/Release Manager SLES SUSE LINUX Products GmbH, Maxfeldstr. 5, D-90409 Nuernberg GF: Markus Rex, HRB 16746 (AG Nuernberg)

On Fri, Feb 25, 2011 at 11:36:11PM +0100, Thorsten Kukuk wrote:
Same as for Felix: Please provide an alternative form of tagging, which does not need semicolons.
We do not write recycling=paper;plastic;cardboard. The alternative form that is already used for this case is simple: recycling:paper=yes, recycling:plastic=yes, recycling:cardboard=yes. I think that the main problem is the amenity=* key. It is too generic, capturing all sorts of unrelated things. I hope that it will be gradually be replaced by more specific keys, such as healthcare=* and tourism=*. To fix the example of restaurant&hotel, perhaps something like tourism:accommodation=hotel, tourism:food=restaurant would do the trick. Marko
participants (7)
-
Bennie du Plessis
-
Felix Hartmann
-
Henning Scholland
-
Marko Mäkelä
-
NopMap
-
Thorsten Kukuk
-
WanMil