# VDV - VDV-451/VDV-452/INTREST Data Format

Added in version 2.1.

Driver short name

VDV

Driver built-in by default

This driver is built-in by default

This driver can read and create text files following the VDV-451 file format, which is a text format similar to CSV files, potentially containing several layers within the same file.

It supports in particular reading 2 "profiles" :

- (read/write) VDV-452 standard for route network / timetable

- (read/only) "INTREST Data format" used by the Austrian official open government street graph

The generic reader/writer for VDV-451/VDV-452 can support arbitrarily large files. For the INTREST data case, for combined layers in a single file, the driver ingests the whole file in memory to reconstruct the Link layer.

Interleave reading among layers is supported in files with multiple layers.

## Driver capabilities

Supports Create()

This driver supports the `GDALDriver::Create()` operation

Supports Georeferencing

This driver supports georeferencing

Supports VirtualIO

This driver supports virtual I/O operations (/vsimem/, etc.)

## Creation issues

The driver can create new layers (either in the same file, or in separate files in the same directory). It can append a new layer into an existing file, but it cannot append/edit/delete features to an existing layer, or modify the attribute structure of an existing layer after features have been written.

Dataset creation options can be specified in command-line tools using the syntax `-dsco <NAME>=<VALUE>` or by providing the appropriate arguments to `GDALCreate()` (C) or `Driver.Create` (Python). The following dataset creation options are available:

- SINGLE_FILE=[YES​/​NO]: Defaults to `YES`. Whether several layers should be put in the same file. If NO, the name is assumed to be a directory name.

Layer creation options can be specified in command-line tools using the syntax `-lco <NAME>=<VALUE>` or by providing the appropriate arguments to `GDALDatasetCreateLayer()` (C) or `Dataset.CreateLayer` (Python). The following layer creation options are available:

- EXTENSION=value: Defaults to `x10`. Extension used when creating files in separate layers, i.e. only for `SINGLE_FILE=NO` dataset creation option.

- PROFILE=[GENERIC​/​VDV-452​/​VDV-452-ENGLISH​/​VDV-452-GERMAN]: Defaults to `GENERIC`. Describe which profile the writer should conform to. VDV-452 will restrict layer and field names to be the one allowed by the VDV-452 standard (either in English or German). VDV-452-ENGLISH and VDV-452-GERMAN will restrict the VDV-452 to the specified language. The configuration file describing VDV-452 table and field names is vdv452.xml located in the GDAL_DATA directory.

- PROFILE_STRICT=[YES​/​NO]: Defaults to `NO`. Whether checks of profile should be strict. In strict mode, unexpected layer or field names will be rejected.

- CREATE_ALL_FIELDS=[YES​/​NO]: Defaults to `YES`. Whether all fields of predefined profiles should be created at layer creation.

- STANDARD_HEADER=[YES​/​NO]: Defaults to `YES`. Whether to write standard header fields (i.e mod, src, chs, ver, ifv, dve, fft). If set to NO, only explicitly specified HEADER_xxx fields will be written.

- HEADER_SRC=value: Defaults to `UNKNOWN`. Value of the src header field.

- HEADER_SRC_DATE=<DD.MM.YYYY>: Defaults to `current` date (in GMT). Value of the date of the src header field as DD.MM.YYYY.

- HEADER_SRC_TIME=<HH.MM.SS>: Defaults to `current` time (in GMT). Value of the time of the src header field as HH.MM.SS.

- HEADER_CHS=value: Defaults to `ISO8859-1`. Value of the chs header field.

- HEADER_VER=value: Defaults to `1.4`. Value of the ver header field.

- HEADER_IFV=value: Defaults to `1.4`. Value of the ifv header field.

- HEADER_DVE=value: Defaults to `1.4`. Value of the dve header field.

- HEADER_FFT=value: Defaults to `''` (empty string). Value of the fft header field.

- HEADER_xxx**=value: Value of the xxx (user defined) header field.

## Links

- VDV-451 file format (German)

- VDV-452 data model (German)

- Austrian INTREST data format (German)