diff --git a/doc/en/scripting/filesystem.md b/doc/en/scripting/filesystem.md
index 8341e9665..03976a7f8 100644
--- a/doc/en/scripting/filesystem.md
+++ b/doc/en/scripting/filesystem.md
@@ -52,6 +52,59 @@ yaml.parse(code: str) -> table
Parses a YAML string into a table.
+## XML Library
+
+The library contains functions for serializing and deserializing XML:
+
+Further, XML as a data type denotes a Lua table with the following structure:
+- Element tag is accessible by the key `#`
+- XML attributes are accessible as key = value pairs
+- Inner elements are accessible by index
+
+The table is used both as a dictionary and an array.
+
+Example:
+
+```xml
+
+
+
+```
+
+Equivalent Lua table:
+
+```lua
+{
+ ['#'] = "panel",
+ size = "400",
+ color = "0",
+ interval = "1",
+ context = "menu",
+ {
+ ['#'] = "button",
+ onclick = 'menu.page="worlds"',
+ {
+ "@Worlds"
+ }
+ }
+}
+```
+
+Consequently, the button element is accessible as `panel_element[1]`.
+
+```lua
+-- Serializes a tree in XML format
+-- multiline - use multiline formatting
+xml.tostring(data: XML, multiline: bool = true) -> str
+
+-- Parses XML
+xml.parse(code: str) -> XML
+
+-- Parses the VCD (VoxelCore Declaration) format used by the VCM format.
+-- root_tag - root element tag (the format does not require an explicit root)
+xml.parse(code: str, root_tag: str = "root") -> XML
+```
+
## *bjson* library
The library contains functions for working with the binary data exchange format [vcbjson](../../specs/binary_json_spec.md).
diff --git a/doc/ru/scripting/filesystem.md b/doc/ru/scripting/filesystem.md
index 0e060d94c..6334b5e90 100644
--- a/doc/ru/scripting/filesystem.md
+++ b/doc/ru/scripting/filesystem.md
@@ -52,6 +52,59 @@ yaml.parse(code: str) -> table
Парсит YAML строку в таблицу.
+## Библиотека xml
+
+Библиотека содержит функции для сериализации и десериализации XML:
+
+Далее XML как тип данных обозначает Lua-таблицу со следующей структурой:
+- Тег элемента доступен по ключу `#`
+- XML-аттрибуты доступны как пары ключ = значение
+- Вложенные элементы доступны по индексу
+
+Таблица используется как словарь, так и массив.
+
+Пример:
+
+```xml
+
+
+
+```
+
+Эквивалентная Lua-таблица:
+
+```lua
+{
+ ['#'] = "panel",
+ size = "400",
+ color = "0",
+ interval = "1",
+ context = "menu",
+ {
+ ['#'] = "button",
+ onclick = 'menu.page="worlds"',
+ {
+ "@Worlds"
+ }
+ }
+}
+```
+
+Соответственно, элемент button доступен как `элемент_panel[1]`.
+
+```lua
+-- Сериализует дерево в формате XML
+-- multiline - использовать ли многострочное форматирование
+xml.tostring(data: XML, multiline: bool = true) -> str
+
+-- Парсит XML
+xml.parse(code: str) -> XML
+
+-- Парсит формат VCD (VoxelCore Declaration), используемый форматом VCM.
+-- root_tag - тег корневого элемента (формат не требует наличия явного)
+xml.parse(code: str, root_tag: str = "root") -> XML
+```
+
## Библиотека bjson
Библиотека содержит функции для работы с двоичным форматом обмена данными [vcbjson](../../specs/binary_json_spec.md).