Zum Inhalt

Spezifikation TSV

Einleitung

Tab Separated Value (TSV) ist ein mit CSV verwandtes Format. Als Feld-Trennzeichen wird jedoch ein TAB (Tabulator, \t) verwendet. Vorteil des TAB ist, dass dieser in natürlichen Texten nicht vorkommt, daher auf ein sog. Quoting (das Setzen von Anführungszeichen) im Allgemeinen verzichtet werden kann. TSV Files sind, wie ihr Pendant CSV, in den gängigen Tabellenprogrammen (z.B. Excel) importierbar.

Ein Nachteil von TSV (aber auch CSV) sind die fehlende Beschreibung zu den Feldern selbst. Das Format selbst bietet dafür keine Möglichkeit. Schwierig ist auch die Abbildung komplexer Datenstrukturen wie Arrays und Dictionaries.

Formatbezeichnungen

Name: Tab-Separated-Values

Dateiendung: .tsv

MIME Typ: text/tab-separated-values

Definitionen

Bei TSV (und auch bei CSV) sind zusätzliche Definitionen erforderlich.

  1. Jeder Record befindet sich in einer eigenen Zeile.
    Als Zeilenumbruch wird der Zeilenvorschub (LF, linefeed, \n, ASCII 10) verwendet.
    LF entspricht dem Standard für Newline auf Unix-basierten Systemen.
    Auch der letzte Eintrag schließt mit einem Zeilenvorschub ab.

  2. Die einzelnen Felder werden mit einem tab stop (TAB, \t, ASCII 09) unterschieden.
    TSV auf Wikipedia

  3. Innerhalb eines Feldes darf kein weiterer TAB verwendet werden.

  4. Jede Zeile besitzt die gleiche Anzahl an Feldern.

  5. Die erste Zeile beinhaltet die Feldbezeichnungen und ist ebenfalls mit TAB getrennt.
    Feldbezeichnungen dürfen KEINE Sonderzeichen (Umlaute, Leerzeichen, ...) enthalten und sind (bevorzugt) in Kleinschreibung anzugeben.

  6. Zeichenkodierung der Informationen ist UTF-8.

  7. Textinformationen sind ohne Anführungszeichen darzustellen. Kein Quoting!

  8. Dezimalzahlen verwenden den Punkt . als Dezimaltrennzeichen.
    Ziffern werden nicht-gruppiert (dh. keine Blockbildung durch Leerzeichen o.ä.) dargestellt.
    Nummern zwischen -1 und 1 sind mit führender 0 darzustellen.
    Nummern ohne Dezimalteil können ohne Trennzeichen und nachfolgenden 0 dargestellt werden.

    Beispiele Zahlendarstellung
    3
    5.0
    127.02
    -1234.04
    0.02
    

  9. Datums- und Zeitangaben nutzen die Darstellung gemäß ISO8601.

    Beispiele Datums- und Zeitangaben
    2022-07-09
    1970-01-01
    2022-08-09T13:45:12.123
    2022-08-09T13:45:12.123+01:00