Good feedback Peter and thanks for passing along the Crossing wiki.  Some comments below:<br><br><div class="gmail_quote">On Tue, Sep 14, 2010 at 10:39, Peter Wendorff <span dir="ltr"><<a href="mailto:wendorff@uni-paderborn.de">wendorff@uni-paderborn.de</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">

  
    
  
  <div text="#000000" bgcolor="#ffffff">
    Hi.<br>
    <br>
    On 14.09.2010 18:59, Sean Horgan wrote:
    <blockquote type="cite">[...]</blockquote><div class="im">
    <blockquote type="cite">Also, if I wanted to capture specific data about that
      they offered, I'd like to follow the amenity:recycling tagging
      scheme (<span style="font-family:Verdana;font-size:13px"><a href="http://wiki.openstreetmap.org/wiki/Tag:amenity%3Drecycling" style="color:rgb(85, 26, 139)" target="_blank">http://wiki.openstreetmap.org/wiki/Tag:amenity%3Drecycling</a>):</span>
      <div><span style="font-family:Verdana;font-size:13px"><br>
        </span></div>
      <div><span style="font-family:Verdana;font-size:13px">+ homeless_shelter:programs=jobs</span></div>
      <div><span style="font-family:Verdana;font-size:13px">+ homeless</span><span style="font-family:Verdana;font-size:13px">_shelter</span><span style="font-family:Verdana;font-size:13px">:meals_served=breakfast</span></div>


      
      
      <div><span style="font-family:Verdana;font-size:13px">+ homeless</span><span style="font-family:Verdana;font-size:13px">_shelter</span><span style="font-family:Verdana;font-size:13px">:lodging=yes</span></div>
      
      <div><span style="font-family:Verdana;font-size:13px">+ homeless</span><span style="font-family:Verdana;font-size:13px">_shelter</span><span style="font-family:Verdana;font-size:13px">:emergency_medical=yes </span></div>


      
      <div><br>
      </div>
      <div>Is this a good model to follow?</div>
    </blockquote></div>
    I'm not sure.<br>
    I think, there are two general approaches to simulate a tree-style
    tagging scheme like this.<br>
    The first is to use more keys (as you do here with
    homeless_shelter:*), the second is to use more values and to
    concatenate multiple values by ; (like you will have at<br>
    homeless_shelter:meals_served=breakfast;lunch<br>
    (compare crossing=island;traffic_signals)<br>
    <br></div></blockquote><div><br></div><div>Ok, I'm following you.  Similar to amenity:recycling, many of the examples in Crossing follow a yes/no model:</div><div><br></div><span class="Apple-style-span" style="font-family: sans-serif; font-size: 12px; border-collapse: collapse; line-height: 19px; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; "><p style="margin-top: 0.4em; margin-right: 0px; margin-bottom: 0.5em; margin-left: 0px; line-height: 1.5em; ">

<tt dir="ltr" style="background-color: rgb(224, 224, 240); white-space: pre; "><a href="http://wiki.openstreetmap.org/wiki/Key:traffic_signals:sound" title="Key:traffic signals:sound" style="text-decoration: none; color: rgb(6, 69, 173); background-image: none; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: initial; background-position: initial initial; background-repeat: initial initial; ">traffic_signals:sound</a>=<a href="http://wiki.openstreetmap.org/w/index.php?title=Tag:traffic_signals:sound%3Dyes/no&action=edit&redlink=1" class="new" title="Tag:traffic signals:sound=yes/no (page does not exist)" style="text-decoration: none; color: rgb(204, 34, 0); background-image: none; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: initial; background-position: initial initial; background-repeat: initial initial; ">yes/no</a></tt></p>

<p style="margin-top: 0.4em; margin-right: 0px; margin-bottom: 0.5em; margin-left: 0px; line-height: 1.5em; "><tt dir="ltr" style="background-color: rgb(224, 224, 240); white-space: pre; "><a href="http://wiki.openstreetmap.org/wiki/Key:traffic_signals:vibration" title="Key:traffic signals:vibration" style="text-decoration: none; color: rgb(6, 69, 173); background-image: none; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: initial; background-position: initial initial; background-repeat: initial initial; ">traffic_signals:vibration</a>=<a href="http://wiki.openstreetmap.org/w/index.php?title=Tag:traffic_signals:vibration%3Dyes/no&action=edit&redlink=1" class="new" title="Tag:traffic signals:vibration=yes/no (page does not exist)" style="text-decoration: none; color: rgb(204, 34, 0); background-image: none; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: initial; background-position: initial initial; background-repeat: initial initial; ">yes/no</a></tt></p>

<p style="margin-top: 0.4em; margin-right: 0px; margin-bottom: 0.5em; margin-left: 0px; line-height: 1.5em; "><tt dir="ltr" style="background-color: rgb(224, 224, 240); white-space: pre; "><a href="http://wiki.openstreetmap.org/wiki/Key:traffic_signals:arrow" title="Key:traffic signals:arrow" style="text-decoration: none; color: rgb(6, 69, 173); background-image: none; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: initial; background-position: initial initial; background-repeat: initial initial; ">traffic_signals:arrow</a>=<a href="http://wiki.openstreetmap.org/w/index.php?title=Tag:traffic_signals:arrow%3Dyes/no&action=edit&redlink=1" class="new" title="Tag:traffic signals:arrow=yes/no (page does not exist)" style="text-decoration: none; color: rgb(204, 34, 0); background-image: none; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: initial; background-position: initial initial; background-repeat: initial initial; ">yes/no</a></tt></p>

</span><div><span class="Apple-style-span" style="font-family: monospace; font-size: 12px; border-collapse: collapse; line-height: 18px; white-space: pre; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; "><a href="http://wiki.openstreetmap.org/wiki/Key:traffic_signals:minimap" title="Key:traffic signals:minimap" style="text-decoration: none; color: rgb(6, 69, 173); background-image: none; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: initial; background-position: initial initial; background-repeat: initial initial; ">traffic_signals:minimap</a>=<a href="http://wiki.openstreetmap.org/w/index.php?title=Tag:traffic_signals:minimap%3Dyes/no&action=edit&redlink=1" class="new" title="Tag:traffic signals:minimap=yes/no (page does not exist)" style="text-decoration: none; color: rgb(204, 34, 0); background-image: none; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: initial; background-position: initial initial; background-repeat: initial initial; ">yes/no</a></span></div>

<div><br></div><div><span class="Apple-style-span" style="font-family: monospace; font-size: 12px; border-collapse: collapse; line-height: 18px; white-space: pre; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; "><a href="http://wiki.openstreetmap.org/w/index.php?title=Tag:traffic_signals:minimap%3Dyes/no&action=edit&redlink=1" class="new" title="Tag:traffic signals:minimap=yes/no (page does not exist)" style="text-decoration: none; color: rgb(204, 34, 0); background-image: none; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: initial; background-position: initial initial; background-repeat: initial initial; "></a></span>However, for a finite and relative small (< 10) set of values, I prefer a multivalued value string like "homeless_shelter:meals=breakfast;lunch" over something like this:</div>

<div><br></div><div>homeless_shelter:breakfast=yes</div><div><div>homeless_shelter:lunch=yes</div></div><div><div><div>homeless_shelter:dinner=no</div></div></div><div><br></div><div>For amenity:recycling, there is no limit to what could be recycled so I think it makes more sense to follow the yes/no model as a single value could get extremely large.  The same appears to go for traffic_signals (I never thought you could break those down so discretely!).</div>

<div><br></div></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div text="#000000" bgcolor="#ffffff">
    Both are good for some reasons: <br>
    using less keys provides easy access for the whole group of values;<br>
    using less values is more easy to parse and search - there is no
    string slicing needed.<br>
    <br>
    But:<br>
    I would not mix these together.<br></div></blockquote><div><br></div><div>I prefer consistency as well but I think I would only apply that for a particular tag.  To continue the meals example, homeless_shelter:meals could be defined as a multivalued list from a set of known values (e.g. {no;breakfast;lunch;dinner;takeout}) while a list of programs/services offered by the shelter would follow the yes/no model:</div>

<div><br></div><div><span class="Apple-style-span" style="font-family: Verdana; font-size: 13px; "><div style="margin-top: 0px; margin-bottom: 0px; ">+ homeless_shelter:lodging=yes</div>+ homeless_shelter:meals=no<br><div style="margin-top: 0px; margin-bottom: 0px; ">

+ homeless_shelter:job_placement=yes</div><div style="margin-top: 0px; margin-bottom: 0px; ">+ homeless_shelter:veterans_services=yes<br>+ homeless_shelter:emergency_medical=yes <br></div><div><br></div><div><br></div><font class="Apple-style-span" face="arial"><span class="Apple-style-span" style="font-size: small;">Feedback is greatly appreciated!</span></font></span></div>

<div><span class="Apple-style-span" style="font-family: Verdana; font-size: 13px; "><font class="Apple-style-span" face="arial"><span class="Apple-style-span" style="font-size: small;"><br></span></font></span></div><div>

<span class="Apple-style-span" style="font-family: Verdana; font-size: 13px; "><font class="Apple-style-span" face="arial"><span class="Apple-style-span" style="font-size: small;">--<br>Sean</span></font></span></div><div>

<span class="Apple-style-span" style="font-family: Verdana; font-size: 13px; "><font class="Apple-style-span" face="arial"><span class="Apple-style-span" style="font-size: small;"><br></span></font></span></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">

<div text="#000000" bgcolor="#ffffff"><font class="Apple-style-span" face="Verdana"><br></font>
    Perhaps that's only my POV - feel free to argument against.<br>
    <br>
    regards<br>
    Peter<br>
  </div>

<br>_______________________________________________<br>
Tagging mailing list<br>
<a href="mailto:Tagging@openstreetmap.org">Tagging@openstreetmap.org</a><br>
<a href="http://lists.openstreetmap.org/listinfo/tagging" target="_blank">http://lists.openstreetmap.org/listinfo/tagging</a><br>
<br></blockquote></div><br>