Tool zum "Internationalisieren" von Telefonnummern

Hi,

“Nur” gestern kann ja eigentlich nicht sein.
Dieses Changeset von Freitag: https://www.openstreetmap.org/api/0.6/changeset/54470613
hat dan gleichen Inhalt beim created_by wie das von gestern: https://www.openstreetmap.org/api/0.6/changeset/54479381

Du solltest das aber eigentlich besser wissen als ich :slight_smile:

Viele Grüße
Pascal

So… das Skript läuft momentan und alle Änderungen werden zurückgesetzt!

Ich muss zugeben, dass ich aus Datensicht so ein Tool auch schreiben würde. Allerdings muss man hier wieder die Frage stellen, welchen Zweck wir mit den OSM-Daten verfolgen. In erster Linie sollte es darum gehen, korrekte Informationen einzupflegen. Das bedeutet nicht, dass sie auch in jedem Falle korrekt formatiert sein müssen. Bei Straßen und dergleichen und selbst bei Adressen ist das sicher erforderlich, weil – und das ist der Knackpunkt – weil diese Daten in erheblichem Maße genutzt werden, z.B. für die Kartendarstellung. Diese Nutzung ist stark automatisiert und bedarf natürlich korrekt formatierter Daten.

Nun zu den Telefonnummern: Man wird zustimmen, dass OSM kein Telefonbuch sein soll. Zumindest derzeit nicht. Insofern vermute ich, dass die vorhandenen Telefonnummern letztlich vor allem visuell von Menschen genutzt wird, selbst dann, wenn automatisierte Tools sie irgendwo hin transferieren (auf Flyer, in Karten-Legenden, …). In diesem Lichte ist der Zweck erfüllt, wenn der Nutzer die Telefonnummer aus dem Kontext heraus korrekt ermitteln kann. Jedes der obigen Beispiele wäre damit “brauchbar”, weil selbst Fehler beim Lesen erkannt und korrigiert würden.

Schlussfolgerung für mich persönlich: Ich würde das Tool sein lassen (sorry, ist für den Programmierer hart, weil es Arbeit gemacht hat) und die Korrekturen “sich selbst überlassen”, sprich, es Anwendern überlassen, die ein Problem mit den Fehlern haben. Zu diesem Zweck kann man das Tool aber vielleicht in einer Form bereitstellen, die es erlaubt, in einem gezielten Bereich oder nach Filtern Nummern zu korrigieren (z.B. im aktuellen Kartenausschnitt in JOSM oderso).

Besser wäre es natürlich, gleich bei der (Neu-)Eingabe anzusetzen.*

Mag einerseits ein Generationenproblem sein, andererseits vielleicht auch ein bisschen fehlendes technisches (Programmierer-)Wissen und sich dessen einfach gar nicht bewusst sind, warum man das internationale Format verwenden sollte … ich kenne leider genug Menschen, die typisch deutsch die Telefonnummern mit 0… ins Smartphone eintragen, und sich dann im Ausland wundern, warum die Telefonnummer nicht mehr geht … aber hey, vielleicht warten wir einfach noch eine Generation ab, dann sollte sich das mit der Telefonnummer ganz und gar erledigt haben :wink:

  • Im Web und den meisten Formularen gibt es ja häufig schon die Trennung zwischen Landesvorwahl (mit DropDownBox), Vorwahl und Rufnummer

Wer einen passenden Editor benutzt, der die getrennte Eingabe der Elemente unterstützt bzw. das Ergebnis überprüft, ist ja auf der sicheren Seite. Keine Ahnung, ob JOSM und iD da was haben. Aber das Tool zielte vermutlich vor allem auf eine Bereinigung des Bestands ab.

Das war mir schon klar. Ich wollte aber nochmal verdeutlichen, dass es immer besser ist die Eingabe zu verbessern, als vermurkste Daten nachträglich zu “bereinigen”.

Letztendlich ist aus Programmierersicht OSM mit seiner Freiheit alles wie auch immer zu Erfassen ja eigentlich fast schon sowas wie ein Supergau :sunglasses:

War nur ne Arbeit von einem Abend… Also nicht allzu viel!

Das ist eigentlich genau dasselbe, was die Challenge von maproulette.org macht (http://maproulette.org/ui/metrics/2692). Insofern werde ich mein Projekt erstmal in die Tonne kloppen :slight_smile:

Oder in JOSM einbauen, wenn es der Validator noch nicht kann.

Es ist geschafft! Alle betroffenen Changesets wurden reverted (auch die von Freitagabend…)
Danke für eure Geduld und Hilfe!
Falls ich irgendwann wieder so etwas in der Richtung vorhaben sollte, werde ich euch dann mal vorher fragen, was ihr davon haltet. Tut mir leid für die Umständlichkeiten, die ich euch bereitet habe.

Schönen Abend noch!

Ich kopiere oft die Telefonnummer von der Homepage des jeweiligen Betreibers. Diese noch in +49 umzuschreiben, wäre ein weiterer Schritt, der einfach lästig ist. Daher fände ich das gut, wenn so was automatisch passieren würde, wenn nur JOSM nur motzt würde ich das ignorieren, lieber richtige Daten in einem falschen Format als gar keine. Übrigens könnten wir auch das Fax streichen, das ist eine Information die eigentlich nur zwischen zwei bekannten Unternehmen wichtig ist, wie auch die E-Mail, die aus Datenschutzgründen kaum jemand einträgt.

Das sehe ich anders. Ich nutze oft Angaben in Apps, um direkt daraus einen Anruf zu starten. Maps.me z. B. lässt die Telefonnummern wählen. Eine so verwertbare Angabe halte ich dafür wichtig. Für Flyer etc wird ja wohl niemand die Nummern aus OSM ziehen.

Das fände ich schade. Sich voll auf die Ausgbe des Tools zu verlassen, ist wohl in die Hose gegange. Wenn ich dich ganz oben richtig verstanden habe, dann hast du aber doch eh schon eine Review-Möglichkeit vorgesehen. Natürlich dauert es wesentlich länger, jeden einzelnen Änderungsvorschlag zu validieren, aber auch kleine Korrekturen sind IMO besser als gar keine.

Daher würde ich dich schon ermuntern, das prinzipielle Vorgehen vielleicht noch etwas zu tunen und das Tool für mehr Benutzer nutzbar zu machen.

Jo, der Validator wäre ein Anfang. Hab mal reingeschaut und es stimmt, er kann es noch nicht.
Nachdem ich mir die E.164 mal näher angesehen hab, hab ich doch davon Abstand genommen. Einfach ist die nicht. Und das Wiki ist für mich als “Sekundärliteratur” hier nicht relevant.

An die logische Weiterentwicklung (Test der Werte bei der Eingabe und evtl. Verbesserungsvorschläge) trau ich mich eh noch nicht ran.

Gruss
walter

Okay, stimmt, die Direktwahl aus Apps heraus ist sicher eine Sache, die häufiger vorkommt und bei der man als Nutzer nicht unbedingt die Möglichkeit, hat, das zu korrigieren, wenn es falsch aussieht. Allerdings fällt das dann u.U. trotzdem unter den Hinweis, dass dann die Betreiber dieser App sich beim Ziehen der Daten dafür sorgen sollten, dass sie aufbereitet werden. Da dies automatisch erfolgt, wird ein Tool vermutlich nur diejenigen Einträge korrigieren, bei denen sicher ist, dass sie inhaltlich korrekt überleben und die restlichen Einträge so lassen, wie sie sind.

Das Tool von ENT8R – ich habe es nicht gesehen/probiert – sollte am vielleicht alle Einträge mit Original und Korrektur in einer langen Liste aufführen und zu jedem Eintrag eine Art Confidence-Level berechnen. Also wie ich oben schon sagte: 100% heißt: Das Tool ist sich sicher, alles richtig gemacht zu habe, 0% heißt: Das Tool kann mit der Angabe nichts anfangen. Und dazwischen vielleicht noch 25, 50 und 75% oder einfach nur 50%. Dann kann man als User durchgehen, ggf. sortiert nach Level, und das alles überfliegen. Selbst 6000 Einträge sind auf diese Weise irgendwann abgearbeitet. Wenn man dann noch direkt in dieser Liste manuell korrigieren kann … Um die Sache noch zu vereinfachen, kann man in den Werten noch Dinge machen wie eine farbliche Hervorhebung der drei oder sogar vier Komponenten, damit man auf einen Blick sieht, was von der Originalnummer als Landes- Orts-, Nummern- und ggf. Durchwahl-Teil verwendet wurde. Feinheiten, die je nach “optischem Typ” des Nutzers mehr oder weniger sinnvoll sind.

Kurzfristig sollte es mindestens einen Validator geben – zumindest JOSM hat offenbar keinen, bei iD weiß ich es nicht. Darüber hinaus sollte es eine vernünftige Maske geben, in der man die vier Komponenten eingeben kann. Bei JOSM lassen sich die Presets leider nicht dafür verwenden, soweit ich weiß, da damit nur einzelne Eingabefelder auf einzelne Tags gemappt, nicht aber mehrere Felder nach Schema X zu einem konsolidierten Tag-Wert verknüpft werden können. Oder geht sowas?

Dafür gibt’s hier (https://josm.openstreetmap.de/ticket/15250) ein Ticket.

Darüber habe ich auch schon nachgedacht… Ich glaube das würde sogar klappen…
Die Bibliothek, die ich zum korrigieren der Nummern benutze (https://github.com/googlei18n/libphonenumber) hat jedenfalls die Funktionen

isPossibleNumber()

und

isValidNumber()

was sich schon einmal vielversprechend anhört.

Okay. Nach dem ganzen Feedback und Vorschlägen werde ich es doch nochmal aus der Tonne holen :slight_smile:

Achso und nochmal zu iD:
Dort sieht es so aus, als wollte man so ein Feature nicht, weil man neuen Nutzern kein bestimmtes Schema “aufzwingen” möchte…
https://github.com/openstreetmap/iD/issues/2704
https://github.com/openstreetmap/iD/issues/3495
https://github.com/openstreetmap/iD/issues/4338

Für die, die in mein Projekt interessiert sind:
Der Code ist nun auf Github unter https://github.com/ENT8R/osm-microtasks zu finden.

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

eine Straße mit Telefonnummer ist bereits kurios.

eine Straße in den USA mit deutscher Telefonnummer ist
:sunglasses:

Upps… ja ich wusste dass da noch irgendwo ein Fehler ist… Hab aus versehen “node” mit “way” verwechselt… Wird rückgängig gemacht…

@ENT8R

Hi … habe das Tool jetzt mal genutzt um rund um meine Homebase in NRW “aufzuräumen” und … es hat ganz prima funktioniert. Danke!
Da ich die Faxnummern (und davon scheinen noch jede Menge eingetragen zu sein) gleich mit bearbeitet habe, war doch noch ein wenig Handarbeit nötig.

Die Normalisierung der Telefonnummern hat bis auf einen Fall (eine Ausgangsnummer die nur mit 49 startete) immer geklappt.

contact:phone hattest du ja nicht abgefragt, oder?

Werden auch nummern gefunden, die direkt an Objekten (Haus) erfasst sind?

Hilfreich wäre noch, wenn man innerhalb einer Abfrage erkennen könnte, welchem man schon bearbeitet hat (Editor aufgerufen) und welche nicht).

Grundsätzlich könnte man das Script immer mal wieder brauchen, falls andere User neue Einträge mit einem anderen Nummernschema erfassen.

Danke nochmal und Gruß
Stephan

P.S.: Mit über 9000 Einträgen für NRW scheint Maproulette andere Selektionskriterien zu haben als dein Script … und es bekommt scheinbar die Änderungen an Maproulette “vorbei” nicht mit (bei einem kleinen Test: hat mich heute auf einen Eintrag geschickt, den ich gestern schon gefixed hatte)

Genau, ich hab mich ersteinmal auf phone=* beschränkt, aber das könnte natürlich noch erweitert werden…

Es werden alle Telefonnummern, die in einem falschen Format sind, angezeigt. Dabei ist es total egal, wo die Nummern als Tag eingetragen sind.

Das ist mir beim Testen auch schon aufgefallen… So was in der Richtung wird auf jeden Fall hinzugefügt!

Ja, das ist mir bewusst. Die Challenge bei Maproulette sucht nach phone=, contact:phone=, fax=* sowie contact:fax=* mit Werten, die falsch formatiert sind. Mein Tool hingegen sucht im Moment nur nach phone=*…
Was meinst du mit es bekommt die Änderungen an Maproulette vorbei nicht mit? Hat dich Maproulette auf einen fehlerhaften Eintrag hingewiesen, den du vorher mit meinem Tool berichtigt hast? Wenn ja, liegt das daran, dass Maproulette die Suche nach fehlerhaften Werten nur dann startet, wenn der Inhaber der Challenge das möchte… Dass mein Tool dich auf einen Eintrag, den du mit Maproulette gelöst hast verwiesen hat, kann eigentlich nicht sein… Mein Tool fragt jedes Mal, wenn der Nutzer den Task neulädt, die neuesten Daten ab. Die einzige Möglichkeit, wie ich mir dass erklären kann, ist, dass die Nummer nach wie vor falsch formatiert ist…

Danke für dein Feedback und das Nutzen des Tools!