myXTree

English

SourceForge.net Logo

Описание.
myXTree - это интерфейс к SQL-дереву. Больше о SQL-деревьях можно узнать в статье SQL for Smarties (перевод статьи), и Relational Data Structures for Extensible Thesauri. Этот класс позволяет сохранять DOM-документ в SQL-дереве и обратно. Для выбора данных из SQL-дерева используются XPath выражения. Чтение данных SQL-дерева может выполняться двумя способами: за один SQL-запрос и рекурсивным способом. Для работы класса необходимы объект PEAR::DB и объект Document из пакета myDOM, который входит в состав пакета myXML (http://phpmyxml.sourceforge.net/).
При реализации этого класса использовалась СУБД mySQL и объект PEAR::DB, но это, к сожалению не сделало класс легко переносимым на другие СУБД, так как в классе задействованы специализированные возможности mySQL. Так как предполагалось, в основном, использование этого класса для малообновляемых данных, то был выбран тип таблиц MyISAM (без поддержки транзакций).
Класс не поддерживает полные возможности языка XPath. Пока что не поддерживается выборка объектов по префиксу пространства имён; в базе сохраняются только элементы, текст, CDATA и атрибуты; оператор '|' (union) можно использовать только в рекурсивном режиме; не реализованы функции XPath.
Планы.
С появлением в PHP5 полноценной поддержки ООП и встроенного класса DOMDocument появляется возможность использовать myXTree с этим классом.
ВНИМАНИЕ: Класс изначально писался для малообновляемых данных и в таких приложениях как форум не тестировался. При добавлении данных в дерево используеться блокировка таблиц и как это отразится на работе в многопользовательском режиме неизвестно.
Ссылки.
Изменения.
Загрузка.

По всем вопросам пишите на myXTree форум