I've been making a seperate node for each tag whenever I run into this situation.  It's not the best solution, but it gets the job done.<br><br>The best fix I can think of would probably require an API change, but it'd probably end up being easier on the database server in the long run.  Basically, we need to use an overloading method similar to the karlsruhe schema for the shop=* and amenity=* tags to allow more than one attribute on a node/polygon.  <br>

<br>This was one of the first headaches I ran into when I first started mapping.  It's a pretty classic example of a <a href="http://en.wikipedia.org/wiki/Database_normalization">database normalization</a> problem when you have an object with both many->many and one->many relationships.<br>

<br>To use Thea's super wally-world example, we need to apply the following attributes:<br>shop=supermarket<br>shop=hairdresser<br>shop=department_store<br>amenity=pharmacy<br>dispensing=yes<br>shop=car_repair<br>shop=optician<br>

shop=garden_center<br>amenity=fuel<br>amenity=fast_food<br>cuisine=sandwich<br><br>While this is pretty straightforward for a human to read, the API has no real way of handling multiple values on the same tag.  A slightly more machine-readable set of attributes would read like this:<br>

<br>shop:supermarket=yes<br>shop:hairdresser=yes<br>shop:department_store=yes<br>amenity:pharmacy=dispensing (implies a yes)<br>shop:car_repair=yes<br>shop:optician=yes<br>shop:garden_center=yes<br>amenity:fuel=yes<br>amenity:fast_food=sandwich (implies a yes)<br>

<br>Of course, a change this big would require a ton of work to bring the existing tags up to the new spec, but as a trade-off it would make querying the database and/or compiling a vector map a lot easier.<br><br>Chris<br>

<br><br><div class="gmail_quote">On Thu, Nov 12, 2009 at 5:24 PM, Russ Nelson <span dir="ltr"><<a href="mailto:nelson@crynwr.com">nelson@crynwr.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">

We kinda have this problem all over the place: anywhere you have<br>
multiple places of business where you enter into the building at the<br>
same location for all of them.  This could be a mall, or a Wal-Mart,<br>
or a two-story building with a store on each level.<br>
<br>
We currently have no markup for accurately mapping this situation.<br>
Earn yourself a LOLCat of Awesomeness and design markup that works.<br>
<font color="#888888">-russ<br>
</font><div><div></div><div class="h5"><br>
Thea Clay writes:<br>
 > Hi,<br>
 > I have a random question... does anyone have suggestions for how I would correctly tag a Super Wal-Mart? I read through the wiki but there didn't appear to be a tag that fit.<br>
 ><br>
 > The store in question has a 1.) a full grocery store with bakery/deli/produce/dry goods, 2.) a full service hair and nail salon, 3.) clothes and typical random household items, 4.) a pharmacy, 5.) a full service car lube and tire shop, 6.) an opthamologist and RX glasses shop, 7.) a garden center/nursery, 8.) a gas station and 9.) a Subway sandwich shop. All of these sub-stores are located within the same building and are part of Wal-Mart, not multiple stores located in a strip mall. Scary right :) Is this tagged as one store (which it is in reality) or multiple specialty shops?<br>


 ><br>
 > To complicate matters, there is a difference between a Super Wal-Mart and regular Wal-Mart/Target/Big Box Store. And Super Wal-Marts all seem to have slightly different variations on the types of shops they have in each store.<br>


<br>
</div></div><div class="im">--<br>
--my blog is at    <a href="http://blog.russnelson.com" target="_blank">http://blog.russnelson.com</a><br>
Crynwr supports open source software<br>
521 Pleasant Valley Rd. | +1 315-323-1241<br>
Potsdam, NY 13676-3213  |     Sheepdog<br>
<br>
_______________________________________________<br>
</div><div><div></div><div class="h5">Talk-us mailing list<br>
<a href="mailto:Talk-us@openstreetmap.org">Talk-us@openstreetmap.org</a><br>
<a href="http://lists.openstreetmap.org/listinfo/talk-us" target="_blank">http://lists.openstreetmap.org/listinfo/talk-us</a><br>
</div></div></blockquote></div><br>