Open Data Description Language ( OpenDDL ) — это универсальный текстовый язык, предназначенный для хранения произвольных данных в кратком, удобном для восприятия человеком формате. Его можно использовать как средство для простого обмена информацией между многими программами или просто как метод хранения данных программы в редактируемом формате.
Точный синтаксис OpenDDL описан на сайте openddl.org, а также в приложении к спецификации Open Game Engine Exchange . [1]
Файл OpenDDL состоит из последовательности структур, которые могут быть либо пользовательскими типами, либо встроенными примитивными типами данных. Декларация структуры состоит из идентификатора, за которым следует необязательное имя, необязательный список свойств и, наконец, содержимое структуры, заключенное в фигурные скобки. Необработанные данные всегда содержатся в структурах, идентификаторы которых являются одним из типов данных, описанных в следующем разделе. Например, можно определить структуру Point
, которая содержит координаты с плавающей точкой трехмерной точки, следующим образом.
Точка{ плавающий {1.0, 2.0, 3.0}}
Структуры могут иметь имена, которые позволяют ссылаться на них из других частей файла. Имена могут быть глобальными (уникальными во всем файле) или локальными (уникальными в пределах включающей структуры). Глобальное имя состоит из знака доллара, за которым следует идентификатор, а локальное имя состоит из знака процента, за которым следует знак доллара. Структуре Point
выше можно присвоить глобальное имя "position" следующим образом.
Точка $позиция{ плавающий {1.0, 2.0, 3.0}}
Другая структура могла бы тогда включать ссылку на эту точку, используя ref
тип данных:
ссылка {$position}
OpenDDL определяет 15 примитивных типов данных, описанных в следующей таблице. Каждый тип имеет длинное и короткое имя. Кроме того, типы с плавающей точкой имеют альтернативные длинные и короткие имена.