Синтаксис
1. Основная структура
- 
Содержание файла начинается и заканчивается объектом
{}, заключенным в фигурные скобки. - 
Объект состоит из пар ключ-значение.
 - 
Имя свойства и значение разделяются двоеточием(
:) или знаком равенства(=). 
2. Комментарий
- 
Комментарии начинаются с
//или#и пишутся на одной строке. - 
Комментарии действуют до конца данн ой строки.
 - 
Для многострочных комментариев поддержку предоставляют отдельно - необходимо добавлять
//или#в начале каждой строки. 
3. Объект
- 
Объект заключен в фигурные скобки
{}и включает пары ключ-значение. - 
Между ключом и значением можно использовать символы
:или=. Можно смешивать оба символа. - 
Каждое свойство разделяется запятой(
,). - 
Объекты можно вкладывать друг в друга.
 
Пример:
{
    статус: "успех",
    код = 200,
    пользователь = { id: 123, имя: "Джон Доу" }
}
4. Массив
- 
Массив окружен квадратными скобками
[], а элементы разделены запятыми(,). - 
Элементы массива могут быть объектами, строками, числами и другими типами данных.
 - 
В WSON массивы могут быть частью объекта, а в массиве можно вкладывать другие массивы или объекты.
 
Пример:
задачи: [
    { id_задачи: 1, название: "Завершите отчет о п роекте" },
    { id_задачи: 2, название: "Просмотрите отзыв команды" }
]
5. Пара ключ-значение
- 
Имя свойства состоит из строки, после которого сразу без пробела идет значение, отделенное
:или=. - 
Типы значений включают строки, числа, булевые значения, объекты и массивы.
 - 
Строки заключаются в двойные кавычки
". - 
Числа используются без кавычек и могут быть в целочисленной или десятичной форме.
 
Пример:
имя: "John Doe"
возраст = 25
6. Типы данных (Data Types)
- Строка(String): текст, заключенный в двойные кавычки 
". 
"привет мир"
- Число(Number): целое или вещественное число.
 
42
3,14
- Булево значение(Boolean): принимает 
trueилиfalse. 
is_active = true
- Объект(Object): пара ключ-значение, заключенная в фигурные скобки 
{}. - Массив(Array): список элементов, заключенный в квадратные скобки 
[]. 
7. Объяснение примера
{
    // Код состояния и информация о сообщении
    status: "success",
    code: 200,
    message: "Данные успешно извлечены",
    user = {
        id = 123,
        name: "John Doe",
        email: "john@example.com",
        age: 25  # возраст пользователя
    },
    tasks: [
        {
            task_id: 1,
            title: "Завершить отчет по проекту",
            status: "in-progress",
            due_date: "2024-10-15"
        },
        {
            task_id: 2,
            title: "Рассмотреть отзыв команды",
            status: "pending",
            due_date: "2024-10-20"
        }
    ]
}