Verweesde AND tags.

Tijdens de opruimactie beschreven in dit topic bleek dat er soms een verweesde AND tag overbleef, dwz. een tag source=AND, zonder dat er op de betreffende node/way/rel nog andere tags stonden die door een AND import waren binnengekomen.
In de opruimactie van @It’s so funny verdween een groot aantal AND gerelateerde tags, maar een bleef er consequent staan, en dat is dus de source=AND combinatie die er nu zo vaak verlaten bijstaat zonder dat hij nog enig nut heeft.
Op plaatsen waar deze tag voorkwam, samen met rcn_ref, heb ik hem verwijderd.
Maar hier staan er nog 2, en dat zijn heus niet de enige!

  1. http://www.openstreetmap.org/node/42579241/history
  2. http://www.openstreetmap.org/node/42585801/history

Het is met overpass turbo niet mogelijk om een node/way/rel te vinden, die slechts één specifieke tag heeft, maar weet iemand misschien een manier om dat met JOSM wel te doen? De tip van @ligfietser:

type:node untagged -child

werkt goed, maar je zou eigenlijk iets willen dat op iedere in JOSM geladen dataset een filter toepasbaar is dat uitsluitend die dingen laat staan die in dat filter staan.
Je zou dan met overpass alle nodes/ways/rels die source=AND hebben (dat zijn er voor Nederland héél erg veel, rond Eindhoven ruim 3600!!), kunnen binnenhalen en vervolgens de filtering in JOSM doen.

Maar als ik naar deze kijk:
http://www.openstreetmap.org/node/42605516/history
en ik zie de allereerste import, bijna 8 jaar geleden door AND, dan vraag ik mij af welke van die gegevens komen van AND?
Komen amenity en name daar ook vandaan? Zo ja, dan kan die source ook blijven staan, zo nee, dan zou er nog een opruimactie plaats moeten vinden.

Edit:
Even voor de duidelijkheid: een verweesde source=AND is er een zoals in mijn voorbeeld 2 hierboven. Maar je zou van semi-verweesd kunnen spreken als (zoals in vb. 1) ook nog andere tags op die node staan, die echter niet van AND afkomstig zijn.

Die nodes ruim ik altijd op als ik ze tegen kom. Volgens mij is dat ook AND. En ze zijn -volgens mij - volkomen onzinnig. In dit geval ligt er ergens in de buurt van die knoop een tankstation en dat klopt ook en ergens een parkeerplaats en die is niet getagged, dus dat zou nog bekeken kunnen worden of er wel/geen parkeerplaats in de buurt ligt. En zo ja, netjes volgens de regels aangeven.

Marc, de meeste amenity=parking;fuel en place=* tags icm name=* komen ook uit het AND, dus die zijn niet verweesd, zou ik laten staan.

Ligfietser, had je dat nou niet eerder kunnen zeggen, bij een speurtocht naar tags mbt resto kwam ik die verloren AND tags tegen midden op een parkeerplaats. Nou moeten ze er weer aangebracht worden, denk ?

Nee, lijkt me niet.
Die AND dingen zijn een voorbeeld van slechte tagging.
Niet 2 dingen op 1 knoop, dat is de regel bij OSM.
parking en fuel op 1 knoop gaat niet. Bovendien liggen ze vaak niet eens op de plek van de parking of het tankstation.
En parking op een knoop kan, maar op een vlak is beter.
En wat de zin is om een straatnaam of wegnummer op een knoop in de weg te zetten, is me volkomen raadselachtig.

Naar mijn smaak kun je beter analyseren wat voor AND knopen er nog zijn, wat de info is en dan kijken wat nog omgezet moet worden naar iets goeds en wat weg kan.

Nog even wat verder onderzoek naar die AND tags.

In Nederland zijn er 68033 source=AND tags te vinden:

Ik heb een steekproef bij mij in de buurt genomen, en schat dat 2% van genoemd aantal (±1200) echt verweesd is.
Daar staat dus alleen maar source=AND op de knoop/way/rel, en die zouden toch echt wel weg kunnen…

Ik dacht dat de AND tag typisch voor Nederland was, maar tot mijn verbazing zit India er ook vol mee:

Dáár ga ik niks aan doen :slight_smile:

http://overpass-turbo.eu/s/aSc


op node
1799 stuks, met een paar rare andere tags er op

addr:street=Hout Oost
addr:street=van Zuijlen van Nieveltlaan
bus=yes
crossing=uncontrolled
crossing_ref=zebra
highway=crossing
highway=traffic_signals
postal_code=6136
public_transport=stop_position
rwn_ref=89
traffic_calming=bump
en nog een lading name=*

Bedankt Allroads.

Er zitten best leuke bij, zoals deze:

parking;fuel op een voetpad :sunglasses:

Dank voor het zoekwerk @Allroads.
Dit is ook een mislukking:

Als je de geschiedenis bekijkt:
http://osm.mapki.com/history/node.php?id=46536034
Dan zie je dat die parking en fuel in 2008 zijn samengevoegd, maar ik heb even gebruik gemaakt van onze grote kaartvriend om die plek te bekijken,
en op de situatie uit 2010 is helemaal geen parking te zien en al helemaal geen pomp. Ze kunnen daar niet eens en parking aanleggen wegens gebrek aan ruimte!
Kortom, wat moeten we toch met die onzin op de kaart?
Zijn er ook positieve dingen over die AND import te melden?

De vraag is hoe maak je query met alleen deze twee tags op een node way relation, als er een andere tag op staat, dan niet selecteren.

zo ook bij source=AND alleen deze tag op node way relation

Wat we zoeken is dit:

<has-onlykv k=“source” v=“AND”/> [let op: deze code is ongeldig!]

Maar dat kan dus niet in overpass.
ik heb veel fora bekeken en vragen gesteld, maar je komt steeds weer op hetzefde uit: Met overpass kun je geen selectie maken die UITSLUITEND de door jou opgegeven tags bevat. Je krijgt momenteel dus altijd de tag(s) die je vraagt MET alle overige tags die ook op die node/way/rel staan.

==
Edit:
Ik heb de vraag ook aan de ontwikkelaar van Overpass voorgelegd.

Ik was er ook al naar aan het zoeken geweest, nu en eerder, maar kon het niet vinden.

Als je de 68k tags met source=AND in JOSM hebt ingeladen kun je met een filter met conditie “source=AND tags:1” filteren op tags die enkel dus die ene source tag hebben.

alleen met source=AND:


[bbox:{{bbox}}];
((
  node["source"="AND"];
// and remove...    
  - 
  node[source=AND][~"^[^source].*$"~"."]; 
); >; );
out;

leek te werken bij Nieuwkoop

vrij gebaseerd op mmd’s antwoord op https://help.openstreetmap.org/questions/22996/how-can-i-get-overpass-api-to-just-display-my-objects-with-just-one-tag

En dat was precies het antwoord dat ik ook van de ontwikkelaar terug kreeg.
Ik kende die tags:1 optie nog niet uit JOSM.
Maar de variant van @escada lijkt ook bruikbaar.

Maar dat blijkt tocht niet helemaal zo te zijn:

http://overpass-turbo.eu/s/aT2

In de omgeving van mijn woonplaats levert ook deze op:

http://www.openstreetmap.org/node/43382367

En in de buurt van Amsterdam:

http://www.openstreetmap.org/node/46498154
http://www.openstreetmap.org/node/46498428

Opvallend is dat bij die verkeerde altijd een rwn_ref óf een railway is betrokken!
Kun jij zien waarom @escada?

het is beter als je ^source vervangt door ^s (net zoals in het voorbeeld).
Ik denk dat je dan echter nog wel nodes met source=AND and shop= gaat vinden
Ik had gehoopt dat ^source niet-“source” wilde zeggen, maar het is feitelijk niet-s , niet-o, niet-u, niet-r , …
vandaar dat die rwf_ref blijft staan in het resultaat

Dank je @escada.

Ik heb nu dit:

{{geocodeArea:Waalwijk}}->.searchArea;
((
  node["source"="AND"](area.searchArea);    
  - 
  node["source"="AND"][~"^[^s].*$"~"."](area.searchArea); 
); >; );
out;

Daarmee kun je in een specifiek gebied zoeken.
Mijn voorbeeld Waalwijk levert dan inderdaad 1 hit op: http://www.openstreetmap.org/node/43524054
Als je dat gebied groter maakt, één provincie bv., dan duurt de berekening waaaaaaaaaaaaaaanzinnig lang! :rage:
Klaarblijkelijk is die berekening zeer processor-intensief. Ik heb bij een proef op de provincie Noord-Brabant na 10 minuten wachten de boel maar afgebroken.
Dan is de andere oplossing via JOSM sneller en - uiteindelijk - betrouwbaarder, want die geeft zeker geen verkeerde resultaten.

Even gecontroleerd hoeveel verweesde AND tags er zijn.
In de provincie Noordholland vind ik 1288 nodes waar de source=AND tag deel van uitmaakt en daar blijken (in JOSM) 133 nodes bij te zitten die uitsluitend de tag source=AND hebben, zeg maar 10%.
Voor heel Nederland zullen we op maximaal 1500 nodes uitkomen. Nodes dus die een zinloze tag hebben.

Deze zaak kwam aan het rollen ten gevolge van mijn actie om heel iets anders op te ruimen en die verweesde tags zijn feitelijk ontstaan door de actie van @It’s so funny om overbodige AND tags te verwijderen.

We kunnen nu drie dingen doen:

1. It’s so funny verdwijdert ze alsnog als een verlengstuk van zijn eerdere operatie
2. Ik verwijder ze als vervolg op mijn eigen actie
3. Niets

Suggesties?

Marc, heb je t al aan Its so funny gevraagd ?