<div dir="ltr"><div><br></div>Misschien beter om de lijsten van appartementsnummers en busnummers te splitsen. Zelf begrijp ik het verschil nog niet goed, maar als we het eenmaal begrijpen, dan moet de data tenminste niet opnieuw gegenereerd worden.<br><div><br><div class="gmail_extra"><br><div class="gmail_quote">Op 29 oktober 2014 19:52 schreef Thomas <span dir="ltr"><<a href="mailto:osm@aptum.nl" target="_blank">osm@aptum.nl</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
  
    
  
  <div text="#000000" bgcolor="#FFFFFF">
    <div>Ik heb het script nu verder uitgerust
      met een aantal data-integriteits-checks rond postcode / gemeente.
      Daaruit blijken toch nog wat bijzondere dingen waar ik het script
      op moet aanpassen. Zo blijkt dat een straat (zoals geïdentificeerd
      door zijn ID in de adressenlijst) in meerdere postcodes kan
      voorkomen, maar nooit in meerdere gemeenten. Een gemeente bestaat
      uiteraard uit meerdere postcodes. Daarnaast kan 1 postcode zich in
      meerdere gemeenten bevinden. Halleluja; lees deze alinea nog maar
      3 keer opnieuw...<br>
      <br>
      Op dit moment identificeren we op basis van postcode → straat. Dat
      houdt in dat we nu een aantal straten splitsen over de postcode,
      terwijl we op basis van de data die straten zouden kunnen
      samenhouden. Mogelijk (nouja; dat ben ik wel zeker) zijn straten
      ook gesplitst op gemeentegrenzen, maar deze dataset biedt daar
      geen mogelijkheden voor.<br>
      <br>
      Mijn script pikt nu deze over-postcodes-heen-gesplitste-straten
      op; het gaat om 1920 unieke straten die meestal over 2 maar soms
      over 3 postcodes heen gesplitst zijn. Mijn script biedt al heel
      wat mogelijkheden om hier mee om te gaan, maar we moeten het
      natuurlijk wel eens zijn over wat wenselijk is.<br>
      <br>
      Concreet betekent het in feite dat als we onderscheid maken op
      basis van een postcode, we onherroepelijk straten zullen splitsen.
      We kunnen ervoor kiezen om de data per gemeente te ordenen, maar
      dan wordt de hoeveelheid data per gemeente bijna 2 keer zo groot
      als de data nu per postcode (er zijn in totaal 308 gemeenten en
      519 postcodes). Gezien de nu vaak al grote hoeveelheid straten per
      postcode is dit misschien onwenselijk. Zeker omdat het volgens mij
      vaak al de stedelijke gemeenten zijn die meerdere postcodes
      hebben. Die gemeenten gaan dan van zeer grote stratenlijsten naar
      enorme stratenlijsten. Een alternatief is die straten in beide
      postcodegebieden op te nemen. Dat vind ik ook geen nette
      uitwerking omdat je dan redundancy krijgt in de de JSON-bestanden.
      <br>
      <br>
      Volgens mij is dan de beste optie om per straat in de
      postcode-JSON-bestanden een extra JSON-attribuut mee te geven die
      aangeeft of de straat doorloopt in een andere gemeente. Dat zie ik
      in de vorm van een lijst van postcodes per straat waar de straat
      in doorloopt. Dat kan met wat javascript uitgelezen worden. Die
      specifieke straat kan in datzelfde stuk javascript opgehaald
      worden en aan de betrokken straat toegevoegd worden. Als je het
      meer handmatig wil houden kun je vrij eenvoudig een knop toevoegen
      voor de gebruiker om die straat in de andere gemeenten mee in te
      laden. Op deze manier kan de opdeling per postcode gehandhaafd
      worden, maar is toch duidelijk op straat-niveau waar mappers mee
      rekening dienen te houden. Daarnaast is deze informatie mogelijk
      ook zeer belangrijk voor de scripts van Jo rond het koppelen van
      adressen/gebouwen aan een straat. Wat denken jullie hiervan?<br>
      <br></div></div></blockquote><div>Ik zie hier geen probleem in. Normaal moet een adres uniek zijn met postcode, straatnaam en huisnummer (het is toch op deze manier dat de Post - of bPost - brieven sorteert). Dus, hoewel een straat kan doorlopen in een andere postcode, kan het dan gebeuren dat de huisnummers niet meer uniek zijn (daar zijn genoeg voorbeelden van).<br><br></div><div>Aangezien we noch de postcode, noch de gemeentenaam taggen, noch de straat indelen met een associatedstreet relatie, is het dus voor ons niet zo belangrijk als een straat nu over meerdere postcodes loopt, over meerdere gemeenten, of als postcode- en gemeentegrenzen niet overeenkomen. Het enige waar we moeten voor zorgen is dat alle adressen wel degelijk onder een postcode ondergebracht zijn, en dat we geen verschillende adressen mergen.<br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div text="#000000" bgcolor="#FFFFFF"><div>
      Daarnaast speelt dus het tweede punt dat er een aantal postcodes
      over meerdere gemeenten heen lopen. Althans: dat er adrespunten
      zijn met dezelfde postcode die tot een andere gemeente behoren.
      Voor mijn script en onze opzet is dat op zich geen probleem, maar
      ook hier kan ik deze punten specifiek eruit lichten. Het gaat
      overigens 54 van de 519 postcodes; toch zo'n 10%. Daarbij zijn 81
      gemeenten betrokken; een kwart van het totaal aantal gemeenten.
      Het totaal aantal adrespunten draait zo rond de 250 adrespunten in
      totaal. Ik moet mijn script nog wat aanpassen om preciese cijfers
      hierover te hebben. Ruimtelijke samenhang is er niet: het komt
      nergens in aanzienlijk grotere mate voor dan elders. Hoewel soms
      gesteld wordt dat postcodes helemaal niet samenvallen met
      gemeenten, blijkt dat dit dus maar in 1 op de 15.000 gevallen NIET
      zo is. Meestal gaat het over 1 postcode die over twee gemeenten
      valt. In 7 van de 54 gevallen gaat het om een postcode die binnen
      3 gemeenten valt. Nooit gaat het om meer dan 3 gemeenten. <br>
      <br>
      Kort samengevat: op basis van de bij de adrespunten behorende
      gemeente kunnen we straten die door een postcode gesplitst worden
      weer aan elkaar plakken. Mijn idee is om een lijst van postcodes
      aan de straat te koppelen in de JSON, zodat in het javascript die
      gegevens verwerkt kunnen worden. Daarnaast zijn het
      postcodesysteem en de gemeentelijke indeling gescheiden systemen.
      Wordt daar in de verdere verwerking in OSM rekening mee gehouden?
      Onder andere bij de verschillende scripts die matching regelen is
      dat een belangrijk punt. Met mijn script kan ik “afwijkende”
      punten aangeven, maar dan moeten we wel weten op welke manier. Wat
      moeten we hiermee? <br></div></div></blockquote><div><br></div><div>Zowel de postcodes als de gemeentes worden op basis van  grenzen getekend. De straten als lijnen die binnen bepaalde van die grenzen liggen, en de adressen als punten die ook binnen bepaalde van die grenzen liggen. Aangezien dit project enkel focust op adressen, is het dus genoeg dat we het nummer en de straatnaam correct hebben. De rest zou al in OSM moeten zijn, en kan gecorrigeerd worden indien nodig.<br><br></div><div>Een verkeerde postcodegrens kan ook een oorzaak zijn van een "wrong" adres, maar in dat geval moet gewoon de postcodegrens verbeterd worden.<br><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div text="#000000" bgcolor="#FFFFFF"><div>
      <br>
      Groeten,<br>
      Thomas<br>
      <br>
      Sander Deryckere schreef op 29-10-2014 12:06:<br>
    </div><span class="">
    <blockquote type="cite">
      <div dir="ltr">
        <div>
          <div>
            <div>
              <div>Hoi Thomas,<br>
                <br>
              </div>
              Net het script wat verder aangepast voor de nieuwe data,
              en geuploaded naar jouw repo. Dus aan iedereen, gelieve
              vanaf nu vooral <a href="http://aptum.github.io/import.html" target="_blank">http://aptum.github.io/import.html</a>
              te testen,<br>
              <br>
            </div>
            Kan je de appartementsnummers en busnummers als aparte
            lijsten in de JSON zetten? Dan kan ik ook het script updaten
            om addr:flats te ondersteunen. Lijsten zijn het best
            aangezien ze gemakkelijker omgevormd kunnen worden naar de
            correcte formaat. Ook die best alfabetisch sorteren voor de
            diffs. En misschien enkel de lijsten aan de JSON toevoegen
            indien wel degelijk (dat zal bandbreedte sparen voor de vele
            adressen die geen busnummers of appartementsnummers hebben).<br>
            <br>
          </div>
          Aangezien de overlappende en de niet overlappende nummers nu
          in verschillende kolommen staan, is daar geen verschillende
          CSS voor nodig. Een verschillende CSS voor de herkomst kan wel
          helpen. Momenteel staat die herkomst nog in CRAB:source om de
          waarden gemakkelijk te kunnen aflezen. Dus momenteel die tags
          nog niet gaan uploaden.<br>
          <br>
        </div>
        Als het goed is voor iedereen, dan breng ik die tags naar de
        vorm <br>
        <ul>
          <li>odbl:note=CRAB:<span>manueleAanduidingVanGebouw</span></li>
          <li><span></span><span>odbl:note=CRAB:<span></span></span><span><span><span>geinterpoleerdObvNevenliggendeHuisnummersGebouw</span></span></span></li>
          <li><span>...<br>
            </span></li>
        </ul>
        <span>odbl:note lijkt mij de meest neutrale van alle
          discardable tags, en het voorvoegsel CRAB: kan zorgen voor
          unieke CSS selectors.</span> <br>
        <div><span><br>
          </span></div>
        <div><span>De grootste problemen momenteel zijn de
            huisnummers met een underscore. Ik kan moeilijk beslissen
            als ik die naar bis, ter, ... of naar /1, /2, /3, ... breng.
            Maar het overlaten aan de mapper kan er voor zorgen dat de
            huisnummers met een underscore rechtstreeks geuploaded
            worden.<br>
            <br>
          </span></div>
        <div><span>Het andere grote probleem is de spelling van
            de straatnaam. Dat is moeilijk om af te leiden met de
            beperkte OSM data die ik heb in de webpagina (vooral als er
            nog geen adressen in OSM zijn). Een spellingsverschil kan er
            voor zorgen dat huisnummers geuploaded worden waarbij
            addr:street verschilt van de straatnaam in OSM. Wat
            natuurlijk voor problemen zal zorgen. Maar hierbij kan Jo
            misschien helpen, of de JOSM validator. <br>
            <br>
            <br>
          </span></div>
        <div><span>Als die problemen opgelost zijn, dan lijken
            de tools klaar, en wordt het tijd om enkele definitieve
            beslissingen te maken:<br>
          </span>
          <ul>
            <li><span>Huizen tekenen of niet</span></li>
            <li><span>Aparte gebruikersnaam of niet</span></li>
            <li><span>Welke tags moeten op de changeset</span></li>
            <li><span>Hoe contacteren we het AGIV met
                opmerkingen?</span></li>
            <li><span>...</span></li>
          </ul>
        </div>
        <div><span>Groeten,<br>
            Sander<br>
          </span></div>
        <div><span><br>
          </span></div>
      </div>
    </blockquote>
  </span></div>

<br>_______________________________________________<br>
Talk-be mailing list<br>
<a href="mailto:Talk-be@openstreetmap.org">Talk-be@openstreetmap.org</a><br>
<a href="https://lists.openstreetmap.org/listinfo/talk-be" target="_blank">https://lists.openstreetmap.org/listinfo/talk-be</a><br>
<br></blockquote></div><br></div></div></div>