Данные в системе организованы примерно также как в любой операционной системе, например в Windows. Точно также можно выделить некоторую вложенную структуру (папки, директории, каталоги, категории обозначают одно и то же понятие), а в этой структуре некоторые данные разных типов. В операционых системах данные различаются на основе расширений, а в системе Qubix они явным образом разделены на типы. Причём, эти типы формирует сам пользователь.
Вернёмся к аналогии с операционной системой. Каждая картинка в ней, кроме собственно изображения содержит массу другой информации: автор фотографии, аппарат, уровень освещения, дата, размеры, разрешение, цветовое пространство и так далее. Вот такой тип в Qubix можно было бы назвать «Фотография», добавить в него 10 текстовых полей и одно поле «Изображение». В Qubix кроме названия типа, которое выводится для пользователя, существует также скрытое название для отобржанеия во flash. Оно должно быть написано латиницей и будет выступать в качестве поля объекта. Такие составные типы называются сконструированными типами (Constructed Types) или короче Типы контента. Простейшие неделимые типы текстовые поля, изображения, звуки называются Базовыми типами (Basic Types). Один конкретно взятый образец типа контента называется Экземпляром контента. Набор экземпляров одного типа внутри категории образует массив. Набор одинаковых базовых типов внутри сконструированного типа контента также образует массив. Если мы добавили 5 типов «Фотография», получим массив photo[1..5]. Нумерация с единицы, как для натуральных чисел. Чтобы добраться до картинки в фотографии №3 нам надо обратиться по адресу photo[3].image[1]. Чтобы получить путь к файлу этой картинки, надо обратиться по адресу photo[3].image[1].image_path
Структура организована в виде вложенных категорий. Каждой категории соответствует массив с именем cat. Категории нумеруются в порядке их добавления и эти номера соответствуют порядку их следования на сайте. В этом же порядке они следуют в системе управления в дереве категорий. Уточнить номер категории можно в режиме редактирования категорий. Для того, чтобы перейти в этот режим, нужно кликнуть по красной кнопке «Редактировать» справа от заголовка «Категории». После этого пользователь оказывается в списке категорий.
У элементов массива cat могут быть свойства:
Экземпляры типов контента внутри категории и экземпляры базовых типов внутри типов контента организованы в массивы. Например, если у вас в типе контента «Текст» один единственный текст, то обращаться к нему всё равно нужно как txt[i].text[1], а не как txt[i].text. Зато, если вам нужно сделать составной тип из нескольких текстовых полей, например, изображение с полями «Автор» и «Коментарий к фотографии», то вы получите нечто следующее: photo[i].text[1] = «Вася Иванов»; photo[i].text[2] = «Как я провёл лето»;
Организация типов данных ограничена спецификацией шлюза AMFphp. Это означает, что все поля представлены как строки, либо как тип null. Поля-числа автоматически приводятся к числовому значению, если присваивать их числовым переменным, но при сложении, например thumb_width + thumb_height вы можете получить нечто вроде «1»+«2»=«12», а при строгом сравнении if(thumb_width==2) вы получите ложь. Правильно сравнивать if(uint(thumb_width)==2) или if(uint(thumb_width)>2). Структуры организуются в массивы или объекты. Если в массиве всего один элемент, то массив продолжает оставаться массивом, а не превращается в объект.