Top Qs
Timeline
Chat
Perspective

TOML

Configuration file format From Wikipedia, the free encyclopedia

Remove ads

Tom's Obvious, Minimal Language (TOML, originally Tom's Own Markup Language[2]) is a file format for configuration files.[3] It is intended to be easy to read and write due to obvious semantics which aim to be "minimal", and it is designed to map unambiguously to a dictionary. Originally created by Tom Preston-Werner, its specification is open source. TOML is used in a number of software projects[4][5][6] and is implemented in many programming languages.[7]

Quick Facts Filename extension, Internet media type ...
Remove ads

Syntax

TOML's syntax primarily consists of key = value pairs, [section names], and # (for comments). TOML's syntax somewhat resembles that of .INI files, but it includes a formal specification, whereas the INI file format suffers from many competing variants.

Its specification includes a list of supported data types: string, integer, float, boolean, datetime, array, and table.

Example

# This is a TOML document.

title = "ImpalaPay Co."

[database]
server = "192.168.1.1"
ports = [ 8000, 8001, 8002 ]
connection_max = 5000
enabled = true

# Line breaks are okay when inside arrays
hosts = [
  "alpha",
  "omega"
]

[servers]

  # Indentation (tabs and/or spaces) is allowed, but not required
  [servers.alpha]
  ip = "10.0.0.1"
  dc = "eqdc10"

  [servers.beta]
  ip = "10.0.0.2"
  dc = "eqdc10"
Remove ads

Use cases

TOML is used in a variety of settings (some related to its creator), such as:

Criticism

TOML has been criticized on a number of points:[12][13]

  • TOML is verbose; it is not DRY and is syntactically noisy.
  • TOML's hierarchies can be difficult to infer from syntax alone.
  • Overcomplication: TOML has too many features.
  • In TOML, the syntax determines the data types ("syntax typing").

See also

References

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads