♦ Нельзя понять содержимое таблицы, не воспользовавшись средствами СУБД для интерпретации и вывода данных.
♦ XML предназначен для обмена данными, тогда как реляционная модель должна опираться на средства преобразования.
♦ Нельзя послать таблицу какой-либо базы данных SQL в виде открытого кода. XML позволяет посылать простые файлы XML. Задачи преобразования решает другой открытый стандарт - XSLT.
Наконец, чтобы реализовать в РНР модель данных, основанную на XML, надо сначала определить, как, где и зачем хранить поток данных. Можно воспользоваться плоскими файлами в файловой системе или применить решение с хранилищем XML, например Ozone или dbXML (http://www.dbxml.org/">
API PHP для XML более глубоко освещается в главе 21. Там рассказывается о чтении, записи и преобразовании данных.
Гибридная модель
Гибридная модель данных объединяет две или более разных стратегий моделирования данных. Например, в одном и том же приложении могут сосуществовать реляционная модель и набор DTD и файлов XML.
Гибридные модели повышают сложность уровня содержимого, поскольку существует более чем один интерфейс для хранения и извлечения данных. Гибридные модели требуют высокого мастерства проектирования на этапе планирования, но они наиболее гибки, масштабируемы и полезны в сегодняшнем мире электронной коммерции.
Уровеньлогики
Уровень логики - это то место, где сосредоточен весь интеллект приложения. Здесь обрабатываются и препарируются данные, полученные из уровня содержимого. Такие действия, как расчеты, преобразования, получение статистики, защита и аудит - все они происходят в уровне логики. В основе этого уровня лежат системы отслеживания пользователей, регистрации, кэширования и многие другие.
Самое важное при проектировании уровня логики в РНР — обеспечить его модульность. Для различных деловых правил и функций, требуемых приложением, можно создать отдельные классы-функции.
В нашем примере с опросом можно создать класс Polls и поместить в него все методы, необходимые для работы, такие как получение текущего опроса, добавление опроса, голосование, получение вариантов выбора и т. д. Если впоследствии потребуется добавить на сайт или в приложение форумы, то можно будет разработать и создать новый класс-модуль, не имеющий абсолютно никаких связей или зависимостей с объектами, создаваемыми до и после него.
Уровень представления
На уровне представления к содержимому, подготовленному на уровне логики, добавляются элементы дизайна и размещения. На этом уровне генерируется HTML с применением CSS, Flash, графики и всего того, чем воспользуются специалисты по дизайну для повышения привлекательности приложения.