Описание LSP представляет собой последовательное описание структур данных, определяемых типом, именем, списком параметров (полей) и их значений. Синтаксис языка определяет формат описания структур данных, базовые типы значений полей структур. Синтаксические конструкции позволяют описывать иерархические структуры данных, число уровней которых не ограничено.
Формальное описание синтаксиса LSP-языка в виде БНФ (Бэкуса—Наура форма) приведено ниже. В БНФ описании названия нетерминальных символов заключены в угловые скобки, имена терминалов написаны большими буквами. Кроме того, простые терминалы, ключевые слова и разделители, записаны в одинарных кавычках. В БНФ-описании используются следующие терминалы: ИДЕНТ, СТРОКА, DOTDOT, ЦЕЛОЕ32, ДАТА, ВРЕМЯ, IP.
<cfg_data>::= <top_level_form> | <cfg_data> <top_level_form>
<top_level_form>::= <object_def> | <constant>
<constant>::= `const` <key_value>
<object_def>::= ИДЕНТ ИДЕНТ ‘(‘ <key_value_or_template_list> ‘)’
| ИДЕНТ ‘(‘ <key_value_or_template_list> ‘)’
<key_value_list>::= <key_value> | <key_value> <key_value_list>
<key_value_or_template_list>::= <key_value_or_template_list>
|<key_value_or_template> <key_value_or_template_list> <key_value_or_template>::= key_value | template
<key_value>::= <l_value> ‘=‘ <r_value_list>
<r_value_list>::= <r_value> | <r_value_list> ‘,’ <r_value>
<r_value>::= ИДЕНТ | ИДЕНТ ‘<‘ ‘>‘
| ИДЕНТ ‘<‘ <key_value_or_template_list> ‘>‘
| ИДЕНТ ‘[‘ <r_value_list> ‘]’
| ‘(‘ <r_value_list> ‘)’ | ‘(‘ ‘)’
| ‘[‘ <r_value_list> ‘]’ | ‘[‘ ‘]’
| ИДЕНТ ‘(‘ <key_value_or_template_list> ‘)’
| СТРОКА
| ЦЕЛОЕ32 | ЦЕЛОЕ32 ‘..’ ЦЕЛОЕ32
| ЦЕЛОЕ32 ‘/’ ЦЕЛОЕ32 ‘/’ ЦЕЛОЕ32
| - ЦЕЛОЕ32
| IP | IP ‘..’ IP | IP ‘/’ ЦЕЛОЕ32
| ДАТА
| ВРЕМЯ
<l_value>::= ИДЕНТ | ИДЕНТ ‘*’
<template>::= ‘+’ ИДЕНТ