-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
CSV-Formatfehler: Ungeschützte doppelte Anführungszeichen in Haltestellen-Name #21
Comments
Ich hatte diese Anfrage schon einmal an die zuständigen Ansprechpartner bei der WVI angesprochen und diese Antwort bekommen: |
Der Aussage "wir verstoßen nicht gegen irgendwelche Standards" kann ich nicht zustimmen. Es existieren durchaus etablierte Konventionen, um eine fehlerfreie Verarbeitung von CSV-Daten zu ermöglichen. Bezüglich Maskierung von doppelten Anführungszeichen siehe hierzu z.B.: RFC 4180 Common Format and MIME Type for CSV Files:
oder auf Deutsch z.B. wikipedia:
Dieses Maskierungszeichen wird von üblicherweise genutzten CSV-Import-Routinen erkannt und erzeugt keinen Anpassungsaufwand. Datenabnehmer hingegen würden sich die derzeit erforderliche Präprozessierung zur Fehlerkorrektur des Formats sparen. Die derzeit fehlende Maskierung erfordert eine Spezialimplementierung des Parsings welche zudem fehleranfällig ist. Sollte WVI Standard-Bibliotheken zum CSV-Export nutzen, dürften diese i.d.R. automatisch die korrekte Maskierung vornehmen. Das Semikolon als Feldtrennzeichen haben wir nicht in Frage gestellt. |
Hallo liebe Leute,
In diesem Fall
handelt es sich um ein einzelnes Zeichen und kein Zeichen-Paar. Ein einzelnes unmaskiertes Zeichen resultiert, bei der automatischen Verarbeitung von CSV-Dateinen, wegen fehlender Kompatibilitaet ebenfalls zu Fehlern.
Besitzt jemand einen alten Export, welcher mit dem aktuellen vom 8. Mai 2023 verglichen werden kann? Dann wissen wir, ob es sich um einen neuen Fehler handelt. Ausserdem, haette ich gerne einen funktionierenden, weil kompatiblen, Export. |
Hallo, das ist schon so im ZHV hinterlegt: Geseke, H"lter Weg |
Ich wiedehole nochmal die Bitte, ein sauberes Escaping auf Seite des zHV vorzusehen, damit Fehler des VUs nicht die Datei unverarbeitbar machen. Es sind genau solche Fehler, die vermeidbar wären. |
Hallo liebe Leute,
Haltestelle @CM-RMS Ist fuer diesen Halt das selbe Verkehrsunternehmen verantwortlich wie fuer |
Neuer Datensatz, neues Glueck? Der aktuelle Export
Haltestelle |
Das Problem wurde dem VRR mitgeteilt und es wird korrigiert. Wir haben aber keinen Einfluss darauf wann der VRR neue und korrigierte Daten als ZHV liefert. |
"ans" |
Ist bereits geplant, auf ein RFC-4180-kompatibles CSV-Encoding umzusteigen, also Anführungszeichen in Zellen zu schützen? |
Ich habe heute das zHV CSV verarbeiten wollen und bin in das selbe Problem gelaufen. Das Escaping von Anführungszeichen ist immer noch falsch. |
Wenn Sie uns eine Lister der betroffenen Haltestellen zukommen lassen geben wir das gerne an die zuständigen VU's zur Prüfung weiter. |
Das Problem tritt zwar nur bei einer kleinen Anzahlt von Haltestellen auf, nämlich denen, die ein Anfführungszeichen im Namen haben, die Lösung sollte allerdings nicht sein, dass die Datenlieferanten die Anführungszeichen entfernen. Es sollte die Aufgabe von WVI sein, die Anführungszeichen, die die Verbünde zuliefern, zu maskieren, also aus einem |
Ich habe es an die WVI weitergegeben. |
Durch eine Programmierung der WVI sollte das Problem nicht mehr vorhanden sein |
Das sind super Neuigkeiten! |
Leider erfüllt der neueste Datensatz immer noch nicht RFC 4180, weil
Das lässt sich in vielen CSV-Bibliotheken zwar konfigurieren, aber deutlich besser wäre das Escaping mit doppelten (bzw. mehrfachen) Anführungszeichen! Könnt ihr das noch ändern @CM-RMS? Danke! rg -i 'zum bf' zHV_aktuell_csv.2023-08-14.csv
# 19887:"19885";"A";"de:08119:7601:94";"de:08119:7601";"Zug. \"Zum Bf.\"";"48,92598";"9,419896";"00000000";"-";"-";"-";"";"NVBW";"-";"-";"-";"1999-12-31T00:00:00"
# … |
Die WVI wird momentan keine neuen Änderungen vornehmen. Sollten allgm. Änderungen an der Schnittstelle bzw. zur Bereitstellung von csv-Dateien erfolgen, wird WVI diesen Sachverhalt noch einmal prüfen und ggf. anpassen. Aktuell sind nur etwa 30 Haltestellenobjekte im ZHV davon betroffen. |
Die zHV-csv-Datei verwendet als Feldbegrenzer doppelte Anführungszeichen ("). Einzelne Namen beinhalten doppelte Anführungszeichen als Teil des Namens. Diese werden nicht geschützt und führen zu einer invaliden CSV-Struktur, welche je nach Werkzeug zu Verarbeitungsfehlern führt.
Beispiel:
Üblicherweise werden doppelte Anführungszeichen innerhalb von Textfelder durch ein jeweils vorangestelltes doppeltes Anführungszeichen geschützt:
Beispiel:
The text was updated successfully, but these errors were encountered: