Начальная страница

Николай Жарких (Киев)

Персональный сайт

?

Смерека

Что такое Смерека

Опрос народа показал, что смерека – это собственно то же, что и ель, местное карпатское название ели. Еще в 1899 году Леся Украинка спрашивала у Ольги Кобылянской, что значит это слово, неизвестное в то время на Надднепрянской Украине.

Смереки в Карпатах

Кроме того, что это хвойное дерево, Смерека – это оригинальная украинская программа для генерации веб-сайтов и управления их содержанием, которая реализует иерархическую модель данных для редактора и сетевую – для читателя сайта: (System of Managing web Resources by Network Klient Access – SMEREKA).

Смерека написана на PHP и использует в качестве СУБД MySQL. В идейном плане она близка к другой моей разработки – иерархической СУБД «Мысленное древо».

Основные понятия

Дерево (tree) – ориентированный односвязный граф. Вся информация в Смереке хранится в виде дерева с одной корневой вершиной.

Дерево состоит из вершин (nodes) – элементарных блоков информации. Каждая вершина является адресуемым элементом данных и может соответствовать одной странице сайта. Но Смерека позволяет компоновать веб-страницы из нескольких вершин.

Вершина обладает набором атрибутов (attributes) – элементов информации. Вершина в целом является информационно неоднородной, может объединять данные различных типов. Атрибут содержит данные только одного типа, например, целое число или срока. Атрибуты выглядят как блоки, иерархически подчинены вершине, но они не являются адресуемыми элементами и самостоятельно не могут создавать веб-страниц.

Ключ вершины (id) – главный атрибут, уникальный в контексте базы данных числовой идентификатор вершины. Он представляет собой целое 4-байтовое число без знака (следовательно, пространство Смереки состоит из 4 млрд. вершин). Ключи вершин являются сердцевиной функциональности Смереки, но сами по себе они не представляют интереса ни для редактора, ни для читателя.

Класс вершины (class) – еще один атрибут. Он представляет собой целое 4-байтовое число без знака и определяет функциональность вершины. По значению класса Смерека определяет, какие атрибуты должна иметь вершина. Следует знать, что кроме регулярных атрибутов, определенных классом, вершина может иметь и другие атрибуты (частные). Способ использования атрибутов (как регулярных, так и частных) зависит от контекста обращения к вершине. Примерами классов могут быть классы «субдомен» или «пользователь».

Шаблон страницы (template) – атрибут вершины, определяющий, надо представлять вершину для редактора и как – для пользователя. Попросту говоря, класс определяет набор информации, содержащийся в вершине, а шаблон – способ компоновки этой информации в веб-странице.

Символьное имя (symbolic name) – атрибут строкового типа. Он употребляется для формирования символьных адресов (URL) страниц.

Контекст – понятие, которое отражает условия функционирования вершины. Контекст не является атрибутом. Важнейшие составляющие контекста Смереки – это глобальные настройки Смереки, параметры http запроса и иерархическая позиция вершины (конечно, есть еще глобальные настройки самого PHP, MySQL, веб-сервера и операционной системы). Контекст используется, когда нужно вычислить определенную величину (контекстные вычисления). Например, видимость пользовательских вершин вычисляется на основании атрибутов самой вершины, ее иерархической позиции и прав пользователя (последние две группы является контекстом вычисления).

Равные вершины (sibling nodes) – группа вершин с одинаковой иерархической позицией, т.е. имеющих хозяйкой одну и ту же вершину.

Смеретег (smeretag, Smereka tag) – поле подстановки; выражение, которое вычисляется во время компоновки веб-страницы перед отправкой ее пользователю.

Смерессылка (smeref, Smereka reference) – внутренняя ссылка на другую вершину того же самого дерева Смереки. Наиболее часто применяемый смеретег.

Что читать дальше